RTSP -> FLV live stream transcoding

About encoding, codec settings, muxers and filter usage
user411
Blank Cone
Blank Cone
Posts: 10
Joined: 26 Mar 2008 22:47

RTSP -> FLV live stream transcoding

Postby user411 » 26 Mar 2008 23:22

Hi all,

First off, thanks for the great forum. I've had a lot to read over the past few days trying to get RTSP -> FLV live stream transcoding going. I'm still having issue though, so I'm going to post them up.

Problem Scope

I need to transcode a live RTSP stream, encoded with MP4 video and audio into a FLV stream with of any functional video type. I have had very good luck transcoding a static .FLV file with H263 or H264 content into streaming FLV. I have been testing using the vlc 0.9.0 3/22 daily build on both Windows and Linux. I am using Adobe Flex to open the connection to grab video. That code is quite standard - you would do the exact same thing in Flash to play video.

These work:

vlc C:\Media\Videos\Robot_sentinella.flv --sout "#transcode{vcodec=FLV1,acodec=mp3}:std{access=http{mime=video/x-flv},dst=0.0.0.0:8080/stream.flv}" --loop --color -I dummy

vlc --sout "#transcode{vcodec=FLV1}:std{access=http{mime=video/x-flv},mux=ffmpeg{mux=flv},dst=0.0.0.0:8080/stream.flv}" C:\Media\Videos\Robot_sentinella.flv --loop --color -I dummy

vlc --sout "#transcode{vcodec=FLV1,acodec=mp3,samplerate=11025}:std{access=http{mime=video/x-flv},mux=ffmpeg{mux=flv},dst=0.0.0.0:8080/stream.flv}" C:\Media\Videos\AVCHD-stright-to-flash.MP4.flv --color -I dummy

vlc --sout "#transcode{vcodec=FLV1,acodec=mp3,samplerate=11025}:std{access=http{mime=video/x-flv},mux=ffmpeg{mux=flv},dst=0.0.0.0:8080/stream.flv}" C:\Media\Videos\AVCHD-stright-to-flash.MP4.flv --sout-transcode-hurry-up --sout-transcode-high-priority --file-caching=1000 --high-priority --repeat --color -I dummy

As soon as I try to transcode from rtsp or encode to h264 or mp4v, I have issues.

vlc --sout "#transcode{vcodec=h264,vb=96,acodec=mp4a,samplerate=11025,scale=1}:std{access=http{mime=video/x-flv},mux=ffmpeg{mux=flv},dst=0.0.0.0:8080/stream.flv}" C:\Media\Videos\Robot_sentinella.flv --loop --color -I dummy -vvv

Crashes the 3/22 Windows daily build with

[00000503] x264 encoder debug: version x264 0.58.X
[00000503] x264 encoder debug: initializing pthread-win32
x264 [info]: using threads=3
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 Cache64
x264 [warning]: VBV is incompatible with constant QP, ignored.
[00000503] main encoder debug: using encoder module "x264"
[00000503] x264 encoder debug: pthread-win32 deinitialized
[00000503] main encoder debug: removing module "x264"
[00000502] ffmpeg decoder warning: warning: first frame is no keyframe
(flv@00C897C0)
[00000392] stream_out_transcode private debug: decoder aspect is 576000:432000
[00000392] stream_out_transcode private debug: source pixel aspect is 1.000000:1
[00000392] stream_out_transcode private debug: scaled pixel aspect is 1.000000:1
[00000392] stream_out_transcode private debug: source 320x240, crop 320x240, des
tination 320x240, padding 320x240
[00000392] stream_out_transcode private debug: encoder aspect is 576000:432000
[00000503] main encoder debug: looking for encoder module: 12 candidates
[00000503] x264 encoder debug: version x264 0.58.X
[00000503] x264 encoder debug: initializing pthread-win32
x264 [info]: using threads=3
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 Cache64
x264 [warning]: VBV is incompatible with constant QP, ignored.
[00000503] main encoder debug: using encoder module "x264"
[00000401] main private debug: adding a new input
[00000401] ffmpeg private debug: adding input

I'm disappointed that h264 encoding isn't working, and though it's not the main problem here, I would prefer to use it to H263. Any ideas on this one?

The main problem is that rtsp streams are not properly transcoding to FLV. I'm using Apple's Darwin Streaming server to provide my rtsp. Works greats. The following

vlc --sout "#transcode{vcodec=FLV1}:std{access=http{mime=video/x-flv},dst=0.0.0.0:8080/stream.flv}" rtsp://10.4.0.71:554/sample_100kbit.mp4 --loop --no-audio --color -I dummy

produces

[00000381] dummy interface: using the dummy interface module...
[00000397] main private: creating httpd
[00000409] live555 demuxer: set startseq: 15951
[00000409] live555 demuxer: set startseq: 28408

So it appears to work right? When I try to connect to the same place as before (127.0.0.1:8080/stream.flv), Flex cannot get the video. Instead there are debug traces like this

nsActivate
playing stream txtAddress.text: http://127.0.0.1:8080/stream.flv
openNetStream width: 320 height: 240
onNetStatus event: NetStream.Play.Start
onMetaData()
(Array)#0
[duration] 0
[filesize] 0
[framerate] 1000
[height] 242
[videocodecid] 2
[videodatarate] 0
[width] 192
onNetStatus event: NetStream.Play.Stop
onNetStatus event: NetStream.Buffer.Flush
nsDeactivate

There's not even a height and width listed for the video. By contrast, running the very first command above yields

onMetaData()
(Array)#0
[audiocodecid] 2
[audiosamplerate] 44100
[audiosamplesize] 16
[duration] 0
[filesize] 0
[framerate] 25
[height] 240
[stereo] true
[videocodecid] 2
[videodatarate] 0
[width] 320

and plays properly.

I apologize for the lengthy post, but I wanted to get this all out there. So, here are my questions:

1. Should I be able to transcode a live rtsp stream in mp4 to a live FLV stream with h264 video?
2. What --sout command should I be trying to make this work?
3. Are there other switches I should be setting to VLC to get this working?

Thanks for your attention!

dynamitemedia
Blank Cone
Blank Cone
Posts: 60
Joined: 15 Jul 2007 23:30

Re: RTSP -> FLV live stream transcoding

Postby dynamitemedia » 29 Mar 2008 07:56

sorry this reply isnt for help but a question.

but a question for you.

so could i use this below but using a AVI or mp4 and get it to a flv player?

Code: Select all

vlc C:\Media\Videos\Robot_sentinella.flv --sout "#transcode{vcodec=FLV1,acodec=mp3}:std{access=http{mime=video/x-flv},dst=0.0.0.0:8080/stream.flv}" --loop --color -I dummy

to this for example or even a avi?

Code: Select all

vlc C:\Videos\.myvidoe.mp4 --sout "#transcode{vcodec=FLV1,acodec=mp3}:std{access=http{mime=video/x-flv},dst=0.0.0.0:8080/stream.flv}" --loop --color -I dummy
or what do you suggest being the best option and quality from what you posted to , to use?

do we need to set the bitrate for the video and audio?

thanks and again sorry wish i could help more but your more advanced than i on this.

user411
Blank Cone
Blank Cone
Posts: 10
Joined: 26 Mar 2008 22:47

Re: RTSP -> FLV live stream transcoding

Postby user411 » 31 Mar 2008 23:29

Hi dynamitemedia,

I am new to stream transcoding with VLC too. That's probably why I'm having this issue.

Your second command line should work if your copy of VLC is built with mp4 support. I have had success without setting bitrates. I've also had success with leaving out the audio during a transcode. If you want to set bitrates, the tags are ab= and vb= in the #transcode{} block.

I'm not advanced enough to comment on the "best" option. All of these lines are attempting to stream the resulting video. If you have problems, try transcoding the video to a file first and see if that file plays.

Best of luck, and post back about any good successes!

johansyd
Blank Cone
Blank Cone
Posts: 25
Joined: 27 Feb 2008 11:10

Re: RTSP -> FLV live stream transcoding

Postby johansyd » 10 Apr 2008 00:54

I have tried to transcode a mpeg4 rtsp stream to ogg/theora for weeks now, but with no success. I am about to give up on it. I get a to big drift when i try this:

./vlc -vvv --access live555 --codec ffmpeg --sout-transcode-vcodec theora
--sout-transcode-acodec vorbis --sout-transcode-venc theora
--sout-transcode-aenc vorbis --sout-standard-mux mux_ogg
--sout-standard-dst source:password@localhost:8000/test.ogg
--sout-standard-access access_output_shout
rtsp://158.39.162.136/my_stream.sd

./vlc -vvv "rtsp://158.39.162.136/my_stream.sdp"
:sout='#transcode{vcodec=theora,vb=300,acodec=vorbis,ab=16, venc=theora,
aenc=vorbis scale=1, channels=2, audio-sync}:std{access=shout, mux=ogg,
dst=source:password@localhost:8000/test.ogg}'

./vlc -vvv --access live555 --sout
'#transcode{vcodec=theora,acodec=vorbis,vb=300,ab=16}:standard{access=shout,mux=ogg,dst=source:password@localhost:8000/test.ogg}'
rtsp://158.39.162.136/my_stream.sdp

It's probably a bit of the side. We have no problem transcoding from file and sending out http, shout and rtsp streams, but not from a rtsp stream. I am as clueless as you are. Here is the output:

Code: Select all

VLC media player 0.8.6f Janus [00000001] main private debug: checking builtin modules [00000001] main private debug: checking plugin modules [00000001] main private debug: loading plugins cache file /home/johansyd/.vlc/cache/plugins-04081e.dat [00000001] main private debug: recursively browsing `modules' [00000001] main private debug: recursively browsing `/usr/local/lib/vlc' [00000001] main private debug: recursively browsing `plugins' [00000001] main private debug: module bank initialized, found 426 modules [00000001] main private debug: opening config file /home/johansyd/.vlc/vlcrc [00000001] main private debug: CPU has capabilities 486 586 MMX MMXEXT SSE SSE2 FPU [00000001] main private debug: looking for memcpy module: 4 candidates [00000001] main private debug: using memcpy module "memcpymmxext" [00000548] main playlist debug: waiting for thread completion [00000548] main playlist debug: thread 1082132816 (playlist) created at priority 0 (playlist/playlist.c:184) [00000549] main private debug: waiting for thread completion [00000549] main private debug: thread 1090525520 (preparser) created at priority 0 (playlist/playlist.c:210) [00000550] main interface debug: looking for interface module: 2 candidates [00000550] main interface debug: using interface module "hotkeys" [00000550] main interface debug: thread 1098918224 (interface) created at priority 0 (interface/interface.c:231) [00000552] main interface debug: looking for interface module: 2 candidates [00000552] main interface debug: using interface module "screensaver" [00000552] main interface debug: thread 1107310928 (interface) created at priority 0 (interface/interface.c:231) [00000554] main interface debug: looking for interface module: 2 candidates [00000554] main interface debug: using interface module "showintf" [00000554] main interface debug: thread 1115703632 (interface) created at priority 0 (interface/interface.c:231) [00000548] main playlist debug: adding playlist item `rtsp://158.39.162.136/my_stream.sdp' ( rtsp://158.39.162.136/my_stream.sdp ) [00000556] main interface debug: looking for interface module: 8 candidates [00000556] main interface debug: using interface module "wxwidgets" [00000556] main interface debug: thread 1124096336 (manager) created at priority 0 (interface/interface.c:216) [00000556] wxwidgets interface debug: Using last windows config '(-1,0,0,1280,1024)(0,795,44,425,88)(6,0,0,-1,150)' [00000556] wxwidgets interface debug: id=0 p=(795,44) s=(425,88) [00000556] wxwidgets interface debug: id=6 p=(0,0) s=(-1,150) [00000548] main playlist debug: nothing requested, starting [00000548] main playlist debug: creating new input thread [00000559] main input debug: waiting for thread completion [00000559] main input debug: creating statistics handler [00000561] main stream output debug: stream=`transcode' [00000562] main private debug: looking for sout stream module: 2 candidates [00000561] main stream output debug: stream=`std' [00000565] main private debug: looking for sout stream module: 2 candidates [00000565] main private debug: set sout option: sout-standard-access to shout [00000565] main private debug: set sout option: sout-standard-mux to ogg [00000565] main private debug: set sout option: sout-standard-dst to source:sexy4you@localhost:8000/test.ogg [00000565] stream_out_standard private debug: creating `shout/ogg://source:sexy4you@localhost:8000/test.ogg' [00000565] stream_out_standard private debug: extension is ogg [00000565] stream_out_standard private debug: extension -> mux=ogg [00000565] stream_out_standard private debug: using `shout/ogg://source:sexy4you@localhost:8000/test.ogg' [00000567] main private debug: looking for sout access module: 1 candidate [00000567] access_output_shout private warning: failed to connect using 'icy' (shoutcast) protocol [00000559] main input debug: thread 1132489040 (input) created at priority 0 (input/input.c:265) [00000567] access_output_shout private debug: connected using 'http' (icecast 2.x) protocol [00000567] access_output_shout private debug: shout access output opened (source@localhost:8000/test.ogg) [00000567] main private debug: using sout access module "access_output_shout" [00000565] stream_out_standard private debug: access opened [00000569] main private debug: looking for sout mux module: 2 candidates [00000569] mux_ogg private: Open [00000569] main private debug: using sout mux module "mux_ogg" [00000561] main stream output debug: muxer support adding stream at any time [00000561] main stream output debug: muxer prefers to wait for all ES before starting to mux [00000565] stream_out_standard private debug: mux opened [00000565] main private debug: using sout stream module "stream_out_standard" [00000562] main private debug: set sout option: sout-transcode-vcodec to theora [00000562] main private debug: set sout option: sout-transcode-vb to 300 [00000562] main private debug: set sout option: sout-transcode-acodec to vorbis [00000562] main private debug: set sout option: sout-transcode-ab to 16 [00000562] main private debug: set sout option: sout-transcode-venc to theora [00000562] main private debug: set sout option: sout-transcode-aenc to vorbis [00000562] main private debug: set sout option: sout-transcode-scale to 1 [00000562] main private debug: set sout option: sout-transcode-channels to 2 [00000562] main private debug: set sout option: sout-transcode-audio-sync to (null) [00000562] stream_out_transcode private debug: codec audio=vorb 0Hz 2 channels 16Kb/s [00000562] stream_out_transcode private debug: codec video=theo 0x0 scaling: 1.000000 300kb/s [00000562] main private debug: using sout stream module "stream_out_transcode" [00000559] main input debug: `rtsp://158.39.162.136/my_stream.sdp' gives access `rtsp' demux `' path `158.39.162.136/my_stream.sdp' [00000559] main input debug: creating demux: access='rtsp' demux='' path='158.39.162.136/my_stream.sdp' [00000571] main demuxer debug: looking for access_demux module: 2 candidates Sending request: OPTIONS rtsp://158.39.162.136/my_stream.sdp RTSP/1.0 CSeq: 1 User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received OPTIONS response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 1 Public: DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, OPTIONS, ANNOUNCE, RECORD Sending request: DESCRIBE rtsp://158.39.162.136/my_stream.sdp RTSP/1.0 CSeq: 2 Accept: application/sdp User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received DESCRIBE response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 2 Cache-Control: no-cache Content-length: 518 Date: Wed, 09 Apr 2008 21:38:57 GMT Expires: Wed, 09 Apr 2008 21:38:57 GMT Content-Type: application/sdp x-Accept-Retransmit: our-retransmit x-Accept-Dynamic-Rate: 1 Content-Base: rtsp://158.39.162.136/my_stream.sdp/ Need to read 518 extra bytes Read 518 extra bytes: v=0 o=- 1973955538 1973955538 IN IP4 127.0.0.0 s=Wirecast c=IN IP4 0.0.0.0 t=0 0 a=range:npt=now- a=control:* m=audio 0 RTP/AVP 96 a=rtpmap:96 mpeg4-generic/44100/2 a=fmtp:96 profile-level-id=15;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1210 a=control:trackid=1 m=video 0 RTP/AVP 97 a=rtpmap:97 MP4V-ES/90000 a=fmtp:97 profile-level-id=1;config=000001B0F3000001B50EE040C0CF0000010000000120008440FA285020F0A31F a=cliprect:0,0,240,320 a=framesize:97 320-240 a=control:trackid=2 [00000571] live555 demuxer debug: RTP subsession 'audio/MPEG4-GENERIC' Sending request: SETUP rtsp://158.39.162.136/my_stream.sdp/trackid=1 RTSP/1.0 CSeq: 3 Transport: RTP/AVP;unicast;client_port=32872-32873 User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received SETUP response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 3 Cache-Control: no-cache Session: 407131663067285039 Date: Wed, 09 Apr 2008 21:38:57 GMT Expires: Wed, 09 Apr 2008 21:38:57 GMT Transport: RTP/AVP;unicast;source=158.39.162.136;client_port=32872-32873;server_port=6970-6971 [00000571] live555 demuxer debug: RTP subsession 'video/MP4V-ES' Sending request: SETUP rtsp://158.39.162.136/my_stream.sdp/trackid=2 RTSP/1.0 CSeq: 4 Transport: RTP/AVP;unicast;client_port=32874-32875 Session: 407131663067285039 User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received SETUP response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 4 Session: 407131663067285039 Cache-Control: no-cache Date: Wed, 09 Apr 2008 21:38:57 GMT Expires: Wed, 09 Apr 2008 21:38:57 GMT Transport: RTP/AVP;unicast;source=158.39.162.136;client_port=32874-32875;server_port=6970-6971 Sending request: PLAY rtsp://158.39.162.136/my_stream.sdp/ RTSP/1.0 CSeq: 5 Session: 407131663067285039 Range: npt=0.000- User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received PLAY response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 5 Session: 407131663067285039 Range: npt=now- RTP-Info: url=rtsp://158.39.162.136/my_stream.sdp/trackid=1,url=rtsp://158.39.162.136/my_stream.sdp/trackid=2 [00000559] main input debug: selecting program id=0 [00000571] main demuxer debug: using access_demux module "live555" [00000574] main packetizer debug: looking for packetizer module: 33 candidates [00000574] packetizer_mpeg4audio packetizer debug: running MPEG4 audio packetizer [00000574] packetizer_mpeg4audio packetizer debug: AAC 44100Hz 1024 samples/frame [00000574] main packetizer debug: using packetizer module "packetizer_mpeg4audio" [00000559] main input debug: stream out mode -> no decoder thread [00000609] main packetizer debug: looking for packetizer module: 33 candidates [00000609] packetizer_mpeg4video packetizer debug: opening with vol size: 33 [00000609] main packetizer debug: using packetizer module "packetizer_mpeg4video" [00000559] main input debug: stream out mode -> no decoder thread [00000559] main input debug: starting in async mode [00000559] main input debug: `rtsp://158.39.162.136/my_stream.sdp' successfully opened [00000609] packetizer_mpeg4video packetizer debug: need a starting pts/dts [00000561] main stream output debug: adding a new input [00000562] stream_out_transcode private debug: creating audio transcoding from fcc=`mp4a' to fcc=`vorb' [00000612] main decoder debug: looking for decoder module: 48 candidates [00000612] main decoder debug: using decoder module "faad" [00000613] main encoder debug: looking for encoder module: 2 candidates [00000613] vorbis encoder error: CBR mode initialisation failed [00000613] vorbis encoder error: CBR mode initialisation failed [00000613] main encoder warning: no encoder module matching "vorbis" could be loaded [00000562] stream_out_transcode private error: cannot find encoder (vorbis) [00000612] main decoder debug: removing module "faad" [00000562] stream_out_transcode private error: cannot create audio chain [00000574] main packetizer error: cannot create packetizer output (mp4a) [00000561] main stream output debug: adding a new input [00000562] stream_out_transcode private debug: creating video transcoding from fcc=`mp4v' to fcc=`theo' [00000634] main decoder debug: looking for decoder module: 48 candidates [00000634] ffmpeg decoder debug: libavcodec initialized (interface 3352064 ) [00000634] ffmpeg decoder debug: postprocessing disabled [00000634] ffmpeg decoder debug: using direct rendering [00000634] ffmpeg decoder debug: ffmpeg codec (MPEG-4 Video) started [00000634] main decoder debug: using decoder module "ffmpeg" [00000635] main encoder debug: looking for encoder module: 1 candidate [00000635] main encoder debug: using encoder module "theora" [00000635] main encoder debug: removing module "theora" [00000634] ffmpeg decoder warning: warning: first frame is no keyframe (mpeg4@0xfa8b10) [00000562] stream_out_transcode private debug: drift is too high, resetting master sync [00000562] stream_out_transcode private debug: decoder aspect is 576000:432000 [00000562] stream_out_transcode private debug: source pixel aspect is 1.000000:1 [00000562] stream_out_transcode private debug: scaled pixel aspect is 1.000000:1 [00000562] stream_out_transcode private debug: source 320x240, crop 320x240, destination 320x240, padding 320x240 [00000562] stream_out_transcode private debug: encoder aspect is 576000:432000 [00000635] main encoder debug: looking for encoder module: 1 candidate [00000635] main encoder debug: using encoder module "theora" [00000569] main private debug: adding a new input [00000569] mux_ogg private debug: adding input [00000569] mux_ogg private debug: theora stream [00000562] stream_out_transcode private debug: drift is too high, resetting master sync Segmentation fault (core dumped)

Streaming theora:

./vlc -vvv rtsp://158.39.162.136/my_stream.sdp --sout '#transcode{venc=theora,aenc=vorbis, vb=1024,ab=64}:duplicate{dst=std{access=shout{ogg=1,protocol=icy},mux=mux_ogg,dst=source:password@localhost:8000/test.ogg}}'

./vlc -vvv rtsp://158.39.162.136/my_stream.sdp --sout '#transcode{venc=theora,aenc=vorbis, vb=1024,ab=64}:std{access=shout{ogg=1,protocol=icy},mux=mux_ogg,dst=source:password@localhost:8000/test.ogg}'

On this one I can get a picture, but no transcoding:

./vlc -vvv rtsp://158.39.162.136/my_stream.sdp :sout=#transcode{venc=theora,aenc=vorbis, vb=1024,ab=64}:duplicate{dst=std{access=shout{ogg=1,protocol=icy},mux=mux_ogg,dst=source:password@localhost:8000/test.ogg}}

output:

Code: Select all

VLC media player 0.8.6f Janus [00000001] main private debug: checking builtin modules [00000001] main private debug: checking plugin modules [00000001] main private debug: loading plugins cache file /home/johansyd/.vlc/cache/plugins-04081e.dat [00000001] main private debug: recursively browsing `modules' [00000001] main private debug: recursively browsing `/usr/local/lib/vlc' [00000001] main private debug: recursively browsing `plugins' [00000001] main private debug: module bank initialized, found 426 modules [00000001] main private debug: opening config file /home/johansyd/.vlc/vlcrc [00000001] main private debug: CPU has capabilities 486 586 MMX MMXEXT SSE SSE2 FPU [00000001] main private debug: looking for memcpy module: 4 candidates [00000001] main private debug: using memcpy module "memcpymmxext" [00000548] main playlist debug: waiting for thread completion [00000548] main playlist debug: thread 1082132816 (playlist) created at priority 0 (playlist/playlist.c:184) [00000549] main private debug: waiting for thread completion [00000549] main private debug: thread 1090525520 (preparser) created at priority 0 (playlist/playlist.c:210) [00000550] main interface debug: looking for interface module: 2 candidates [00000550] main interface debug: using interface module "hotkeys" [00000550] main interface debug: thread 1098918224 (interface) created at priority 0 (interface/interface.c:231) [00000552] main interface debug: looking for interface module: 2 candidates [00000552] main interface debug: using interface module "screensaver" [00000552] main interface debug: thread 1107310928 (interface) created at priority 0 (interface/interface.c:231) [00000554] main interface debug: looking for interface module: 2 candidates [00000554] main interface debug: using interface module "showintf" [00000554] main interface debug: thread 1115703632 (interface) created at priority 0 (interface/interface.c:231) [00000548] main playlist debug: adding playlist item `rtsp://158.39.162.136/my_stream.sdp' ( rtsp://158.39.162.136/my_stream.sdp ) [00000556] main interface debug: looking for interface module: 8 candidates [00000556] main interface debug: using interface module "wxwidgets" [00000556] main interface debug: thread 1124096336 (manager) created at priority 0 (interface/interface.c:216) [00000556] wxwidgets interface debug: Using last windows config '(-1,0,0,1280,1024)(0,795,44,425,328)(2,0,25,410,564)(6,0,0,-1,150)' [00000556] wxwidgets interface debug: id=0 p=(795,44) s=(425,328) [00000556] wxwidgets interface debug: id=2 p=(0,25) s=(410,564) [00000556] wxwidgets interface debug: id=6 p=(0,0) s=(-1,150) [00000548] main playlist debug: nothing requested, starting [00000548] main playlist debug: creating new input thread [00000559] main input debug: waiting for thread completion [00000559] main input debug: creating statistics handler [00000561] main stream output debug: stream=`transcode' [00000562] main private debug: looking for sout stream module: 2 candidates [00000561] main stream output debug: stream=`std' [00000565] main private debug: looking for sout stream module: 2 candidates [00000565] main private debug: set sout option: sout-standard-access to shout{ogg=1,protocol=icy} [00000565] main private debug: set sout option: sout-standard-mux to mux_ogg [00000565] main private debug: set sout option: sout-standard-dst to source:sexy4you@localhost:8000/test.ogg [00000565] stream_out_standard private debug: creating `shout{ogg=1,protocol=icy}/mux_ogg://source:sexy4you@localhost:8000/test.ogg' [00000565] stream_out_standard private debug: extension is ogg [00000565] stream_out_standard private debug: extension -> mux=ogg [00000565] stream_out_standard private debug: using `shout{ogg=1,protocol=icy}/mux_ogg://source:sexy4you@localhost:8000/test.ogg' [00000567] main private debug: looking for sout access module: 1 candidate [00000567] main private warning: option ogg is unknown [00000567] main private warning: option protocol is unknown [00000567] access_output_shout private warning: failed to connect using 'icy' (shoutcast) protocol [00000559] main input debug: thread 1132489040 (input) created at priority 0 (input/input.c:265) [00000567] access_output_shout private debug: connected using 'http' (icecast 2.x) protocol [00000567] access_output_shout private debug: shout access output opened (source@localhost:8000/test.ogg) [00000567] main private debug: using sout access module "access_output_shout" [00000565] stream_out_standard private debug: access opened [00000569] main private debug: looking for sout mux module: 2 candidates [00000569] mux_ogg private: Open [00000569] main private debug: using sout mux module "mux_ogg" [00000561] main stream output debug: muxer support adding stream at any time [00000561] main stream output debug: muxer prefers to wait for all ES before starting to mux [00000565] stream_out_standard private debug: mux opened [00000565] main private debug: using sout stream module "stream_out_standard" [00000562] main private debug: set sout option: sout-transcode-venc to theora [00000562] main private debug: set sout option: sout-transcode-aenc to vorbis [00000562] main private debug: set sout option: sout-transcode-vb to 1024 [00000562] main private debug: set sout option: sout-transcode-ab to 64 [00000562] main private debug: using sout stream module "stream_out_transcode" [00000559] main input debug: `rtsp://158.39.162.136/my_stream.sdp' gives access `rtsp' demux `' path `158.39.162.136/my_stream.sdp' [00000559] main input debug: creating demux: access='rtsp' demux='' path='158.39.162.136/my_stream.sdp' [00000571] main demuxer debug: looking for access_demux module: 2 candidates Sending request: OPTIONS rtsp://158.39.162.136/my_stream.sdp RTSP/1.0 CSeq: 1 User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received OPTIONS response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 1 Public: DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, OPTIONS, ANNOUNCE, RECORD Sending request: DESCRIBE rtsp://158.39.162.136/my_stream.sdp RTSP/1.0 CSeq: 2 Accept: application/sdp User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received DESCRIBE response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 2 Cache-Control: no-cache Content-length: 527 Date: Thu, 10 Apr 2008 00:12:57 GMT Expires: Thu, 10 Apr 2008 00:12:57 GMT Content-Type: application/sdp x-Accept-Retransmit: our-retransmit x-Accept-Dynamic-Rate: 1 Content-Base: rtsp://158.39.162.136/my_stream.sdp/ Need to read 527 extra bytes Read 527 extra bytes: v=0 o=- 367772162 367772162 IN IP4 127.0.0.0 s=Wirecast c=IN IP4 0.0.0.0 t=0 0 a=range:npt=now- a=control:* m=audio 0 RTP/AVP 96 a=rtpmap:96 mpeg4-generic/44100/2 a=fmtp:96 profile-level-id=15;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1210 a=control:trackid=1 m=video 0 RTP/AVP 97 a=rtpmap:97 MP4V-ES/90000 a=fmtp:97 profile-level-id=1;config=000001B0F3000001B50EE040C0CF0000010000000120008440FA285020F0A31F a=cliprect:0,0,240,320 a=framesize:97 320-240 b=AS:1372 a=control:trackid=2 [00000571] live555 demuxer debug: RTP subsession 'audio/MPEG4-GENERIC' Sending request: SETUP rtsp://158.39.162.136/my_stream.sdp/trackid=1 RTSP/1.0 CSeq: 3 Transport: RTP/AVP;unicast;client_port=32822-32823 User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received SETUP response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 3 Cache-Control: no-cache Session: 3555079508826329464 Date: Thu, 10 Apr 2008 00:12:57 GMT Expires: Thu, 10 Apr 2008 00:12:57 GMT Transport: RTP/AVP;unicast;source=158.39.162.136;client_port=32822-32823;server_port=6976-6977 [00000571] live555 demuxer debug: RTP subsession 'video/MP4V-ES' Sending request: SETUP rtsp://158.39.162.136/my_stream.sdp/trackid=2 RTSP/1.0 CSeq: 4 Transport: RTP/AVP;unicast;client_port=32824-32825 Session: 3555079508826329464 User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received SETUP response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 4 Session: 3555079508826329464 Cache-Control: no-cache Date: Thu, 10 Apr 2008 00:12:57 GMT Expires: Thu, 10 Apr 2008 00:12:57 GMT Transport: RTP/AVP;unicast;source=158.39.162.136;client_port=32824-32825;server_port=6970-6971 Sending request: PLAY rtsp://158.39.162.136/my_stream.sdp/ RTSP/1.0 CSeq: 5 Session: 3555079508826329464 Range: npt=0.000- User-Agent: VLC media player (LIVE555 Streaming Media v2007.02.20) Received PLAY response: RTSP/1.0 200 OK Server: QTSS/5.5.3 (Build/489.0.4; Platform/MacOSX; Release/Update; ) Cseq: 5 Session: 3555079508826329464 Range: npt=now- RTP-Info: url=rtsp://158.39.162.136/my_stream.sdp/trackid=1,url=rtsp://158.39.162.136/my_stream.sdp/trackid=2 [00000559] main input debug: selecting program id=0 [00000571] main demuxer debug: using access_demux module "live555" [00000574] main packetizer debug: looking for packetizer module: 33 candidates [00000574] packetizer_mpeg4audio packetizer debug: running MPEG4 audio packetizer [00000574] packetizer_mpeg4audio packetizer debug: AAC 44100Hz 1024 samples/frame [00000574] main packetizer debug: using packetizer module "packetizer_mpeg4audio" [00000559] main input debug: stream out mode -> no decoder thread [00000609] main packetizer debug: looking for packetizer module: 33 candidates [00000609] packetizer_mpeg4video packetizer debug: opening with vol size: 33 [00000609] main packetizer debug: using packetizer module "packetizer_mpeg4video" [00000559] main input debug: stream out mode -> no decoder thread [00000559] main input debug: starting in async mode [00000559] main input debug: `rtsp://158.39.162.136/my_stream.sdp' successfully opened [00000561] main stream output debug: adding a new input [00000562] stream_out_transcode private debug: creating video transcoding from fcc=`mp4v' to fcc=` ' [00000612] main decoder debug: looking for decoder module: 48 candidates [00000612] ffmpeg decoder debug: libavcodec initialized (interface 3352064 ) [00000612] ffmpeg decoder debug: postprocessing disabled [00000612] ffmpeg decoder debug: using direct rendering [00000612] ffmpeg decoder debug: ffmpeg codec (MPEG-4 Video) started [00000612] main decoder debug: using decoder module "ffmpeg" [00000613] main encoder debug: looking for encoder module: 1 candidate [00000613] main encoder debug: using encoder module "theora" [00000613] main encoder debug: removing module "theora" [00000612] ffmpeg decoder warning: warning: first frame is no keyframe (mpeg4@0xfa3e30) [00000562] stream_out_transcode private debug: decoder aspect is 576000:432000 [00000562] stream_out_transcode private debug: source pixel aspect is 1.000000:1 [00000562] stream_out_transcode private debug: scaled pixel aspect is 1.000000:1 [00000562] stream_out_transcode private debug: source 320x240, crop 320x240, destination 320x240, padding 320x240 [00000562] stream_out_transcode private debug: encoder aspect is 576000:432000 [00000613] main encoder debug: looking for encoder module: 1 candidate [00000613] main encoder debug: using encoder module "theora" [00000569] main private debug: adding a new input [00000569] mux_ogg private debug: adding input [00000569] mux_ogg private debug: theora stream Segmentation fault (core dumped)

haniza
New Cone
New Cone
Posts: 1
Joined: 15 Apr 2008 12:18

Re: RTSP -> FLV live stream transcoding

Postby haniza » 15 Apr 2008 12:22

hi, i really want to know. can the rtsp be converted to flv ? how to this. is there any specific command?

johansyd
Blank Cone
Blank Cone
Posts: 25
Joined: 27 Feb 2008 11:10

Re: RTSP -> FLV live stream transcoding

Postby johansyd » 18 Apr 2008 09:56

Why do you guys want to transcode a Mpeg4 RTSP stream into a FLV stream? You can program flash to capture a live video stream and send it to a flash server.

http://osflash.org/red5

http://www.adobe.com/devnet/flash/artic ... tcher.html

user411
Blank Cone
Blank Cone
Posts: 10
Joined: 26 Mar 2008 22:47

Re: RTSP -> FLV live stream transcoding

Postby user411 » 18 Apr 2008 18:04

The root of the answer is Flash cannot read RTSP out of the box, so I need VLC to transcode it.

I need to be able to provide video to a Flex client that I'm given by RTSP. As far as I know, Red5 cannot transcode RTSP to RTMP. The current Wowza Media Server beta release can, but it requires sap announce on the stream, which is not provided in my setup.

If you have other ideas feel free to post up. What I'm still unclear on is: does VLC provide this feature in daily builds, via patches, or at all? From some postings I was under the impression that this should be possible.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: RTSP -> FLV live stream transcoding

Postby Jean-Baptiste Kempf » 18 Apr 2008 18:28

Latest NB can transcode to flv and stream it on HTTP.

Some people are working on RTMP streaming inside VLC.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

johansyd
Blank Cone
Blank Cone
Posts: 25
Joined: 27 Feb 2008 11:10

Re: RTSP -> FLV live stream transcoding

Postby johansyd » 20 Apr 2008 14:15

RTSP to RTMP?

Why not RTMP to RTMP?

Make a flash video switcher and send it with RTMP to your RTMP server.

We have a similar project going on with transcoding and switching protocols, but in the end of the line, it's better not to fiddle to much if your not doing it for good reasons.

We have been working on live streaming from Wirecast to a Shoutcast server, transcoding from Mpeg4 to Ogg/Theora, but I regret that we didn't use Oggfwd instead taking the source directly from a camera and compressing it with a shout enabled client.

If I were you, I would look more into taking a live video feed with a flash file and sending it to your server with a Netstream object with the help from RTMP. Either that or joing in on the VLC development side.

No hard feelings, but it might save you a lot of frustrations.

user411
Blank Cone
Blank Cone
Posts: 10
Joined: 26 Mar 2008 22:47

Re: RTSP -> FLV live stream transcoding

Postby user411 » 22 May 2008 23:07

Hi johansyd,

I'm sorry it took so long to post back. This issue is still quite relevant to me.

To give some background to what's going on here, we used the method you describe in the past and now it's infeasible due to hardware limitations.

Previously, we used a local Flex based capture application that opened up streams from an Viewcast Osprey 440 capture card as Camera objects and then sent the video via a NetStream to a Flash Media Server. This was a sweet setup, but it required the PCI-X Osprey card, which required a motherboard that supports PCI-X. The problem is we are trying to deploy the server to a mobile environment and finding a small form factor motherboard with PCI-X is not easy. When I last looked, I could find 2 microATX boards that took Pentium Ms and had PCI-X. They haven't been manufactured for a while either. So, to sum it up, we built a non-hardened server and mounted it on a vehicle and hoped for the best.

This year we need to meet vibration and temperature specs that cannot be met with a cobbled together box. The potential computer to do encoding is PC/104 form factor with a Intel Core 2 Duo at 1.5Ghz. So, we need a PC/104 encoder card that can address each capture channel individually from Flex without writing a C++ driver. These cards don't exist to my knowledge. I've looked at offerings from Parvus, Sensoray, and others.

One work around would be to do capture with whatever card is on hand and have VLC transcode the video to FLV for FMS to rebroadcast. Another method would be to use Wowza Media Server to stream transcode RTSP to RTMP (a new feature in 1.5). I have had some good luck with initial tests, but there is too much delay involved, even on a fast dual core desktop. I have also tried Flash Media Encoder, but again it seems to require LOTS of processor just to do one high quality stream, not to mention 4 simultaneous, and it doesn't seem to support quality switching on the fly.

On a side note - Flex claims Camera objects cannot have resolution over 320x240. We got much better video quality out of the above approach than would come from a true 320x240 camera (our sources are 4CIF 704x576 and they look like it). On some level Flex is respecting the native resolution when passing the frames along regardless of the supposed limitations.

The ideal path at present would either be a local VLC stream transcode from a 4 (simultaneous) channel card or RTSP -> RTMP conversion using a Mango DSP encoder card as a RTSP source and then using telnet to change stream qualities at VLC.

I would love to hear any other suggestions for getting 4 channels of BNC video into Flex with 1 high quality, 3 low quality channels with a -30C to 50C+ temperature requirement and 1.5GHz dual core Intel to work with.

Regards!

johansyd
Blank Cone
Blank Cone
Posts: 25
Joined: 27 Feb 2008 11:10

Re: RTSP -> FLV live stream transcoding

Postby johansyd » 23 May 2008 08:38

Hello again!

What you are doing is impossible for a number of reasons.

A 1.5 Gh Dual processor is sufficient for capturing 3 x 1 CCD sources at best with no transcoding involved. We used a Mac Book Pro 2.6 Gh Dual with 4 GB RAM and had problems with capturing 3 streams to disk and transcoding 1 UDP and one RTP stream to Mpeg4. What you are doing is nuts.

I would take a look at hardware solutions for encoding Mpeg video to flash:

http://www.visiblelight.com/mall/produc ... x?pid=1080

but it is probably to expensive and don't solve your initial problem

2. The best solution for you is to forget about transcoding and capturecards and use 4 x 1 CCD kameras which encodes in Mpeg4 and send it through firewire. There are a number of consumer cameras with webcam functions like this one.

http://store.a1pluselectronics.com/jvcgrdicawi2.html

And maybe you also can find a cheep transcoding hardware device like this.

http://www.elgato.com/elgato/int/mainme ... t2.en.html

3. RED 5 is a free flash server that supports Mpeg4 if used together with Flash player 9:

http://osflash.org/red5

The new flash server from Adobe is also available with h.264 and Mpeg4 support, but it might be to expensive for you.

Cheers.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: RTSP -> FLV live stream transcoding

Postby Jean-Baptiste Kempf » 23 May 2008 20:23

VLC is working on streaming to flash.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

johansyd
Blank Cone
Blank Cone
Posts: 25
Joined: 27 Feb 2008 11:10

Re: RTSP -> FLV live stream transcoding

Postby johansyd » 24 May 2008 00:21

That's good to hear. :wink:

Mcguyver
New Cone
New Cone
Posts: 1
Joined: 27 May 2008 21:30

Re: RTSP -> FLV live stream transcoding

Postby Mcguyver » 27 May 2008 21:33

does it means that vlc.0.8.6f supports http stream in flv to a flash based web player??? in that case culd you xplain im interested in making unicast stream to a server and its transcode it to flv http to connect with JW or Flow to play.

Thanks for the greatest forum iver seen.

regards

ndep
New Cone
New Cone
Posts: 1
Joined: 02 Apr 2009 06:56

Re: RTSP -> FLV live stream transcoding

Postby ndep » 02 Apr 2009 07:02

Hi guys,
I am facing exactly the same problem as user411. Despite j-b said "VLC is working on stream -> flv", and after building from lastest git , live stream -> flv is still a no-go for me.
Have anyone managed this so far?

lockev3.0
Blank Cone
Blank Cone
Posts: 18
Joined: 04 Jan 2010 15:43

Re: RTSP -> FLV live stream transcoding

Postby lockev3.0 » 11 Feb 2010 10:09

Hi every H264 -> Flash user.
I've been spending almos 3 months in finding a solution for this RTSP(h264) to FLV transcoding and when I last got to watch my camera stream
from jwplayer, I find this player saves its own data into a /tmp file and then it plays forever the same loop. That's not real-time streaming at all.
Does anyone know if this pre-buffered behaviour may be skipped to get the real time stream ?

Greg
Cone that earned his stripes
Cone that earned his stripes
Posts: 316
Joined: 24 Feb 2009 00:37

Re: RTSP -> FLV live stream transcoding

Postby Greg » 11 Feb 2010 13:26

I'm guessing,but

Sounds like you may be streaming VLC to a file?
Then pointing your player to that file? Hence the player will start to read and buffer the file from the beginning, not in real time?

If so, then you probably want to stream to http, not to file

perhaps this may help

viewtopic.php?f=4&t=71714

lockev3.0
Blank Cone
Blank Cone
Posts: 18
Joined: 04 Jan 2010 15:43

Re: RTSP -> FLV live stream transcoding

Postby lockev3.0 » 12 Feb 2010 07:14

It seems so , doesn't it ?
But, with next command line, I do not know how is it done (not aware at least :) )

Code: Select all

vlc -vvv rtsp://usr:passwd@172.16.1.111:554/axis-media/media.amp --sout "#transcode{vcodec=FLV1,acodec=none}:std{access=http{mime=video/x-flv},dst=0.0.0.0:8090/cam1.flv}" --color -I dummy
In my opinion, I miss something or it must be some default behaviour of the jwplayer because when i issue the above command, nothings dumped to disk but, as soon as i hit the play button of jwplayer a file with a not-human generated name appears at /tmp.

Greg
Cone that earned his stripes
Cone that earned his stripes
Posts: 316
Joined: 24 Feb 2009 00:37

Re: RTSP -> FLV live stream transcoding

Postby Greg » 12 Feb 2010 14:35

From my own observations, a test I ran recently

May be of interest and relate to the problems you are seeing

Running a realtime stream over a LAN with JW, 2 clients reading same stream at same time.
Client #1 Win XP + current Flash +IE 7 - realtime delay=circa 3secs.
Client #2 ubuntu 8.04 + non free Flash + FFox 3.0 - realtime delay=circa 50secs

I obviously concluded the client +hardware+OS+software, plays a major role.

Where was this "Non human" file in /tmp Client or server?

lockev3.0
Blank Cone
Blank Cone
Posts: 18
Joined: 04 Jan 2010 15:43

Re: RTSP -> FLV live stream transcoding

Postby lockev3.0 » 15 Feb 2010 09:29

Well, at the moment such machines are right the same (I know i must start separating phisically the server side from the client)
but, as the user which creates such file (/tmp/FlashBT1ZHT) and directory (/tmp/plugtmp) is the same who issued the vlc command, I must
supposse this is done by server, other way such temporary info would be written by user apache, wouldn't it ?.

As soon as I do the test on separate machines i'll write back. Anyway, such default behaviour must be possible to be controlled some way , doesn't it ?

Greg
Cone that earned his stripes
Cone that earned his stripes
Posts: 316
Joined: 24 Feb 2009 00:37

Re: RTSP -> FLV live stream transcoding

Postby Greg » 16 Feb 2010 01:28

I had some time to look at this, and so , when trying some other tests out today I tried to emulate what you saw and did a re run of what I observed before
Results as follows

Streaming from Ubuntu 8.04-VLC 0.9.9a -Apache2.2 . flv stream embedded via JWP

Results...
No file hidden or otherwise "not-human" file in tmp/ on server seen with JWP

Client #1 win xp. picked up and ran stream , 2-3 secs delay

Client #2 ubuntu 8.04 HH, picked and ran stream (this time, much better than before) circa 10- secs delay, buffer file generated in client /tmp/file FlashXXXXX

Client #3 ubuntu 9.10 KK, failed to pick up stream at first, retried and rebooted several times, I got a variety of results from a few secs delay ,to a few mins delay ,to fail to pick up after 20 mins!!!.. Buffer file generated in client /tmp/ file FlashXXXX

Make of this what you will?

I still run with my original observations that this seems for the most part client related? I will also add that Ubuntu 9.10 KK is bug ridden and full of lots of other headaches for me, so it's eratic behavour comes as no suprise.
Anyway, such default behaviour must be possible to be controlled some way , doesn't it ?
On the client??????????
Hmmm?

I would be interested to hear of your and others experiences in this respect?

lockev3.0
Blank Cone
Blank Cone
Posts: 18
Joined: 04 Jan 2010 15:43

Re: RTSP -> FLV live stream transcoding. Client's Fault

Postby lockev3.0 » 17 Feb 2010 07:37

Yes you are right, this annoying buffering that makes watched video not to be real time is just the client !.

Now I've got to do the test on 2 separate machines (Debian testing both)

1.- First one issues the vlc rtsp://...... --sout to publish the FLV stream in a local port.
2.- Second is merely a web client subscribing to previous port.

With this arch. right in the client /tmp directory as soon as I hit the play appears that damn FlashXXXX file. This seems to work as follow :
.- If I pause jw player, next playings will start from beggining of such cached file.
.- If stream still exists, then player will continue with ahead-pre-recorded video (tmp file increases)
.- In case the stream does not exist, jwplayer do not care, it will just play forever the prerecorded cached file.

I have looked long through longtail forums but i havent' managed my self to avoid this behaviour of the player. I've read about bufferlength (in seconds) but nothing changed ..... :(
Too much time wasted at the moment for so poor results ...... maybe a flashplayer is not the way to achieve this goal ?

lockev3.0
Blank Cone
Blank Cone
Posts: 18
Joined: 04 Jan 2010 15:43

Re: RTSP -> FLV live stream transcoding

Postby lockev3.0 » 17 Feb 2010 07:52

What's funnier now (probably because i did not sleep enough) is that remote web clients do not even see the player embed !?!?!?
Only my local desktop, used as web server to pass the stream readed from a 3rd machine, gets to see the player embedded ....

....going nuts .....I think I'll retire my self some days to Hawai with nice girls taking care of my lost mind ....

Greg
Cone that earned his stripes
Cone that earned his stripes
Posts: 316
Joined: 24 Feb 2009 00:37

Re: RTSP -> FLV live stream transcoding

Postby Greg » 17 Feb 2010 22:37

@ lockev3

Before going nuts and giving up... Check your PM

Greg
Cone that earned his stripes
Cone that earned his stripes
Posts: 316
Joined: 24 Feb 2009 00:37

Re: RTSP -> FLV live stream transcoding

Postby Greg » 22 Feb 2010 02:44

I have been testing actual realtime delays of embedded streams over the last few days.

I noted from your previous couple of posts that the problem you have been experiencing seems to... Only? occur when the pause function on the embedded player is used?
Is this correct?

I have now seen what you describe, that is, when Pause function is used with JWP/FlowP and then Play resumed, the stream then starts from the beginning.

Both I and my clients/users have never had need of the Pause function for realtime streaming. ( to pause Realtime is the job of Timelords?.... :) )

There may be a way around this with JWP or FlowP, but I am unaware of how to achieve it.

However

In the case of using .asf rather than .flv I have found...
Win XP
IE7 + MSMP 10 embedded, the pause function resumes from the point where it was used in time, (not the beginning) and if the Stop function is used, and Play is used to restart (x2) then the Play will resume in realtime.

Ubuntu 9.10...!?!
Moz FF 3.5 + Own internal Player?? not sure, not my rig?
The Pause function effects a pause/stop/ hold frame, and the Play resumes in realtime, that is, Not from beginning, or when pause was invoked in time.

If you want this functionality, .asf might be an easier/quicker way to achieve it than Flash at the possible cost of quality/bandwidth?

This has drifted rather off "sout" ....Perhaps start a new thread in "Web and Script" for further discussion?


Return to “VLC stream-output (sout)”

Who is online

Users browsing this forum: No registered users and 8 guests