Your SlideShare is downloading. ×
Decoding MPEG-4 Understanding VBrick MPEG-4 SAP's
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Decoding MPEG-4 Understanding VBrick MPEG-4 SAP's


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

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Decoding MPEG-4 Understanding VBrick MPEG-4 SAP’s & SDP’s To decode and display MPEG-4 streaming video, a decoder needs to have certain information in addition to the audio and video streams. Per the standards, this information is contained in what is called a Session Description Protocol (SDP) descriptor. The SDP contains information such as audio and video rates, resolution, IP addresses, and other data. There is also a standardized way to deliver this information to a decoder (a “player”). As part of the call setup procedure, the Real Time Streaming Protocol (RTSP) provides a mechanism for a client player to request SDP information from a server, thus making streaming video simple and automatic. But there are cases where conventional client/server networking is problematic, such as when a server is “inside” a network and cannot be called directly from the “outside”. Multicasting MPEG-4 video also requires and benefits from a mechanism quite different from RTSP to provide the SDP to the decoder. And beyond the delivery of SDP information, there is a need for a centralized directory service where many MPEG-4 sources can be automatically listed. The VBrick MPEG-4 encoders and decoders continue the VBrick Systems tradition of providing innovative ways to make video networking simple. This paper examines these product features.
  • 2. SDP Data SDP information, however it is MPEG4 Announce Common Information -- Slot1 delivered to a decoder, contains Program Name All About SAPs Program information specific to your Author VBrick Systems current encoder configuration Program Copyright VBrick Systems, 2004 Copyright plus useful textual information Category that you manually enter. Figure Session Live training session about SDP and SAPs Infomation 1 illustrates the SDP Infomation http://w w w URL information that is common to Contact Email all SDP’s created by a VBrick. Contact Phone 203-265-0044 Contact Name Mr. MPEG Figure 1 SDP information is sent via the Session Announcement Protocol (SAP). Certain SAP receivers list and display textual information about a stream, such as the contact information, a web page address to learn more about a stream, etc. The “Category” field is unique to VBrick and is useful filter for private multicast traffic. StreamPlayer automatically displays the Program Name, Author, and Copyright fields. The VBrick MEPG-4 decoder uses the Program Name as a key to make decoding easy and automatic, as we shall see later in this paper. Sending SDP As mentioned previously, an encoder has information that a decoder needs. There are six ways an encoder can provide it: • Multicast SAP – All VBrick Announce Program Guide (SAP) for Destination 1 & encoders can send the SDP 2 -- Slot1 via a SAP on a well-known Transmit Enabled Retransmit Time(sec) 10 address and port Time To Live 64 (, port 9875). Type Of Service 0 This is the address and port IP Address defined in the standards, Port 9875 and this is the default Send Announce(SAP) to Unicast Destinations Enabled address and port that all Figure 2
  • 3. VBrick products use to display both Program Guide information and to obtain other SDP data. Figure 2 illustrates the SAP configuration. You may enable or disable the transmitting of the SAP, set how often it is sent, and configure it to be sent on a multicast address other than the default such a unicast or broadcast address1. With multicast, a decoder simply listens for the periodic transmission of the SDP information from an encoder and uses this information to make the decoding possible. • Unicast SAP – Each VBrick can send a MPEG-4 audio/video stream to two configured destinations. Those destinations can be a VBrick MPEG-4 decoder or a reflector server such as Darwin. As already explained, the decoder needs the SDP information from the encoder. By checking “Send Announce (SAP) to Unicast Destinations” illustrated in Figure 2, the VBrick MPEG-4 encoder will periodically send the SDP information to the decoder(s). This VBrick innovation allows a VBrick encoder that might be virtually anywhere (e.g. your home or your office) to be decoded by a VBrick that is operating on an “outside” address. • SDP File – VBrick encoders automatically create a virtual SDP file for each encoder. Upon command, the virtual files can be saved on your computer as normal files. An SDP file is self- sufficient. You can point any compliant MPEG-4 decoder to this file and the video will play. As we will see later in this paper, the VBrick decoder can accept a SDP file. However, you should use SDP files with care. VBrick encoders can be reconfigured at will and each set of encoder parameters are reflected in the SDP. If you play a live video via SDP file, then change the encoder configuration, then attempt to use the same SDP file, 1 Any decoder looking for SDP information must, of course, be looking for a SAP on the same address it is sent on.
  • 4. the video may look terrible! It is for this reason the other methods are usually preferred. • HTTP – An MPEG-4 decoder can instantly obtain SDP information by making a HTTP (port 80) request to the VBrick MPEG-4 encoder/server. The decoder then receives the current SDP information for that stream. • RTSP – A VBrick MPEG-4 encoder is a full RTSP server. A VBrick decoder can obtain SDP information by making a standard RTSP request to the encoder/server. While this is true, how would a potential viewer know the address? To advertise the availability of your stream via unicast RTSP, two innovative features are available: o Announce RTSP Server – As illustrated in Figure 3, the VBrick will periodically send a small announcement to a designated address Announce RTSP Server -- Slot1 (broadcast address Transmit Enabled is shown). Retransmit Time(sec) 10 StreamPlayer and 64 Time To Live the VBrick decoder Type Of Service 0 will show the IP Address program in the Port 9875 RTSP URL rtsp:// Program Guide and Figure 3 will make a standard RTSP call to the VBrick encoder/server.
  • 5. o Announce External RTSP Server – The VBrick encoder can send announcements to a server at any address/port. Such server can then list all announcements and provide an automatic, centralized program listing. Normally, you would enter the URL of your VBrick MPEG- Announce External RTSP Server -- Slot1 4 video stream, but Transmit Enabled you may enter any Retransmit 60 Time(sec) valid RTSP address Time To Live 64 for announcement, Type Of Service 0 such as the URL of IP Address Port 9878 a MPEG-4 video RTSP URL server file. Figure 4 The Announce External RTSP Server is typically used to announce the RTSP URL of a reflector server, such as PowerStream. In this case, your VBrick might be unicasting directly to a reflector and you want to advertise the URL of the reflector, not your local VBrick.
  • 6. Decoding MPEG-4 As we’ve seen, there are many ways for a decoder to obtain SDP information from an encoder. The VBrick MPEG-4 decoder can use all of these methods. • IP Address – If the decoder connection mode is “VBrick IP Address Or Host Name”, then the decoder discovers the possible MPEG-4 sources on the network by listening for a unique VBrick management announcement (this is not encoder’s multicast SAP Decoder Network -- Slot2 announcement). Receive Enabled The decoder Connection VBrick IP Address Or Host Name Mode lists all available encoders as “Available VBricks” and VBrick IP Address or Host VBrick-1 Name allows you to Available VBricks VBrick-1 select the one Remote Slot Slot 1 Slot 2 you desire to Unicast Multicast view. The Connection Protocols RTSP decoder then HTTP Port 80 attempts to play Figure 5 that video using any of the allowed protocols: multicast, unicast (by obtaining SDP data via HTTP from the encoder), or RTSP request.
  • 7. • Program Name – If the decoder is set to “Program Name”, then all multicast and unicast SAP program names appear as “Available Decoder Network -- Programs” and Slot2 you can select Receive Enabled any one for Connection Program Name Mode immediate viewing. For example, if your decoder is Program Name My Video connected to the Available My Video Programs public Internet (where there is no IR Remote Enabled multicast) and one SAP Timeout 90 (sec.) or more VBricks SAP Category are sending SAP IP Address unicast SAP Port 9875 announcements Figure 6 to you, those remote videoconference locations appear.
  • 8. • URL – If the decoder is set to “URL” (Figure 7) then you can manually enter a valid MPEG-4 Decoder Network -- Slot2 server URL, such Receive Enabled as the RTSP Connection URL Mode address of any VBrick MPEG-4 URL rtsp:// encoder/server or Figure 7 MPEG-4 Video On Demand server such as Darwin. The URL may also be a SDP file placed on a web server and obtained via HTTP. • SDP On Flash – If the decoder is set to “SDP On Flash” (Figure 8) then you can select a local SDP file stored on flash memory inside your VBrick decoder. Decoder Network -- Slot2 Every VBrick MPEG-4 Receive Enabled decoder is equipped Connection SDP On Flash with special Flash Mode memory dedicated for this purpose. You can place a SDP file there SDP On via standard FTP. This Flash Existing -- Select a SDP file on flash -- mode is especially SDP files useful for long term Figure 8 dedicated decoding of a stream. This mode is intended for not-VBrick encoders that do not support VBrick’s intelligent SDP delivery systems.
  • 9. • Loopback From Encoder – If the decoder is set to “Loopback”, then the decoder displays the local encoder video. Receiving SAP’s The VBrick MPEG-4 decoder can detect and list program guide information received Decoder RTSP -- Slot2 via the encoder/server’s UDP Port Range Start 6970 RTSP SAP. You can RTSP Server Port 554 configure the address and RTSP SAP IP Address port that the decoder RTSP SAP Port 9878 listens on to receive this information (Figure 9). Figure 9 SAP Summary As we have seen, a VBrick MPEG-4 encoder can send two basic types of video SAP’s. One type of SAP is complete and allows any compliant MPEG-4 decoder or player to open and display the audio/video stream. The other type of SAP only announces the path to the VBrick RTSP server. In addition to the audio/video SAP, VBrick appliances can send “Management SAP’s” that allow VBricks to discover each other and allow the VBDirectory application to provide simplified management functions. SAPs can be sent on user-specified multicast addresses, but you will normally use the default addresses to meet standards and conventions.
  • 10. SAP’s are very small, sent only periodically, and even broadcast SAPs contribute very little to network bandwidth utilization.