Streaming Format Analysis
Comprehensive guide to analyzing HLS, DASH, and live streaming protocols with Probe.dev
Overview
Probe.dev provides comprehensive analysis capabilities for streaming media formats and protocols. Whether you’re working with adaptive streaming formats like HLS and DASH, or live streaming protocols such as RTMP, RTSP, and SRT, our API can extract detailed technical information to help optimize your streaming workflows.
Streaming analysis supports video, audio, and caption tracks across all formats and protocols, providing the same level of detail as traditional file analysis. For adaptive streaming formats (HLS/DASH), each quality variant appears as a separate track in the results.
Adaptive Streaming Formats
HLS (HTTP Live Streaming)
HLS is Apple’s adaptive streaming protocol that delivers content over HTTP using playlists and media segments.
Master Playlist Analysis
Analyze multi-bitrate HLS streams to understand the available quality levels:
Key Information Extracted:
- Variant streams and their bitrates
- Resolution and frame rate for each quality level
- Audio and subtitle track information
- Codec details (H.264, AAC, etc.)
- Segment duration and structure
Each HLS variant (quality level) appears as a separate track in the analysis results, with the same field structure as single file analysis. You’ll receive detailed codec, resolution, and bitrate information for each variant stream.
Media Playlist Analysis
For individual quality levels, you can analyze specific media playlists:
Use MediaInfo for HLS analysis as it provides excellent support for playlist parsing and segment information.
DASH (Dynamic Adaptive Streaming over HTTP)
DASH is an international standard for adaptive streaming that uses XML manifests to describe media presentations.
MPD (Media Presentation Description) Analysis
Analyze DASH manifests to understand adaptation sets and representations:
Key Information Extracted:
- Adaptation sets for video, audio, and text
- Multiple representations within each adaptation set
- Codec profiles and levels
- Segment templates and timelines
- Accessibility features
Each DASH representation (quality variant) within adaptation sets appears as a separate track in the analysis results. You’ll receive the same detailed field structure as single file analysis for each representation.
Live vs VOD DASH Analysis
DASH manifests can represent both live and video-on-demand content:
HLS Validation with MediaStreamValidator
Apple’s HLS Compliance Checking
MediaStreamValidator provides industry-standard HLS compliance validation using Apple’s official tooling. This dedicated endpoint validates HLS streams against Apple’s technical specifications, essential for App Store submissions and debugging playback issues.
HLS Compliance Validation
Validate HLS playlists for Apple compliance:
Deep Stream Analysis
For comprehensive validation including segment analysis:
Key Validation Features:
- Apple HLS specification compliance
- Segment integrity verification
- Bitrate ladder validation
- Codec compatibility checking
- Accessibility compliance (closed captions)
Common Use Cases:
- Pre-publish HLS validation
- App Store submission requirements
- Debugging playback issues across Apple devices
- Quality assurance workflows
- CI/CD pipeline integration
MediaStreamValidator analysis typically takes 12-15 seconds to complete due to comprehensive stream validation. Use selectively during staging or pre-publish workflows.
Use parse_playlist_only=true
for faster playlist-only validation, or false
for complete segment analysis including media content validation.
Live Streaming Protocols
RTMP (Real-Time Messaging Protocol)
RTMP is widely used for live streaming and video-on-demand delivery.
Live Stream Analysis
Analyze active RTMP streams:
VOD Content Analysis
Examine RTMP video-on-demand content:
Common RTMP URL Patterns:
RTSP (Real Time Streaming Protocol)
RTSP is commonly used for IP cameras and surveillance systems.
Camera Stream Analysis
Analyze IP camera feeds:
Common RTSP URL Patterns:
SRT (Secure Reliable Transport)
SRT provides low-latency, secure streaming with error recovery.
SRT Stream Analysis
Analyze SRT streams for technical specifications:
SRT URL Formats:
Analysis Tools Comparison
Different tools provide varying levels of detail for streaming formats:
Tool | HLS | DASH | RTMP | RTSP | SRT | Best For |
---|---|---|---|---|---|---|
FFprobe | ✅ Basic | ✅ Basic | ✅ Full | ✅ Full | ✅ Full | Live streams, technical details |
MediaInfo | ✅ Full | ✅ Full | ✅ Full | ✅ Full | ❌ Limited | Playlist/manifest analysis |
Probe Report | ✅ Enhanced | ✅ Enhanced | ✅ Enhanced | ✅ Enhanced | ✅ Enhanced | Comprehensive analysis |
MediaStreamValidator | ✅ Compliance | ❌ N/A | ❌ N/A | ❌ N/A | ❌ N/A | Apple HLS specification validation |
For streaming formats, we recommend using MediaInfo for playlist/manifest analysis and RTMP/RTSP streams, FFprobe for SRT and detailed live protocol analysis, and MediaStreamValidator for HLS compliance validation.
Performance Considerations
Timeout Settings
Streaming analysis may require longer timeouts:
Recommended Timeouts by Protocol
Protocol | Recommended Timeout | Reason |
---|---|---|
HLS/DASH | 30-60 seconds | Playlist parsing + segment analysis |
RTMP Live | 15-30 seconds | Connection establishment + buffering |
RTSP | 10-20 seconds | Network latency + authentication |
SRT | 15-25 seconds | Handshake + initial packet analysis |
Use Cases and Examples
Streaming Quality Monitoring
Monitor HLS stream quality across different bitrates:
Analyze Master Playlist
Extract all available quality levels and their specifications.
Check Individual Quality Levels
Analyze specific bitrate streams for consistency.
Validate Segment Integrity
Ensure segments are properly encoded and accessible.
Verify consistent codecs, resolution, and timing across all quality levels.
Live Stream Health Check
Monitor live streaming endpoints for availability and quality:
Multi-Protocol Analysis
Compare the same content across different delivery methods:
Troubleshooting
Common Issues
Error Handling
When streaming analysis encounters issues, Probe.dev returns the actual error messages from the underlying analysis tools (FFprobe, MediaInfo) along with their exit codes. Common error patterns include:
- Connection errors - Network issues or unreachable streams
- Protocol errors - Unsupported or malformed URLs
- Timeout errors - Analysis duration exceeded configured limits
- Authentication errors - Access denied by streaming server
- Format errors - Unrecognized or corrupted stream format
Check the error
field in the tool response for specific details from FFprobe or MediaInfo.
Best Practices
Performance
- Set appropriate timeouts for each protocol
- Use specific analysis tools for each format
- Monitor API usage for streaming endpoints
- Cache results for frequently analyzed streams
Reliability
- Implement retry logic for live streams
- Validate stream availability before analysis
- Handle intermittent connection issues
- Use health check endpoints when available