OK, solved this already:
For sending:
Code: Select all
vlc 'test.m4v' :sout=#transcode{vcodec=h264}:"rtp{dst=224.0.0.8,port=5004,mux=ts}"
and it worked. So was missing "mux=ts"
WAS:
I
had the same problem. How to broadcast a valid SDP with RTP sout?
For sending, I am using:
Code: Select all
vlc -vv 'test.m4v' :sout=#transcode{vcodec=h264}:"rtp{dst=224.0.0.8,port=5004}"
VLC media player 3.0.0-git Vetinari (revision 2.2.0-git-10582-g9eb9eb0bd2)
[0000557d0e4151c8] core libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[00007f2960006498] x264 encoder: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
[00007f2960006498] x264 encoder: profile High, level 3.0
[00007f2960006498] x264 encoder: using SAR=13107/9235
[00007f2960006498] x264 encoder: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
[00007f2960006498] x264 encoder: profile High, level 3.0
...
00007fc078000fa8] stream_out_rtp stream out debug: sdp=
v=0
o=- 15916442759346664710 15916442759346664710 IN IP4 localhost
s=Unnamed
i=N/A
c=IN IP4 224.0.0.8/255
t=0 0
a=tool:vlc 3.0.0-git
a=recvonly
a=type:broadcast
a=charset:UTF-8
m=audio 5004 RTP/AVP 96
b=RR:0
a=rtpmap:96 mpeg4-generic/48000/2
a=fmtp:96 streamtype=5; profile-level-id=15; mode=AAC-hbr; config=1190; SizeLength=13; IndexLength=3; IndexDeltaLength=3; Profile=1;
m=video 5006 RTP/AVP 96
b=RR:0
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=64001e;sprop-parameter-sets=Z2QAHqzZQLQSb/zMzJBNqCgIKgAACEwAAZ2FHixbLA==,aOvjyyLA;
I can see with tcpdump there is UDP packets coming from that multicast address. Firewall lets them in. (5004/udp and 5006/udp)
But viewing that stream with vlc fails:
VLC media player 3.0.0-git Vetinari (revision 2.2.0-git-10582-g9eb9eb0bd2)
[000055abd823c1c8] core libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[00007fdd2c000e98] rtp demux error: unspecified payload format (type 96)
[00007fdd2c000e98] rtp demux: A valid SDP is needed to parse this RTP stream.
So how to broadcast "a valid SDP" with vlc when streaming through RTP?
Over HTTP it worked:
sender:
Code: Select all
vlc 'test.m4v' :sout=#transcode{vcodec=h264}:http{dst=:8080/go.mpg}
receiver:
Code: Select all
vlc http://sender-local-ip:8080/go.mpg
(I am using Linux Fedora 24)