Use ffserver, ffmpeg, rtmpdump, VLC to convert live RTMP stream into UDP multicastI've been banging my head against the desk for a while now with this problem, but hopefully one of you can help me. I'm attempting to use rtmpdump and VLC to convert (redirect) a couple of live RTMP streams into UDP multicasts.
When I try Code:
rtmpdump.exe -v -r rtmp://stream2.france24.yacast.net/france24_live/en -a france24_live/en -W http://www.france24.com/en/sites/all/modules/maison/aef_player/flash/player.swf -p http://www.france24.com/en/aef_player_popup/france24_player -y f24_liveen | "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" - Code:
rtmpdump.exe -v -r rtmp://stream2.france24.yacast.net/france24_live/en -a france24_live/en -W http://www.france24.com/en/sites/all/modules/maison/aef_player/flash/player.swf -p http://www.france24.com/en/aef_player_popup/france24_player -y f24_liveen | "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" - :sout-all :sout=#duplicate{dst=udp{mux=ts,dst=239.1.1.1:9000},dst=display} :ttl=20 :sout-keep Thanks in advance -SS |
Re: use rtmpdump and VLC to convert a couple of live RTMP streams into UDP multicastsPersonally I would use ffserver instead, though I'm not sure it does UDP broadcasts. It definitely does RTP though. You might even be able to just use ffmpeg with an RTMP URL as the input and a UDP URL as the output.
vlc has always been pretty finicky and I've never had much success with it for streaming. |
Re: use rtmpdump and VLC to convert a couple of live RTMP streams into UDP multicastsI've actually kept grinding on this issue and I think I almost have it solved, but maybe need just a little nudge to help figure it out the rest of the way.
So I took your suggestion (hyc) from the post you made at the Videolan forums and tried ... Code:
ffmpeg "rtmp://stream2.france24.yacast.net/france24_live/en app=france24_live/en swfUrl=http://www.france24.com/en/sites/all/modules/maison/aef_player/flash/player.swf pageUrl=http://www.france24.com/en/aef_player_popup/france24_player playpath=f24_liveen" -an -vcodec copy -f rtp rtp://10.188.252.76:9002 -vn -acodec copy -f rtp rtp://10.188.252.76:9004 -newaudio Code:
ffmpeg -loglevel verbose -i "rtmp://stream2.france24.yacast.net/france24_live/en app=france24_live/en swfUrl=http://www.france24.com/en/sites/all/modules/maison/aef_player/flash/player_new.swf pageUrl=http://www.france24.com/en/aef_player_popup/france24_player playpath=f24_liveen live=1" -vcodec copy -acodec copy -vbsf h264_mp4toannexb -f mpegts udp://10.188.252.76:9000 Code:
packetizer_h264 warning: waiting for SPS/PPS Code:
ffmpeg -i "rtmp://cp87869.live.edgefcs.net/live app=live playpath=us_300@21006 swfUrl=http://player.ooyala.com/static/cacheable/63abb43363926ab.e712725090ebb5f31/player_v2.swf swfVfy=1 pageUrl=http://www.bloomberg.com/tv live=1" -vcodec copy -acodec copy -vbsf h264_mp4toannexb -f mpegts udp://10.188.252.76:9000 Code:
faad warning: Unexpected channel configuration change Thanks! |
Re: Use ffserver, ffmpeg, rtmpdump, VLC to convert live RTMP stream into UDP multicasAre you sure you even need that bitstream filter in there? I have to say, that filter has been pretty buggy for as long as I've worked with the ffmpeg code. (Which is a couple years already...) Just for experimental purposes, have you tried using any other output formats?
Like I said, I have pretty good luck with ffserver serving over RTP and HTTP. |
Re: Use ffserver, ffmpeg, rtmpdump, VLC to convert live RTMP stream into UDP multicasUnfortunately, yes, I seem to need the bitstream filter. If I don't use it, I get ...
Code:
[mpegts @ 0x985cde0] h264 bitstream malformated, no startcode found, use -vbsf h264_mp4toannexb All these errors seem to me to center around malformed or missing PCR or ffmpeg's mpegts muxer is broken. Actually, in looking about the Internet, it would seem there's something odd about mpegts and h264 that ffmpeg doesn't handle well. I'm not about to give up yet, but I do need some more ideas on what I could try to do to fix this. |
Re: Use ffserver, ffmpeg, rtmpdump, VLC to convert live RTMP stream into UDP multicasI still think you should try ffserver instead. This works for me with your France24 stream
ffserver.conf example Code:
Port 8090 Code:
ffmpeg -i "rtmp://stream2.france24.yacast.net/france24_live/en app=france24_live/en swfUrl=http://www.france24.com/en/sites/all/modules/maison/aef_player/flash/player_new.swf pageUrl=http://www.france24.com/en/aef_player_popup/france24_player playpath=f24_liveen live=1" http://localhost:8090/l.ffm ============ This is even easier, don't use ffmpeg at all, just let ffserver fetch the stream directly: Code:
Port 8090 |
Re: Use ffserver, ffmpeg, rtmpdump, VLC to convert live RTMP stream into UDP multicasI had to look into ffserver a bit because the documentation is fairly sparse compared to ffmpeg, but I don't think this will work unless I'm reading this all wrong.
The target playback devices are a couple of IPTV set top boxes, so I need these streams bent into standard MPEG-TS UDP or RTP multicasts. This seems to be packing them up for an on-demand reflector service. Unfortunately, I think these little boxes are too dumb to know what to do with that. |
Re: Use ffserver, ffmpeg, rtmpdump, VLC to convert live RTMP stream into UDP multicasQuote:
|
All times are GMT -6. The time now is 05:13 PM. |