Fundamental: publishing UDP stream to Wowza server

I am having a hell of a time getting this UDP stream to get ingested. If I publish as rtmp, it works fine, but a udp URI just doesn’t work

  1. I create the stream:
ffmpeg -re -i "myclip.mp4" -c:v copy -c:a copy -vcodec h264 -f mpegts udp:wowza-server-address:10000
  1. I turn on the stream file, which contains:
udp://0.0.0.0:10000
  1. I wait for something to happen…

Somehow, my stream isn’t hitting the .stream file, which claims to be “active” but I can tell from monitoring that nothing is coming in.

Any ideas?

-Mike

Hi Mike,

You do not mention starting the .stream file. You can use StreamManager or the Wowza Manager to start a stream, or add it to StartUpStreams and re-start Wowza to start pulling the stream.

You will use MediaCaster type “rtp” to start these streams by one of the methods above. When you do that you will see a publish event in the logs, and info about the connection and stream, or problems connecting to the stream.

Richard

You are using the RTMP port. You want to use a port like 10000 as shown in this article. Make sure the UDP port you use is open.

Richard

Hi,

You may need to specify the actual IP address in the stream file for the EC2 server, instead of 0.0.0.0

I would try both internal and external IPs as well. And of course ensure that port 10000 is open

in your EC2 security settings.

You can also post results of the log section you referred to, to help troubleshoot.

Daren

You do not mention starting the .stream file. You can use StreamManager or the Wowza Manager to start a stream, or add it to StartUpStreams and re-start Wowza to start pulling the stream.

Ah sorry, that’s what I meant by “turn on the stream.” Yes the stream is started and shown as “Active” in the Incoming Streams list, but no network traffic in (although I can see my stream pushing at it from my end).

Using AWS EC2 instance of Wowza.

-Mike

The logs show the stream is published, and every 30 seconds unbinds and rebinds it (dont know if this is normal).

However, no signal that the data is getting to wowza at all.

Thanks!

  1. I’ve tried inputting by source IP address also, to no avail.

  2. I checked the port externally with network tool, appears to be open. Also, I can use the same port successfully with rtmp come to think of it.

  3. From error log, at startup (I changed the port to 1935):

ERROR	server	comment	2014-06-13	05:19:26	-	-	-	2.431	-	-	-	-	-	-	-	-	HTTPUtils.HTTPRequestToByteArray : java.io.FileNotFoundException: http://169.254.169.254/latest/meta-data/product-codes
  1. From access log (repeats every 30 seconds):
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	MediaCasterStreamValidator.onValidateMediaCaster[[ApplicationName]/_definst_] Stream not healthy [stream startup timeout]: mp4:[StreamName].stream	-	-	-	38185.081	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	MediaCasterStreamValidator.onValidateMediaCastersStop[[ApplicationName]/_definst_] Reset stream [mediaCaster]: mp4:[StreamName].stream	-	-	-	38185.082	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPMediaCaster.resetConnection[875565014:[ApplicationName]/_definst_:[StreamName].stream]: 	-	-	38185.082	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPMediaCaster.closeRTPSession[875565014:[ApplicationName]/_definst_:[StreamName].stream]	-	-	-	38185.082	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPUDPTransport.unbind[[ApplicationName]/_definst_]: /0.0.0.0:1935 sent:0 recv:0	-	-	-	38185.084	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	unpublish	stream	INFO	200	[StreamName].stream	-	_defaultVHost_	[ApplicationName]	_definst_	20.424	-	80	null127.0.0.1	rtsp	-	known	567813740	0	0	1783	0	0	0	[StreamName].stream	-	-	-	-	-	null	null	-	null	-
2014-06-13	15:55:49	UTC	destroy	stream	INFO	200	[StreamName].stream	-	_defaultVHost_	[ApplicationName]	_definst_	20.425	-	80	null	127.0.0.1	rtsp	-	known	567813740	0	0	1783	0	0	0	[StreamName].stream	-	-	-	-	-	null	null	-	null-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPMediaCaster.Reconnector[875565014:[ApplicationName]/_definst_:[StreamName].stream]: start: 1784	-	38185.086	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPSessionDescriptionDataProviderBasic.getStreamInfo[[ApplicationName]/_definst_]: URI: udp://0.0.0.0:19338185.187	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	create	stream	INFO	200	-	-	_defaultVHost_	[ApplicationName]	_definst_	0.0	-	80	null	127.0.0.1	rtsp	-	known	77100182	0	0	1784	0	0	0	[StreamName].stream	-	-	-	-	-	null	null	-	null	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPDePacketizerMPEGTS.init: Drop incomplete video frames	_defaultVHost_	[ApplicationName]	_definst_	38185.189	-	80	null	127.0.0.1	rtsp	-	known	77100182	0	0	-	-	-	-	-	-	-	-	null	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPUDPTransport.bind[[ApplicationName]/_definst_]: /0.0.0.0:1935	_defaultVHost_	[ApplicationName]	_definst_	38185.192	-	80	null	127.0.0.1	rtsp	-	known	77100182	0	0	-	-	-	-	-	-	-	-	null	-
2014-06-13	15:55:49	UTC	publish	stream	INFO	200	[StreamName].stream	-	_defaultVHost_	[ApplicationName]	_definst_	0.004	-	80	null	127.0.0.1	rtsp	-	known	77100182	0	0	1784	0	0	0	[StreamName].stream	-	-	-	-	-	null	null	-	null-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	RTPMediaCaster.Reconnector[875565014:[ApplicationName]/_definst_:[StreamName].stream]: done: 1784	-	-	38185.193	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2014-06-13	15:55:49	UTC	comment	server	INFO	200	-	MediaCasterStreamValidator.getMonitor[[ApplicationName]/_definst_] create:[StreamName].stream	-	-	38185.587

  1. Also, here is the ffmpeg command I’m using to do the test stream (works when I do rtmp):
ffmpeg -re -i "testFileName.mp4" -vcodec libx264 -tune zerolatency -b 900k -f mpegts udp:[WOWZASERVERIP]:1935

Stream seems to not be binding to the port. Any ideas?