Seminar handout, June 18, 20001


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Seminar handout, June 18, 20001

  1. 1. Digital Media Technology : Streaming Video Kim, TaeYong 2001. 6.
  2. 2. Contents <ul><li>Streaming video </li></ul><ul><li>Making movies </li></ul><ul><li>MPEG </li></ul><ul><li>MPEG transcoding </li></ul><ul><li>System and Protocols </li></ul>
  3. 3. How to stream video <ul><li>Four Basic Steps: </li></ul><ul><ul><li>Step 1: Creating Content </li></ul></ul><ul><ul><li>Step 2: Digitizing the Video </li></ul></ul><ul><ul><li>Step 3: Compressing/encoding the Video </li></ul></ul><ul><ul><li>Step 4: Serving the Video </li></ul></ul><ul><li>Download the entire video file </li></ul><ul><li>Pseudo-streaming (Progressive): HTTP </li></ul><ul><li>” True&quot; streaming (Real-time) : RTSP </li></ul>
  4. 4. How to stream video Multimedia Server Multimedia Client <ul><li>DataBase </li></ul>Heterogeneous Network ATM, TCP/IP, Wireless, PSTN
  5. 5. Streaming Basics <ul><li>What is Streaming? </li></ul><ul><ul><li>Now generally refers to media, such as video and audio, that is delivered over a network. </li></ul></ul><ul><li>Architecture and Codecs </li></ul><ul><ul><li>Synchronizing, managing and playing media </li></ul></ul><ul><ul><li>Architectures provide the overall structure and synchronization for media delivery. </li></ul></ul><ul><ul><li>Codecs are the smaller encoding components that fit within an architecture. </li></ul></ul>
  6. 6. Video Quality <ul><li>Frame Rate (Frames Per Second, fps) </li></ul><ul><ul><li>To adequately lip sync audio to a &quot;talking head,&quot; a range of 8 to 12 fps is generally recommended. </li></ul></ul><ul><ul><li>Furthermore, for full motion video, the difference between 15 fps and 30 fps is minimal. </li></ul></ul><ul><li>Compression (codecs) </li></ul><ul><ul><li>With 176x144 pixels, 25,344 pixels per a frame </li></ul></ul><ul><ul><li>16 bits of color gives 405,504 bits per a frame </li></ul></ul><ul><ul><li>With motion of 15 fps 6,082,560 bits per second </li></ul></ul>
  7. 7. Video Quality <ul><li>Lossless : run-length encoding or Huffman coding </li></ul><ul><li>Lossy : Removes picture information that viewers aren't likely to notice </li></ul><ul><li>Spatial Compression : Compresses the data in each frame </li></ul><ul><li>Temporal Compression : Stores only the data that changes from one frame to the next </li></ul>
  8. 8. Making Movies <ul><li>Making multimedia movies </li></ul><ul><ul><li>1. Start with your source material </li></ul></ul><ul><ul><li>2. Capture the video </li></ul></ul><ul><ul><li>3. Edit your video with an editing program </li></ul></ul><ul><ul><li>4. Compress your movie </li></ul></ul><ul><ul><li>5. Distribute your final compressed movie </li></ul></ul>
  9. 9. Making Movies (Source) <ul><li>Use high-quality originals </li></ul><ul><li>Light for compression </li></ul><ul><li>Use a tripod </li></ul><ul><li>Keep detail to a minimum </li></ul><ul><li>Keep movement to a minimum </li></ul><ul><ul><li>The overall goal of creating good multimedia video is to produce a video signal with the least noise, camera movement, and fine detail possible so that the final movie will compress well and look good at a small screen size. </li></ul></ul>
  10. 10. Making Movies (Capture) <ul><li>How they work </li></ul><ul><li>Hardware Compression </li></ul><ul><li>Pricing </li></ul><ul><ul><li>The capture step is where you change the original analog video into a digital signal in your computer with a capture card, and then store the video on a hard drive. You need a capture card, a fast hard drive, and a finely tuned system to do this well. The captured video is probably only viewable by people who have the same hardware as you, so you will need to make your final video in a format that is not dependent on your capture card. </li></ul></ul>
  11. 11. Making Movies (Edit) <ul><li>Basic edits </li></ul><ul><li>Edit and Add Effects </li></ul><ul><li>Complicated edits </li></ul><ul><li>Save the file in the right format </li></ul><ul><ul><li>Editing is the fun step where you take your raw video and turn it into a movie. You can also add effects at this point. There are many different programs to edit and add effects - choose your tools based on your needs and budget. I recommend you &quot;cover your butt&quot; by archiving your edited (but uncompressed) movie for future use. </li></ul></ul>
  12. 12. Making Movies (Compress) <ul><li>Compression for CD-ROM </li></ul><ul><li>Compression for WWW </li></ul><ul><li>Frame-rate, data rate </li></ul><ul><li>Image size, codec choice </li></ul><ul><ul><li>Compression reduces your huge video file to a size that will play properly from CD-ROM or the Web. Since you are going to lose quality, it is important that you use a dedicated compression tool to get the best results. </li></ul></ul>
  13. 13. Making Movies (Distribute) <ul><li>Distribute </li></ul><ul><ul><li>Making the CD-ROM </li></ul></ul><ul><ul><ul><li>Interactivity for CD-ROMs </li></ul></ul></ul><ul><ul><ul><li>CD-ROM Recordable &quot;Burners&quot; </li></ul></ul></ul><ul><ul><li>Making the WWW site </li></ul></ul><ul><ul><ul><li>Putting movies on your site </li></ul></ul></ul><ul><ul><li>You can distribute your movies via CD-ROM or the Web. You'll need some hardware for making the actual CD-ROM, mainly a &quot;burner&quot; and some media. If you're making a web site, there are several different programs available. </li></ul></ul>
  14. 14. MPEG <ul><li>Intra-frame Compression </li></ul>
  15. 15. MPEG <ul><li>Inter-frame Compression </li></ul><ul><ul><li>Temporal Redundancy </li></ul></ul>
  16. 16. MPEG <ul><li>Inter-frame Compression </li></ul><ul><ul><li>Motion Compensation </li></ul></ul>
  17. 17. MPEG <ul><li>MPEG compression flow </li></ul>
  18. 18. MPEG <ul><li>MPEG Decoder processing time </li></ul><ul><li>MPEG multiplexing </li></ul>
  19. 19. MPEG Transcoding <ul><li>MPEG-1, MPEG-2, MJPEG, H.261 </li></ul><ul><li>ATM, PSTN, Wireless, TCP/IP </li></ul><ul><li>Quality (PSNR), Time constraint </li></ul><ul><li>Format conversion, bit-rate conversion </li></ul><ul><li>Transcoder Location </li></ul><ul><ul><li>node to node (gateway, router) </li></ul></ul><ul><ul><li>end to end (client - server) </li></ul></ul>
  20. 20. MPEG Transcoding <ul><li>Video applications </li></ul><ul><ul><li>Video conferencing </li></ul></ul><ul><ul><li>Interactive video </li></ul></ul><ul><ul><li>Video editing/publishing </li></ul></ul>Transcoder Encoder Decoder Decoder Encoder Video In Video Out Network Information
  21. 21. MPEG transcoding <ul><li>Transcoding of different levels of complexity </li></ul><ul><ul><li>T1, T2, T3 level </li></ul></ul>
  22. 22. MPEG transcoding <ul><li>Transcoding of different levels of complexity </li></ul><ul><ul><li>T1 : DCT level -> drift error (error propagation) </li></ul></ul><ul><ul><li>T2: Pixel level </li></ul></ul><ul><ul><li>T3: Pixel level with motion estimation </li></ul></ul>
  23. 23. MPEG transcoding <ul><li>Frame dropping (temporal) </li></ul><ul><ul><li>6~15 frames per GOP </li></ul></ul><ul><ul><li>I : 20~ 60 % </li></ul></ul><ul><ul><li>P: 20~40 % </li></ul></ul><ul><ul><li>B: 30~40 % </li></ul></ul>
  24. 24. MPEG transcoding <ul><li>Re-quantization (spatial) </li></ul><ul><ul><li>Require Step-sizes model </li></ul></ul><ul><ul><li>Linear or non-linear model </li></ul></ul><ul><li>Low-pass filtering (spatial) </li></ul><ul><ul><li>16~64 Good, 8~16 Visible </li></ul></ul><ul><ul><li>4~8 possible, 1~4 poor </li></ul></ul><ul><ul><li>1/2 size at 16 AC </li></ul></ul>
  25. 25. System and Protocols <ul><li>Flow management model </li></ul><ul><ul><li>Flow specification </li></ul></ul><ul><ul><ul><li>QoS Specification profile </li></ul></ul></ul><ul><ul><li>Flow Establishment </li></ul></ul><ul><ul><ul><li>Resource management (RSVP) </li></ul></ul></ul><ul><ul><ul><li>Filter allocator </li></ul></ul></ul><ul><ul><ul><li>Packet scheduler </li></ul></ul></ul><ul><ul><li>Flow Maintenance </li></ul></ul><ul><ul><ul><li>Monitor, Session manager </li></ul></ul></ul><ul><ul><li>Flow Release </li></ul></ul>
  26. 26. System and Protocols (Example) <ul><li>Information flow </li></ul>Service Request Accept, Error report Broker USER Session Info. Reporting Network Information Main Server Agent Filtering Server MPEG Stream Acceptance, Error report Service Request Session Connection Network Information
  27. 27. System and Protocols (Example) <ul><li>2-way protocol </li></ul>A. Storage B. Transcoder C. Comm. Server D. User … … Connect(RTP) Connect(RTCP) Stream Read Request Stream(RTP) Stream Send(RTP) Time Stamp t i-1 (RTCP) Stream Read Stream Send(RTP) Time Stamp t i (RTCP) E. Transcoding E. Transcoding
  28. 28. System and Protocols (Example) <ul><li>1-way protocol </li></ul>A. Storage B. Transcoder C. Comm. Server D. User … … Connect(HTTP) Stream Read Request Stream(HTTP) Stream Send(TCP) Stream Read Stream Send(TCP) E. Transcoding E. Transcoding F. Timer (t i -1) F. Timer (t i )