adventures in h.323 videoconference streaming and recording
DESCRIPTION
TRANSCRIPT
Adventures in H.323 Videoconference Streaming and Recording
John Langkals
Technology Engineer
OARnet
OARnet H.323 Training
May 2002
What is Video Streaming?
Streaming video is taking a large media file that has been requested, and transmitting small, continuous amounts of that file over the network or Internet to a software player.
Streaming Server Client software player
The Magic of Streaming Video
• The media streamed can be a live or a recorded event.
• The user can start viewing the media without waiting until the end of transmission.
• Streaming video can be archived and replayed anytime by anyone anywhere in the world.
Buffering
• Buffering is when the streaming media enters the users’ computer at a faster rate than can be played.
• A small amount of the media is downloaded, and
then while that initial portion is playing, the next part of the media is downloaded and stored in memory.
• Buffering allows for network hiccups.
What about Unicast and Multicast?
• Unicasting creates a stream from the server for each client request.
• Multicasting is the technology that replicates packets at the router level, easing the load on the streaming server as well as the internal network.
Unicast Individual Requests
Unicast
• The traditional method for transmitting media over the internet is unicast.
• This can be quite network intensive when multiple streams are requested.
• Its VOD. It has no definite start or stop time.
Multicast Reflecting
Multicasting
• When a request for a stream is made, the server sends out a single multicast stream to the router.
• The router recognizes it as a multicast stream and then duplicates the stream for each additional client request.
• It’s comparable to a television broadcast. It’s a shared connection.
What about Webcasting?
• Webcasting describes a unicast Internet broadcast.
• Actually webcasting is a marketing term that has no technical meaning.
How on earth does the Internet deliver Streaming Media?
• Streaming media is one of the major technologies pushing the evolution of the Internet.
• The network requirements for streaming video and audio are radically different than static text.
• TCP/IP, UDP/IP, and HTTP
TCP
IP
DATAGRAM TCP
TCP/IP
TCP/IP and HTTP protocols are guarantee-based and not time-based protocols. Both perform poorly when streaming a time dependent media such as audio and video. Web Pages and FTP downloadMore Complex
UDP
IP
DATAGRAM UDP
User Datagram Protocol was developed to solve the issue of time-based delivery of the network data.
Streaming Media
Simpler
UDP/IP
Network protocols to handle the transfer of video and audio:
• UDP
User Datagram Protocol
• RTP
Real-time Transfer Protocol
• RTSP
Real Time Streaming Protocol
UDP/IP vs TCP/IP
• TCP and UDP are two most commonly used transport protocols on the Internet.
• TCP provides a connection-oriented and reliable flow between two hosts.
• UDP provides a connectionless but unreliable datagram service over the network.
What does UDP do?
• The UDP protocol is designed to transfer packets in time, and not worry about resending lost packets.
• Effective streaming requires that the data arrive in a timely and orderly fashion.
• If the client had to wait for each lost packet to be
present, there would be many pauses in the video and ultimately an unsatisfactory experience.
RTP
• Real-time Transport Protocol is the transport protocol for real-time data.
• RTP is the mechanism for packaging the video audio data.
• RTP is usually transported via UDP but can be transported over TCP.
What about RTP?
• Packets sent on the Internet have unpredictable delay and jitter.
• RTP provides time stamping and sequence numbering to handle the timing issues in real-time data transport.
RTSP
• RTSP provides "VCR-style" remote control functionality for audio and video streams, with functions such as pause, fast-forward, and rewind.
• RTSP is a control protocol that initiates and directs delivery of streaming multimedia data from media servers; the actual data delivery is done by RTP.
• RTSP is carried over TCP because it is a reliable transport mechanism and the control messages must successfully make it to the server.
More on RTSP
• RTSP aims to provide the same services on streamed audio and video just as HTTP does for text and graphics.
• It uses URLs like those in HTTP.
• While HTTP is a stateless protocol, an RTSP server has to maintain session states in order to correlate RTSP requests with a stream.
Recap
• RTSP and RTP are application level packaging.• TCP and UDP are network protocols that RTSP, RTP, and
HTTP are carried in.
Application level• RTSP: messaging (VCR like controls)• RTP: transports video and audio data
Network Protocol• TCP: reliable/guaranteed • UDP:unreliable/not guaranteed
H.323 and Video Streaming
• H.323 is all about negotiating exchange of multimedia data and it describes video compression techniques H.261 and H.263.
• When we rebroadcast it, the H.323 signaling is stripped off and take the raw and video data and rewrap it as WM, QT, or RealOne.
• The H.323 stack is not involved with player requests, that is part of the secret sauce.
Digitally Recording H.323 VC
• We record the H.323 transmission digitally bit by bit with no analog or baseband signals involved.
• As the encoding is handled at the endpoint and not within the streaming unit, the streaming hardware can be located anywhere. It does not need to be at the site of the event.
• There is no encoding or decoding of the video. This results in low overhead less processor intensive and less delay.
Any Questions?
Videoconference recording
and streaming demonstration
using the Starbak Communications Torrent CE
User Interface
• Stream recording and replay is done over a web browser using a free software player.
• Password authentication
• Chat feature, slide function and web portal capabilities.