Streaming Video

1,844 views

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,844
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
184
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Streaming Video

  1. 1. Streaming Video Mohammed S Halim Jacob Christianson Sam Daley 1
  2. 2. Streaming Video Streaming: Streaming is the process of playing a file while it is still downloading. Streaming Video: A sequence of “moving images” that are sent in compressed form over the internet and display by the viewer as they arrive. 2
  3. 3. The evolution of Streaming Video  1994: Video was accessible only by user with high-end workstation.  1995: Progressive download technology allows audiences with standard personal computers to view video files as they are being download.  1997: The first all-in-one, audio-video players was released.  1999: True streaming was introduced to the general market.  2001: First implementations of MPEG-4 3
  4. 4. What makes Streaming Video different? Until recently, video on the web was primarily a download-and-play technology. Now a days, streaming video files begin playing almost immediately, while data is being sent, without having to wait for the whole file to download. 4
  5. 5. The primary characteristics of Streaming Video  Streaming video technology enables real-time or on-demand access to video via the Internet or an intranet.  Streaming video is transmitted by a media server application, and is processed and played back by a client player application, as it is received.  A streamed file is received, processed, and played simultaneously and immediately, leaving behind no residual copy of the content on the receiving device. 5
  6. 6. Common need for Streaming Video Various media are used in Internet They are used for different application Such as  Entertainment application  Video conferencing  Video archives and libraries  Remote learning  Multimedia presentations  Video on demand  Interactive Video Games  Video surveillance And many more………………….. 6
  7. 7. How does it work  Links are added to a website  User click on the links  Media network streams the clip directly to the viewer’s PC. Because the media files are hosted on a separate network, the streaming has no impact on any existing web servers. 7
  8. 8. Key Terminology (some of them)  Buffering  Codec  Encoding  Stream  Multicast  Streaming  On-Demand 8
  9. 9. Streaming Video Challenges  Require real-time traffic  Higher bandwidth needed  Unpredictable availability of network bandwidth 9
  10. 10. Video Compression  Streaming for the Internet available in all formats. To allow the playback of video over the web, the video must be compressed into a particular computer file format.  Streaming created from any video and audio format. It is possible to compress from any video source to………….. -AVI -ASF -QUICK TIME -REALVIDEO -MPEG-1,2,4 -WAV -ASF -AIFF 10
  11. 11. Video Data Requirements 640 x 480 pixels x 640 24 bits/pixel x 30 frames/sec 480 = 221 Mbps 11
  12. 12. Delivery Methods  Video On-demand  Live Video  Simulated Live Video 12
  13. 13. Video On-Demand  Video is prerecorded  User can request the streamed video at any time  User can rewind, fast-forward, or pause the video at any time 13
  14. 14. Live Video  Transmitting video as it happens, (i.e. not recorded)  Can not fast-forward, rewind, pause, etc. 14
  15. 15. Simulated Live Video  Same as Live Video except that the stream is prerecorded  Also uses unicasting, splitting, multicasting  Not used as much as VOD or Live Video 15
  16. 16. Protocols Used in Streaming Technology  Hypertext Transfer Protocol (HTTP)  User Datagram Protocol (UDP)  Session Description Protocol (SDP)  Real Time Transport Protocol (RTP)  Real Time Control Protocol (RTCP)  * Real Time Streaming Protocol (RTSP) 16
  17. 17. Hypertext Transfer Protocol (HTTP)  Allows the data to be played as it comes from the network or save to a file to play later  Lacks control uplinks  May be unable to skip to different parts of the video (like Microsoft’s .asf format)  Or replay a section that just downloaded  Can be used to download a small redirect file that connects to a normal stream 17
  18. 18. User Datagram Protocol (UDP)  Real-time data-transfer protocol  Receives high priority for internet transmission  If data is lost or corrupted during a transmission, the receiver does not request that it be resent  Basis for SDP, RTP, RTCP, RTSP 18
  19. 19. Session Description Protocol (SDP)  Purpose: Convey information about media streams in multimedia sessions to allow the recipients of a session description to participate in that session.  Multimedia Session: Set of media streams that exist for some duration of time  Primary Functions  A means to communicate the existence of a session  A means to convey sufficient information to enable joining and participating in the session 19
  20. 20. SDP (cont.)  Session name and purpose  Time(s) session is active  The media comprising the session  Information to receive those media  Information about the bandwidth to be used by the conference  Contact information for the person responsible for the session 20
  21. 21. Real Time Transport Protocol (RTP)  TCP/UDP are not suitable for real-time applications  RTP is a thin protocol that provides real-time support  Timing reconstruction  Loss detection  Security  Content identification  Does not have a delivery mechanism  Can be used without RTCP  Usually implemented within the application 21
  22. 22. RTP (cont.)  Applications typically run RTP on top of UDP as part of the transport layer protocol  RTP data in an IP packet 22
  23. 23. Real Time Control Protocol (RTCP)  Control protocol that works in conjunction with RTP  Provides support for real-time conferencing for large groups, including source identification and support for gateways and multicast-to-unicast translators 23
  24. 24. RTCP - Functions  Provide information to the application  Each packet contains report statistics  Identify RTP source  RTCP carries a transport-level identifier for an RTP source  Used to keep track of the participants in an RTP session  Control RTCP transmission interval  Convey minimal session control information 24
  25. 25. Real Time Streaming Protocol (RTSP)  Application-level protocol  Aim: to provide a robust protocol for streaming media  One-to-many applications  Unicast and multicast  Support interoperability between clients and servers  Different vendors 25
  26. 26. RTSP (cont.)  RTSP is considered more of a framework than a protocol. It is intended to control multiple data delivery sessions, provide a means for choosing delivery channels such as UDP, TCP, IP Multicast, and delivery mechanisms based on RTP. Control mechanisms such as session establishment and licensing issues are being addressed. RTSP is being designed to work on top of RTP to both control and deliver real-time content. Thus RTSP implementations will be able to take advantage of RTP improvements, such as the new standard for RTP header compression. Although RTSP can be used with unicast in the near future, its use may help smooth the transition for environments transiting from unicast to IP multicasting with RTP. 26
  27. 27. RTSP – How does it work?  Breaks data into packets sized according to the bandwidth available  When the client receives enough packets, software can  Play one packet  Decompress another  And download a third  Applies to live data feeds as well as stored clips 27
  28. 28. RTSP – Functions of  Provides on-demand access of multimedia items  Provides control and delivery of real-time media as well as associated events between a media server and large numbers of media clients  Addresses key concerns:  Quality of service  Efficiency of delivery  Rights management  Measurement 28
  29. 29. RTSP – Relationships with other Protocols 29
  30. 30. RTSP - Operation 30
  31. 31. RTSP – Operation (cont.)  Sending a control request  Client constructs a line consisting of the method, the request URL, and the protocol version number  Client includes a general header, a request header, and possibly an entity header (as for the HTTP protocol)  Server executes the request if possible  Server returns a response containing a status- line and general response and entity headers  Status-line: protocol version, numeric status code, textual description 31
  32. 32. RTSP – Operation (cont.)  Media streams are left unspecified  Could be RTP streams or any other form of media transmission  RTSP only specifies control  Client and server software must maintain the mapping between the control channel and the media streams  Control request and responses may be sent via TCP or UDP, which are sequenced (order matters!)  UDP requires construction of retransmission mechanisms  There are few times when UDP is used 32
  33. 33. RTSP - Sessions  Client requests a presentation to be started by a server  Receives a session identifier (used in all controls)  Represents the shared state between the client and the server  If the state is lost, the protocol relies on the transport of the media to stop automatically  Client may request a teardown of the session (releases resources) 33
  34. 34. RTSP – Request/Response  Request  Client to server or vice versa  Includes the method to be applied to the resource  The identifier resource  Protocol version in use  Response  Includes protocol version  Numeric status code  3-digit integer result code of the attempt to understand and satisfy the request  A reason phrase is included for the human user  Textual phrase associated with the status code 34
  35. 35. RTSP - Headers  Request  Response  Media description  Redirection format  Authentication to proxy  Encoding of media  Methods supported format  Busy, Comeback later  Human language  Server software  Authentication  Cache  Client bandwidth  Request authorization available  Conference identifier  Name of requester  Conditional retrieval  Time range to play  How did we get here? 35
  36. 36. RTSP - Methods  DESCRIBE  retrieves the description of the presentation or media object identified by the request URL  The DESCRIBE reply-response pair constitutes the media initialization phase  ANNOUNCE  GET_PARAMETER  OPTIONS  PAUSE  Halts the stream delivery (temporarily)  Server resources are kept, unless paused longer than the timeout parameter specifies  PLAY  Tells the server to start sending data  Client must not issue a PLAY request until SETUP request have been acknowledged successfully 36
  37. 37. RTSP – Methods (cont.)  RECORD  REDIRECT  SETUP  Specifies the transport mechanism to be used for the streamed media  Transport header specifies transport parameters acceptable to the client  The response contains the parameters selected by the server  SET_PARAMETER  TEARDOWN  Stops the stream delivery for the given URI, freeing resources  If the URI is a presentation, the session is closed and thus the identifier is no longer valid 37
  38. 38. RTSP – Protocol States Minimal state of RTSP: 38
  39. 39. Streaming Video Technology  Real Networks (Progressive Networks): Proprietary formats, multi-rate video, etc.  Windows Media (Microsoft): AVI, ASF (advanced streaming format)  QuickTime (Apple): Basis for MPEG-4 39
  40. 40. What format should you use?  What time of delivery system will be used?  How much editability do you need?  Do you need multirate streaming? 40
  41. 41. Differences  CODEC: Compressor/decompressor, each supports a different set of CODECS  Protocols: Some variation in supported protocols  Costs: Players can be obtained for free but encoding, server, etc. costs can vary 41
  42. 42. CODECS: Windows Media  Supported CODECS: Windows Media Video v7, ISO MPEG-4 v7, Windows Media Screen Codec, MPEG-4 v1,v2,v3 42
  43. 43. CODECS: QuickTime  Supported CODECS: Sorenson Video, VP3, Cinepak, Indeo 3., Indeo Video Interactive 4, Video, Animation, Photo- JPEG, Component Video, MJPEG, Graphics, Portable Network Graphic (PNG), MPEG-1 43
  44. 44. CODECS: Real  Supported CODECS: RealVideo with Scalable Video Technology (SVT),RealVideo, MPEG1, SMIL, VRML, RealText, RealPix *Not backward compatible *Recommended to use older codec for upwards compatibility 44
  45. 45. Protocols  Windows Media: TCP, HTTP, UDP, UDP, MMS  QuickTime: HTTP, RTSP, RTP, FTP, SDP, UDP  Real: RTSP, RTP, UDP, TCP, HTTP, UDP 45
  46. 46. Costs  Windows Media: Encoding/Serving is free with Windows OS  QuickTime: Low cost if you have Mac OS, but you will need to purchase an encoder (i.e. QuickTime Pro)  Real: Costs vary but can be very high when using large servers 46
  47. 47. Similarities  Support: Netscape/Mozilla, IE Live Broadcasting Simultaneous Live Streaming and recording IP Multicast Windows OS & Mac OS 47
  48. 48. Live Video Can be delivered 3 different ways:  Unicasting  Splitting  Multicasting 48
  49. 49. Live Video: Unicasting  Video stream goes independently to each user, and all users get their own stream  Simplest  Most popular  Little or no configuration is needed 49
  50. 50. Live Video: Splitting  One Media Server shares its live media streams with other Media Servers  User gets the stream from a splitter instead of the actual Media Server where the stream originated from  Reduces the load on the Media Server 50
  51. 51. Live Video: Multicasting  Many users share the same stream  Reduces bandwidth and network traffic 51
  52. 52. References  Academic Technology Center: http://www.cit.cornell.edu/atc/itsupport/streaming.shtml  California Software Labs: http://www.cswl.com/whiteppr/tech/StreamingTechnology.html  CISCO: http://www.cisco.com/networkers/nw99_pres/608.pdf  Data Networking and Communications 3e: Behrouz A. Forouzan  DV Web Video: http://www.dvwebvideo.com/2000/0500/waggoner0500.html  Erica Sadun: http://www.mindspring.com/~erica/stream.html  Internet RFC/STD/FYI/BCP Archives: http://www.faqs.org/rfcs/rfc2327.html  Internet RFC/STD/FYI/BCP Archives: http://www.faqs.org/rfcs/rfc3550.html  Raj Jain: http://www2.ing.puc.cl/~jnavon/IIC3582/Present/3/mmip.htm  A Streaming Media Primer http://www.adobe.com/products/aftereffects/pdfs/AdobeStr.pdf  Multimedia Networking: Goals and Challenges: http://www2.ing.puc.cl/~jnavon/IIC3582/Present/3/mmip.htm#multimedia  Streaming Video Compression Overview: http://www.ashlandvideo.com/tour_streaming.html  Streaming Video: http://www.cypresslakestudios.com/articles/streamingvideotutorial.html  AOL Stream Info: http://stream.info.aol.com/comparison.html  Windows & .NET Magazine: http://www.winnetmag.com/Article/ArticleID/3117/3117.html 52

×