Skip to Content.
Sympa Menu

wg-multicast - Re: SAPs for H.264 RTSP streams

Subject: All things related to multicast

List archive

Re: SAPs for H.264 RTSP streams


Chronological Thread 
  • From: Zenon Mousmoulas <>
  • To: Frank Fulchiero <>
  • Cc: wg-multicast <>
  • Subject: Re: SAPs for H.264 RTSP streams
  • Date: Fri, 13 Jun 2008 17:31:36 +0300

On 13 Ιουν 2008, at 4:49 ΜΜ, Frank Fulchiero wrote:

Hi Zenon,

Hi Frank,

If it's not too much trouble, I would like a demonstration of a SAP in VLC that when clicked plays an RTSP multicast H.264 MPEG4 stream.
If you don't want to run it for a long period of time, just let me know when the test will be.
Or at least run it locally, and let me know if it works.

Sure. Look for a session named


v=0
o=- 1213365451413443 2 IN IP4 127.0.0.1

t=0 0
a=tool:vlc 0.8.6h
c=IN IP4 233.21.32.252/123
m=video 1232 RTP/AVP 96
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=4d401e;sprop-parameter- sets=J01AHqkYGoe2ANQEBAbbCte98BA=,KN4JyA==;
m=audio 1230 RTP/AVP 97
a=rtpmap:97 mpeg4-generic/44100
a=fmtp:97 streamtype=5; profile-level-id=15; mode=AAC-hbr; config=1210; SizeLength=13;IndexLength=3; IndexDeltaLength=3; Profile=1;

What would you use to generate the SAP?

VLC. But there is a catch: I remember the streaming wizard gui doesn't let you specify "raw" encapsulation when the transport is rtp, but it falls back to "ts", however I can now see that is not the case in 0.8.6h running on MacOS. In any case though, you can specify it manually on the sout command line, as long as the input is compatible.

I would give you the command line but I can't find how to get it from the GUI.

The reason I am asking if it's possible is that we would like to support the development of a small application to generate SAPs from the SDP files created by multicast RTSP from Wirecast, QuickTime Broadcaster, and Darwin Streaming Server/QT Streaming Server.
I realize the SDP files created from these apps may need some tweaking before being used to generate the SAP, as they may not be fully standard.
But before going ahead, we need to know if it's even possible to accomplish the above.

Once you have prepared the sdp payload, I think the sap message format should be rather trivial to produce.

Take a look at this implementation:
http://search.cpan.org/src/NJH/Net-SAP-0.10/examples/packet_sender.pl

Thanks for all the info below...I am more at the encoding/usability end than the networking/protocol end of things, so this along with the other helful posts helps a lot.

We're all just helping each other :)

Z.




Frank Fulchiero
Digital Media Specialist
Connecticut College

On Jun 13, 2008, at 9:14 AM, Zenon Mousmoulas wrote:

Hi Frank,

RTP payload format for H.264 video is defined in RFC3984. More specifically you can look at sections 8.2 and 8.3:

An example of media representation in SDP is as follows (Baseline
Profile, Level 3.0, some of the constraints of the Main profile may
not be obeyed):

m=video 49170 RTP/AVP 98
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=42A01E;
sprop-parameter-sets=Z0IACpZTBYmI,aMljiA==

I took a H.264 video in quicktime MOV container (it's actually the iPhone 3G ad from apple.com) and ran it through VLC creating an SDP that looks like this:

v=0
o=- 1213359427288608 2 IN IP4 127.0.0.1
s=test
t=0 0
a=tool:vlc 0.8.6h
c=IN IP4 239.239.239.234/1
m=video 1232 RTP/AVP 96
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=4d401e;sprop- parameter-sets=J01AHqkYGoe2ANQEBAbbCte98BA=,KN4JyA==;
m=audio 1230 RTP/AVP 97
a=rtpmap:97 mpeg4-generic/44100
a=fmtp:97 streamtype=5; profile-level-id=15; mode=AAC-hbr; config=1210; SizeLength=13;IndexLength=3; IndexDeltaLength=3; Profile=1;

As you can see, the payload type depends on the H.264 level/ profile. The semantics are all in there, encrypted in the RFC :)

I believe VLC does play this once it sees the SAP announcement. We can test it if you want (but I won't leave this running for now).

HTH,
Z.






Archive powered by MHonArc 2.6.16.

Top of Page