round-top.png
JRM Logo
Streaming Environments
Streaming Stages
  1. Capture: receive sequence of raw video frames from a camera
  2. Preprocessing (optional): raw video analysis (prior to compression)
  3. Encoding collect and compress raw frames
  4. Encoding Tradeoffs:
    compression ratio vs processing power
    compression ratio vs image quality
    (some video codec algorithms have a lossless compression mode, but normally video streaming uses lossy compression to meet typical bandwidth constraints)

  5. Common Video Codecs:
  6. Motion JPEG
    simple to implement
    free from patents

    H.263
    designed for videoconferencing
    encumbered by patents (manufacturers must pay licensing fees)

    Sorenson Spark/H.263 Sorenson
    supported by Adobe Flash
    derived from H.263 standard but is not compatible with it
    encumbered by patents (manufacturers must pay licensing fees)

    VP3
    legacy codec, predecessor to VP6 and Theora
    free from patents (On2 donated relevant patents to public)

    VP6
    supported by Adobe Flash
    successor to VP3 codec
    encumbered by patents (manufacturers must pay licensing fees)

    Theora
    derived from VP3 codec
    free from patents

    MPEG-2
    used for video on DVDs
    encumbered by patents (manufacturers must pay licensing fees)

    MPEG-4 part 2
    supported by Apple Quicktime
    encumbered by patents (manufacturers must pay licensing fees)

    H.264/MPEG-4 part 10/MPEG-4 AVC
    supported by Adobe Flash and Apple iTunes
    includes varient with lossless compression
    very popular codec on platforms with sufficient power
    encumbered by patents (manufacturers must pay licensing fees)

  7. Transmit Stream
  8. Control Protocols
    SIP (used for Voice-over-IP conferencing with video)
    RTSP (often used with RTP as the data transport)

    Transport Protocols
    RTP
    RTMP

    Tunneling Protocols
    HTTP/HTTPS (adds overhead but can be useful for firewall traversal)
    network transport
    receive stream
    decoding
    display

Streaming Platforms
Hardware

Embedded Platforms
  • TI DaVinci
  • Freescale i.MX27
  • C2 Micro C1100
  • Marvell Kirkwood

round-bottom.png