Wowza Community

Using VLC with Wowza Pro (native RTP)

Hello,

VLC streaming works with good quality, good job Wowza Team. However there is a delay issue :

There almost a two second overall delay between the VLC <–> flash player on the browser. On the machine that runs wowza, I also tried VLC as the “player” and the delay is almost 0. The flash video component has almost 0

buffer time and I use a dedicated Gigabit ethernet so no bandwith problem. My guess is that Wowza is doing some buffering on the server side.

I played with the parameters of “rtp-live-lowlatency” in the file “Streams.xml”

and decreased the values to :

flushInterval

25

Integer

behindDropDFrames

100

Integer

behindDropPFrames

200

Integer

behindDropKFrames

300

Integer

Though I do not have a clue what they are but an educated guess looking at

the “rtp-live” stream type. However it did not help.

I had almost no delay If I stream from a webcam through flashclient.

Any comments ?

Hi,

setting netstream.buffertime = 0 really helps the delay issue with vlc+rtp+h264 live streaming. As Charlie said setting it any value greater than 0 causes a buffering of 2-3 s in flash player

However with buffertime=0 the video look abit choppy, as if it drops frames time to time. My guess is either flash cannot render the video without some buffering or the wowza does not push the frames in real-time. Hence it look like a buffering of 0.3 seconds or so would do the work but impossible to set it between 0 and 1.

Is there a setting in Wowza that may alleviate the problem ?

Thanks alot

Hi,

I’m trying to set up a stream to Wowza through VLC. I was able to stream successfully to Wowza internally to ip 127.0.0.1 from our development server which worked perfectly. Now I’m trying to stream to our live Wowza server and I’m having some problems. I am sending the same stream as before to our live server, which is a remote server, and I seem to be getting a stream. However, it seems the audio is choppy and skipping with no video. I have taken the vlc.sdp file and put it on the remote (live) server and substituted the local IP for the remote Wowza IP. It’s the same stream but different result and I’m not sure why it’s not working. This is my vlc command string:

vlc -vvv mms://xxx.xxx.xxx.xx/stream --sout “#transcode{venc=x264{keyint=60,profile=baseline,level=3.0,nocabac,qpmax=36,qpmin=10,me=hex,merange=24,subme=9,qcomp=0.6},vcodec=x264,vb=100,scale=1,acodec=mp4a,ab=128,channels=2,samplerate=48000}:rtp{dst=[remote-wowza-ip],port-video=10000,port-audio=10002}”

I’m running wowza version 2.1.2

I’ve been at this for some time now trying to get this to work but I cannot find a thread on the forum that mentions anything like what I’m experiencing.

If it helps, I have a duration clock on my custom player and it is going very very fast, like the stream is going in fast forward but the audio is at normal speed (but choppy).

Any help would be appreciated. Thanks in advance.

Thanks for the speedy response, but no luck. I am still getting the choppy audio with no video. I double and triple checked all my settings but I still can’t see anything. Any other advice? ~Thanks.

Yes I have and I’m pretty sure that’s not the problem. Both the computer I’m streaming from and the Wowza server both have a 1GB network connection.

I’m not sure I understand your question, but if I understand correctly I have been testing from 2 computers. The one with the 1g connection is directly connected to the Wowza server on the same rack at our hosting provider. That is our development server I mentioned before. The other computer is here in our office with vlc installed and sending a stream. I’m getting the same result with both computers, the choppy audio. I’ve tried with a static file and I’m getting the same problem. We are going to be using multiple sources to send a stream to the server using VLC so we can’t be stuck with one server as the source. I hope that answers your question. One new thing I have discovered is if I wait long enough the video does appear but only after about 15-30 min of choppy audio but all I am getting is video stills that changed every few minutes or so.

roughly a 20mb upload 50mb download

After getting some help from Charlie I was directed to this forum: https://www.wowza.com/docs/troubleshoot-live-streaming It dealt with packet loss which is what was probably happening. I also had to change my keyframe settings and that did the trick. My stream is working perfectly from all our remote stream points.

Guys,

could anybody point me on how to do the above if Webcam(with VLC), Wowza and FlashClient are 3 different machines?

Thanks in advance

Charlie,

thanks for the fast response.

I’m not sure I understand how it works then…

If .sdp file is created on VLC side and I set path to it in Flash client app, how will Flash app know the address/port of the Wowza instance (I can imagine it takes address from the sdp file, but not the port)?

And how will Wowza know on which port to listen for the stream from the VLC?

Charlie,

unfortunately problem still appears.

As I said before in my setup I use VLC, Wowza and Client on 3 different machines.

Below are configs I’ve tried so far, maybe you could advise something.

  1. If I make .sdp file available via http on VLC side (port 9000) and on Client I set

Server: rtmp://wowza_ip/rtplive

Stream: http://vlc_ip:9000/vlc.sdp

Then Wowza server simply doesn’t get the SDP info and doesn’t open the ports to receive the stream from VLC.

  1. If I copy the vlc.sdp file to “/usr/local/WowzaMediaServerPro/content/” folder and set on Client:

Server: rtmp://wowza_ip/rtplive

Stream: vlc.sdp

Then Wowza receives the stream from VLC but doesn’t send it to Client (I look with tcpdump). They exchange some short packets (40-107 bytes) each 2-5 sec, nothing more.

I’ve tried both LiveVideoStreaming and NativeRTPVideoStreaming with the same result.

Thanks

Done,

thanks in advance

Does anybody know how to extract SDP data in server side application?

Charlie,

as far as I understand VLC (or any other plain RTP) stream gets received by Wowza only after client calls NetStream.play() and Wowza receives the stream until at least one client requests it.

If that’s correct there are few questions:

  • does it call OnPublish server side method after client calls NetStream.play?

  • is there a way to start publishing without calling NetStream.play on client side? In other words can I publish RTP stream from VLC to Wowza without sending it to client?

Thanks

On WinXP with VLC-0.9.2 I’ve used string sdp=“file://c:/Program Files/Video Chat/tmp/out.sdp” inside vlm file.

I can suggest you to use double quotes where you have spaces and first try to get screen output.

try to enable logging in VLC: --file-logging --logfile=".\vlc.log".

How many times did you instal VLC on this machine? If more then 1 you may try to remove module cache.

does it play the file if you open it from GUI?

Try to stream it from GUI and check the command line it creates

I’ve emailed you. Did you try to get the command string using GUI?

UPD: You have to experiment with VLC and it imho it behaves more predictable on Linux.

I would break it in simple steps (e.g. play file with GUI, play with CMD, stream with GUI, stream with CMD) and try it step by step for a few days.

VLC is really tricky - sometimes you have to use single or double quotes, etc. There’s a good forum and wiki on their site - try those also.

  1. I believe you should use vcodec=h264, not x264. I would also manually specify ports (both to be even, e.g. …dst=127.0.0.1,port-video=1234,port-audio=1236…)

  2. Try to switch some CPU features (SSE2 for example) off statically in VLC config - some of them usually cause crashes on Windows.

  3. VLC does transmit h264 stream via plain RTP (your case) or in MPEG-TS container.