Using VLC with Wowza Pro (native RTP)

Hi Charlie,

Thanks for reply. It seems vlc is a tricky option here, I am running vlc on my laptop so the address is 127.0.0.1. I tries using this as the vlc-ip-address but to no avail, vlc runs but doesnt say streaming and the sdp file is not created.

If using vlc to stream from laptop to wowza ec2 server is difficult what other realtime encoders/streaming would you recommend? I need something stable for the project.

:slight_smile: You must be reading my mind, I setup on2 flix for free, got the streaming working in 5mins, but I am now looking at the wirecast, seems like a great product with some great features such as the realtime chroma keying etc and multiple layers.

Think it will be the way to go. Is there an IRC for wowza?

Hi All,

I tried VLC 1.01 but, I returned quickly to VLC 0.8.6i, results are far better.

I am using a live pinnacle encoding card on winXP, using the following cmdline:

“C:\Program Files\VideoLAN\VLC\vlc.exe” -v -I rc --ttl 12 dshow:\ --dshow-vdev=“Pinnacle WDM PCTV Video Capture” --dshow-adev=“SB Audigy Audio [2300]” --volume=1500 --dshow-chroma=RV24 --sout="#transcode{venc=x264{keyint=25},vcodec=x264,croptop=16,cropbottom=16,cropleft=32,cropright=32,vb=350,fps=24,scale=1,acodec=mp4a,ab=32,channels=2,samplerate=44100}:rtp{mux=ts,dst=,port=5014,sdp=http:///live.sdp}:sout-keep"}}

Adding more “-v” items crashes vlc after a while :frowning:

I tested flowplayer, but the result is not good. I switched back to JWPlayer, and it works like a charm !

Nicolas.

It would be very very useful to add a note to the main post that x264 encoding is broken in VLC 0.9.x for Win32. Consequently you have to use 0.8.6i version of VLC for RTP streaming. Fortunately the version is available for downloading from the official site.

Such a note would save me a day of endless trying with x264, h264 and VLC. But finally I got my DLink DSC 6110 IP-camera broadcasting to Internet :slight_smile:

Hello,

It looks like I need some help. I successfully run DLink IP camera -> VLC -> Wowza -> JW Player combination. But I faced a problem: the JW Player takes very long time to connect. I though this is the player problem, but here is the log-file:

INFO    session   connect    2009-02-04 18:24:28    1837704724    193.19.000.000    -    3466    3073    0.0090        -           -        -    -    -    -    193.19.000.000  -
INFO    stream    create     2009-02-04 18:24:28    1837704724    193.19.000.000    -    3619    3361    0.0010        -           37466    0    0    -    -    -               -
INFO    server    comment    2009-02-04 18:24:28    -             -                 -    -       -       506679.786    -           -        -    -    -    -    -               MediaStreamMediaCasterPlay: startPlay
INFO    stream    play       2009-02-04 18:25:05    1837704724    193.19.000.000    -    3684    3494    36.835        vlc1.sdp    37466    0    0    -    -    vlc1.sdp        -
INFO    session   connect    2009-02-04 21:55:29    18873099      80.64.000.000     -    3464    3073    0.022         -           -        -    -    -    -    80.64.000.000   -
INFO    stream    create     2009-02-04 21:55:29    518873099     80.64.000.000     -    3617    3361    0.0010        -           25821    0    0    -    -    -               -
INFO    server    comment    2009-02-04 21:55:29    -             -                 -    -       -       519340.676    -           -        -    -    -    -    -               MediaStreamMediaCasterPlay: startPlay
INFO    stream    play       2009-02-04 21:55:44    518873099     80.64.000.000     -    3668    3476    15.419        vlc1.sdp    25821    0    0    -    -    vlc1.sdp        -

Note the 37 and 15 seconds pauses between the connect and play commands. Obviously nobody would wait 40 seconds and suppose that the service is broken. What may be the reason of the problem and how to resolve it? The VLC command line is as follow:

c:\program files\vlc\vlc.exe -vvv rtsp://10.195.000.000/live.sdp --sout "#transcode{venc=x264,vcodec=x264,vb=256,width=320,height=240,fps=25,noaudio}:duplicate{dst=display,dst="rtp{dst=193.19.000.000,port-video=10010,sdp=file://c:/vlc1.sdp}"}'

Any help would be really appreciated…

Hello Charlie,

Thank you for the rocket fast answer. This is what I was afraid of. I will look at VLC though as x264 for Win32 is broken for 0.9.x and nobody cares about is for months, I wouldn’t expect too much.

The only thing is that this is 100% second connection. I even tried right now and opened 2nd browser:

INFO    session connect      2009-02-04 22:54:44    176673127     80.64.000.000     -    3464    3073    0.02          -           -        -    -    -    -    80.64.000.000   -
INFO    stream  create       2009-02-04 22:54:44    176673127     80.64.000.000     -    3617    3361    0.0           -           55356    0    0    -    -    -               -
INFO    server  comment      2009-02-04 22:54:44    -             -                 -    -       -       522895.77     -           -        -    -    -    -    -               MediaStreamMediaCasterPlay: startPlay
INFO    stream  play         2009-02-04 22:55:12    176673127     80.64.000.000     -    3682    3494    27.934        vlc1.sdp    55356    0    0    -    -    vlc1.sdp        -

Another 38 seconds. At this moment Wowza gets the RTP-stream for sure, so there is no time for expecting the keyframe here. Do you think this is the same issue, but between Wowza and player?

Regarding the module: I already tried it and found one interesting thing – it sees only 1 channel (vlc1.sdp) from my 6 channels (vlc2…vlc6.sdp). Anyway I did not found it too useful, may be I was wrong?

Yes, this is not the best choice, but I do not know any other MPEG4/RTSP -> H264/RTP convertor. Do you know any?

Also I can’t believe that it’s possible to have 20 seconds without keyframes. I even specified keyint=5,idrint=5 according with this doc: http://wiki.videolan.org/Documentation:Streaming_HowTo/Advanced_Streaming_Using_the_Command_Line . Unfortunately I can’t check if the parameters work as expected.

May be I should send you the debug log, so we are sure this is 100% not Wowza issue?

Thank you Charlie, the log file and comments were sent.

The solution was found – thank you, Charlie!

transcode{venc=x264{keyint=15},vcodec=x264...}

With fps=10 the setting produces pretty fast response. I think it would make sense to add the note to the original post.

Maybe someone know any alternative soft? VLC too bugged …

Hello, just new to this forum.

I am trying to setup vlc working with wowza using rtp. They are installed in the same windows host. I have read all the posts in this thread but still cannot get things working. hope you guys can give me some advice.

following the tutorial:

vlc commands(1 audio sample and 1 video sample):

vlc -vvv “c:\Downloads\BreatheMe.mp3” :sout=#rtp{dst=192.168.1.45,sdp=http://192.168.1.45:8888/test.sdp}

vlc -vvv “c:\Downloads\Extremists.flv” :sout=#transcode{vcodec=mp4v,vb=800,scale=1,acodec=mp4a,ab=128,channels=2}:duplicate{dst=rtp{dst=192.168.1.45,mux=mp4,port=1234,port-audio=1234,port-video=1234,sdp=http://192.168.1.45:8888/test.sdp}}

192.168.1.45 is my local ip, using 127.0.0.1 is the same.

I can catch them with “vlc http://192.168.1.45:8888/test.sdp” to play.

And in “nativertp.html”, I set stream to “http://192.168.1.45:8888/test.sdp” and click “play”.

From the console I can see there is no error, the last line is “INFO stream play http://192.168.1.45:8888/test.sdp -”

However, there is nothing playing in the html page.

there are also lines like “INFO server comment - UDPTransport.bind: /192.168.1.45:50000”. I guess this is the communication between VLC & WOWZA and I try to play “udp://@192.168.1.45:5000” with VLC and it works, although the video is distorted.

I also try this vlc command:

vlc -vvv “c:\Downloads\BreatheMe.mp3” :sout=#rtp{dst=192.168.1.45,sdp=rtsp://192.168.1.45:8888/test.sdp}

I can use VLC player to catch it, but when I use “rtsp://192.168.1.45:8888/test.sdp” as the stream in “nativertp.html”, I got an error “ERROR serve comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.processResponse: CSeq less than zero”. Finally I got a “*** RTSP/RTPS re-streaming timeout.”

anyone has any idea? I gotta use vlc cuz it works in linux, which is my future goal. thanks a lot.

Hi Charlie, thanks for the quick response.

I have tried this before, the problem is whenever I use x264 or h264, vlc crashes right after launch. (using vlc 0.9.8a)

And when I try it with a mp3 and without encoding, vlc is fine, but there is not sdp file generated in that “content” directory.(there is no problem with “%WMSCONFIG_HOME%”), I can generate the sdp file to “c:\downloads” but not the %WMSCONFIG_HOME%.

Even if I generate the sdp somewhere and copy it to “%WMSCONFIG_HOME%\content”, and use the correct stream name, it still does not work. I tried it before.

Thanks.

hi, I just tried it again.

for once vlc generateed sdp file, but sometimes it did not.

I am sure I have used it to generate sdp file before.

Also, when I used a http url to host the sdp file, I tried to save it from

web browser and then copied it to “content” directory, same problem.

Thanks.

hi Charlie,

thanks a lot, I tried to encode mp3 to AAC (becuz as I said the video encoding crashed vlc software), and it is playing.(I used “sdp=http://192.168.1.45:8888/test.sdp”)

final command:

vlc -vvv “c:\Downloads\BreatheMe.mp3” :sout=#transcode{acodec=mp4a,ab=128,channels=2}:duplicate{dst=rtp{dst=192.168.1.45,sdp=http://192.168.1.45:8888/test.sdp}}

I have another question. In the nativertp.html, the server is “rtmp://localhost/rtplive”, and vlc support rtmp protocol, so how can i play it in vlc? when I tried this “rtmp://localhost/rtplive” directly in vlc, it was not able to open this MRL.

I wanna try in vlc so that I can use vlc to test WOWZA’s streaming in other computers easily. Thanks.

I copied “NativeRTPVideoStreaming” folder to another computer and ran nativertp.html, revise server url and stream name, and it worked.

This should be simple enough for me to test in other computers.

Thanks for everybody posted here.

Hello, I got WowzaProForAmazonEC2 instance running.The sample video is playing fine.

Later I use VLC to generate a sdp in HTTP format like “...:8888/test.sdp”(it is valid). However, when I try nativertp.html and input correct server and stream, there is no error in the HTML, but nothing was played. in WOWZA server, I got the following log when a connection happened:

INFO stream publish http://...:8888/test.sdp -

INFO server comment - UDPTransport.bind: /...:50000

INFO server comment - UDPTransport.bind: /...:50001

ERROR server comment - RTPUDPListener.init: java.net.BindException: Cannot assign requested address

INFO server comment - RTPMediaCaster.Reconnector: stop

ERROR server comment - RTPUDPListener.init: java.net.BindException: Cannot assign requested address

any idea what does this mean? Thanks a lot.

so it was not anything wrong with my system, it is the problem of VLC, glad to know that^_^

I tried VLC in a host, and WOWZA in another host in the same LAN.

VLC is running fine and output sdp file correctly. however, WOWZA still cannot bind udp port. I tried different ports in host with VLC, none worked.

and when I checked the port occupation in host with VLC, the udp ports used by VLC was not occupied. Not sure if it is the problem of this version of VLC.(0.9.8a)

Hi charlie, thanks for your reply. The error in WOWZA log is what I posted in #106, as following:

INFO stream publish http://...:8888/test.sdp -

INFO server comment - UDPTransport.bind: /...:50000

INFO server comment - UDPTransport.bind: /...:50001

ERROR server comment - RTPUDPListener.init: java.net.BindException: Cannot assign requested address

INFO server comment - RTPMediaCaster.Reconnector: stop

ERROR server comment - RTPUDPListener.init: java.net.BindException: Cannot assign requested address

The ip address is correct and valid, including sdp file, but it is of the host running VLC. And I think WOWZA is trying to bind the port of the host running VLC but not WOWZA itself, right?

thanks your replies. sorry that I did not have time for this yesterday.

Previously it was my mistake that I used the ip of VLC as destination. I just tried EC2’s public dns(eg. ec2-75-101-169-195.compute-1.amazonaws.com) for destination. the sdp file generated by vlc has a line like this:

“c=IN IP4 75.101.169.195”

and then I observed the same error in WOWZA log:

"INFO stream publish http://...:8888/test.sdp -

INFO server comment - UDPTransport.bind: /75.101.169.195:50000

INFO server comment - UDPTransport.bind: /75.101.169.195:50001

ERROR server comment - RTPUDPListener.init: java.net.BindException: Cannot assign requested address

INFO server comment - RTPMediaCaster.Reconnector: stop

ERROR server comment - RTPUDPListener.init: java.net.BindException: Cannot assign requested address"

Then I modified sdp file, changed it to:

“c=IN IP4 ec2-75-101-169-195.compute-1.amazonaws.com”, and uploaded it to “/content” folder of WOWZA

And what I saw in WOWZA log was:

"INFO stream create - -

INFO server comment - MediaStreamMediaCasterPlay: startPlay

INFO server comment - RTPMediaCaster.create

INFO server comment - RTPMediaCaster.init

INFO server comment - RTPMediaCaster.Reconnector: start

INFO server comment - RTPSessionDescriptionDataProviderBasic.getStreamInfo: /usr/local/WowzaMediaServerPro/content/test.sdp

INFO stream create - -

INFO stream publish test.sdp -

INFO server comment - UDPTransport.bind: ec2-75-101-169-195.compute-1.amazonaws.com/10.249.206.192:50000

INFO server comment - UDPTransport.bind: ec2-75-101-169-195.compute-1.amazonaws.com/10.249.206.192:50001

INFO server comment - RTPMediaCaster.Reconnector: stop"

Seems to me that binding is successful, but it still does not play.

Thanks a lot for your helps guys.