Streaming Video: Formats, Compression, and Protocols
Ready to answer it out loud?
Run a mock interview on this exact question and get instant AI feedback.
Question Explain
Streaming Video: Formats, Compression, and Protocols
Video Formats
H.264:
A widely used video compression standard for high-definition videos. Pros: Efficient compression, good quality at lower bitrates. Use Cases: Streaming platforms, video conferencing.
MP4:
A container format that can store video (H.264), audio, and subtitles. Pros: Highly compatible across devices. Use Cases: Online video sharing, downloads.
WEBM:
Open-source format optimized for web streaming. Uses VP8/VP9 codecs. Use Cases: HTML5 video, YouTube.
HLS (HTTP Live Streaming):
Protocol by Apple that segments video into small chunks for delivery. Adaptive bitrate streaming for different network conditions. Use Cases: OTT platforms, live video streaming.
Smooth Streaming:
A protocol by Microsoft using adaptive bitrate technology. Works with IIS Media Services. Use Cases: Windows-based video streaming services.
Video Compression and Delivery
Codecs:
Encode and decode video and audio data. Examples: H.264, H.265 (HEVC), VP9, AV1. Tradeoff: Higher compression reduces file size but requires more processing power.
Containers:
Bundle video, audio, and metadata into a single file. Examples: MP4, MKV, MOV, FLV.
Streaming Protocols:
RTMP (Real-Time Messaging Protocol): Low latency, commonly used for live streaming. HLS: Adaptive streaming over HTTP. MPEG-DASH: Open standard for adaptive bitrate streaming. WebRTC: Real-time streaming, often used for peer-to-peer video calls.
Storage Protocols iSCSI (Internet Small Computer System Interface):
A block-level storage protocol over TCP/IP. Allows servers to connect to storage devices over a network. Use Cases: Virtual machines, databases, and SANs.
NFS (Network File System):
File-level storage protocol allowing shared file access. Commonly used in Unix/Linux environments. Use Cases: Media storage, home directories.
SMB (Server Message Block):
Protocol for sharing files, printers, and resources on a network. Commonly used in Windows environments. Use Cases: File sharing, enterprise storage.