Wowza Community

VLC streaming with public IP

Hi

I tried to publish the cam video through VLC encoder. I can publish and play it by the following command.

vlc -vvv -I rc dshow:// :dshow-vdev="SPC 500NC Laptop Camera" :dshow-adev="SoundMAX Digital Audio" :dshow-size="640x480" --sout "#transcode{venc=x264{keyint=30},vcodec=x264,vb=500,scale=1,acodec=mp4a,ab=32,channels=2,samplerate=22050}:rtp{dst=192.168.250.105,sdp=http://192.168.250.100/vlc/vlc.sdp}"

However, when I change to use public IP, the player cannot play the live stream.

vlc -vvv -I rc dshow:// :dshow-vdev="SPC 500NC Laptop Camera" :dshow-adev="SoundMAX Digital Audio" :dshow-size="640x480" --sout "#transcode{venc=x264{keyint=30},vcodec=x264,vb=500,scale=1,acodec=mp4a,ab=32,channels=2,samplerate=22050}:rtp{dst=[public-ip],sdp=http://[public-ip]/vlc/vlc.sdp}"

VLC and cam installed on one machine, wowza and players are on another 2 machines. vlc folder has granted write permission.

Also, can the vlc.sdp put on wowza server’d directory? as I set the virtual host to local.

The second question is that it delays almost 20 seconds and quality is very poor after using the H.264 with vlc.

I use vlc 0.9.9 version.

Any idea?

VLC is probably just not a great way to do. It is not very stable. Your public IP problems are probably due to firewall issues. Be sure all the ports that are being used by VLC are open. Using an http url as the SDP file url just hosts the SDP file at an HTTP url. It does not copy the file to Wowza Media Server.

Charlie

Take a look at Telestream Wirecast, On2 Flix Live and Flash Media Live Encoder.

Charlie

Sam,

Are you using an Axis camera now? Which one? (that link pointed to an encoder) I remember you were using another brand and didn’t know what url to use.

You can handle many inputs on one Wowza server by creating different applications. Use one application to pull from rtsp url of an Axis camera, another to handle streams pushed from FMLE or Wirecast, etc.

Take a look at the sticky posts in the Live Encoders section of the forum. You are right that FMLE is not going to work with the same application that you use for IP camera,which has StreamType “rtp-live”. For FMLE use an application with StreamType “live”. EC2 is not a factor.

Steps to create a Wowza application that you can publish to with Wirecast or FMLE:

http://www.wowza.com/quickstart.html#live

Richard

Unlike wowptc, I have not been able to get VLC (v1.0.0) to work at all.

Attached is my command line, I think it should be correct.

I understand Charlie saying that VLC is not very stable, but am unaware of any other alternative for streaming a webcam, please direct me to one if it exists.

 vlc -vvv -I rc dshow://  :dshow-vdev="USB Video Device" :dshow-adev="USB Audio Device" :dshow-size=640x480 :sout=#transcode{vcodec=h264,vb=30,fps=12,scale=0.25,acodec=mp4a,ab=64,channels=2,samplerate=44100} :rtp{dst=127.0.0.1,port=1234,mux=ts, sdp=file://%WMSCONFIG_HOME%/content/vlc.sdp}

From the command line, VLC crashes. When I create the same setup not from the command line, VLC claims to be streaming but no pictures shows on the livertpstream page.

The sdp file is blank when opened in notepad.

Please help

The below comment was before seeing Charlie’s swift reply, just leaving it for the next guy who makes the same mistakes I did.

First, the reason the last code crashed VLC was that I had neglected to add quotes.

However, fixing that did not get me a video stream:

This time VLC gave back some data, and I think it might actually be useful.

Again, please help


[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131343963866,old
=131343997198,pcr=131343997198)
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131344028243,old
=131344047199,pcr=131344047199)
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131344296242,old
=131344328242,pcr=131344328242)
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131344362908,old
=131344379575,pcr=131344379575)
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131344630856,old
=131344664188,pcr=131344664188)
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131344694810,old
=131344714189,pcr=131344714189)
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131345014482,old
=131345047305,pcr=131344975804)
[0xb8f0fc] stream_out_transcode stream out debug: drift is too high, resetting m
aster sync
[0xb9c42c] mux_ts mux warning: packet with too strange dts (dts=131345160563,old
=131345192470,pcr=131345192470)

Charlie, that was a very quick reply, thank you very much.

VLC is, as far as I am concerned, out!

Now, for the next step:

I have, aside from my webcam, an IP camera [or, to be more exact, an IP server]. I setup Wowza Pro on EC2, and have been trying to get a stream going.

My understanding is that rtsp streams can be push or pull, but that IP servers need the stream to be pulled.

Is there a way to duplicate the same system for the webcam, so that the same EC2 setup can be used both to stream from my computer and from the IP camera, with just changing the URL?

This will not only simplify matters to the point where I might actually figure out how to get things to work, besides the obvious benefit to my workflow.

In the past, my experiments with Flash Media Encoder were completely fruitless, I had thought that to be because FME expects to push the video, and my EC2 setup is expecting to pull it. Is Telestream better in this regard?

Is there a complete walkthrough somewhere? [If not, can I help you write it?]

Richard,

Am using the Etrovision IP server.

The link was to the competing Axis model which is clearly more familiar around these forums, as I wanted to focus on getting this to work via webcam, not to discuss Taiwanese knockoffs.

[The fellows at Etro claim that their encoder is x264, I presume that this makes no difference.]

I gather from what you’ve writ that I could push from FME and pull from the encoder (once I get it to work), but that there is no way to use pull from a webcam. That is mostly a shame because I was hoping it would help me debug the IP camera setup, but definitely makes sense.

Thanks for your help.

  • scurries off to read the stickies you refer to. Will yet become a large client :slight_smile: *