A 201 Error... Need fast fix...

Guys we are having a huge issue that is getting a lot of negative feedbacks from our viewers…

We are getting a

201, Unable to load stream or clip file, connection failed, clip: '[Clip] 'mp4:replay-sunday-night.mp4"

And for some reason, we are getting this on random machines from our viewers…

On My computer i can watch it, in multiple browsers, and tried this on multiple computers, but we are getting a lot of emails from our viewers that they are getting this error… Any ideas?

We need this up and running in a very short time… Get over 2,200 hits daily, and cannot have a second of downtime… Here is the link…

http://slaviccenter.com/live_recordings/index-replay-sunday-night.htm

Thanks… Ill try and answer as soon as possible…

Here is my XML as well for church VOD

<Root>
	<Application>
		<!-- Uncomment to set application level timeout values
		<ApplicationTimeout>60000</ApplicationTimeout>
		<PingTimeout>12000</PingTimeout>
		<ValidationFrequency>8000</ValidationFrequency>
		<MaximumPendingWriteBytes>0</MaximumPendingWriteBytes>
		<MaximumSetBufferTime>60000</MaximumSetBufferTime>
		<MaximumStorageDirDepth>25</MaximumStorageDirDepth>
		-->
		<Connections>
			<AutoAccept>true</AutoAccept>
			<AllowDomains></AllowDomains>
		</Connections>
		<!--
			StorageDir path variables
			
			${com.wowza.wms.AppHome} - Application home directory
			${com.wowza.wms.ConfigHome} - Configuration home directory
			${com.wowza.wms.context.VHost} - Virtual host name
			${com.wowza.wms.context.VHostConfigHome} - Virtual host config directory
			${com.wowza.wms.context.Application} - Application name
			${com.wowza.wms.context.ApplicationInstance} - Application instance name
			
		-->
		<Streams>
			<StreamType>default</StreamType>
			<StorageDir>${com.wowza.wms.context.VHostConfigHome}/content/church-live</StorageDir>
			<KeyDir>${com.wowza.wms.context.VHostConfigHome}/keys</KeyDir>
			<!-- LiveStreamPacketizers (separate with commas): cupertinostreamingpacketizer, smoothstreamingpacketizer, cupertinostreamingrepeater, smoothstreamingrepeater -->
			<LiveStreamPacketizers></LiveStreamPacketizers>			
			<!-- Properties defined here will override any properties defined in conf/Streams.xml for any streams types loaded by this application -->
			<Properties>
			</Properties>
		</Streams>
		<!-- HTTPStreamers (separate with commas): cupertinostreaming, smoothstreaming -->
		<HTTPStreamers>cupertinostreaming,smoothstreaming</HTTPStreamers>			
		<SharedObjects>
			<StorageDir></StorageDir>
		</SharedObjects>
		<Client>
			<IdleFrequency>-1</IdleFrequency>
			<Access>
				<StreamReadAccess>*</StreamReadAccess>
				<StreamWriteAccess>*</StreamWriteAccess>
				<StreamAudioSampleAccess></StreamAudioSampleAccess>
				<StreamVideoSampleAccess></StreamVideoSampleAccess>
				<SharedObjectReadAccess>*</SharedObjectReadAccess>
				<SharedObjectWriteAccess>*</SharedObjectWriteAccess>
			</Access>
		</Client>
		<RTP>
			<!-- RTP/Authentication/[type]Methods defined in Authentication.xml. Default setup includes; none, basic, digest -->
			<Authentication>
				<PublishMethod>digest</PublishMethod>
				<PlayMethod>digest</PlayMethod>
			</Authentication>
			<!-- RTP/AVSyncMethod. Valid values are: senderreport, systemclock, rtptimecode -->
			<AVSyncMethod>senderreport</AVSyncMethod>
			<MaxRTCPWaitTime>12000</MaxRTCPWaitTime>
			<IdleFrequency>25</IdleFrequency>
			<RTSPSessionTimeout>90000</RTSPSessionTimeout>
			<RTSPMaximumPendingWriteBytes>0</RTSPMaximumPendingWriteBytes>
			<RTSPBindIpAddress></RTSPBindIpAddress>
			<RTSPConnectionIpAddress>0.0.0.0</RTSPConnectionIpAddress>
			<RTSPOriginIpAddress>127.0.0.1</RTSPOriginIpAddress>
			<IncomingDatagramPortRanges>*</IncomingDatagramPortRanges>
			<!-- Properties defined here will override any properties defined in conf/RTP.xml for any depacketizers loaded by this application -->
			<Properties>
			</Properties>
		</RTP>
		<MediaCaster>
			<!-- Properties defined here will override any properties defined in conf/MediaCasters.xml for any MediaCasters loaded by this applications -->
			<Properties>
			</Properties>
		</MediaCaster>
		<MediaReader>
			<!-- Properties defined here will override any properties defined in conf/MediaReaders.xml for any MediaReaders loaded by this applications -->
			<Properties>
			</Properties>
		</MediaReader>
		<MediaWriter>
			<!-- Properties defined here will override any properties defined in conf/MediaWriter.xml for any MediaWriter loaded by this applications -->
			<Properties>
			</Properties>
		</MediaWriter>
		<LiveStreamPacketizer>
			<!-- Properties defined here will override any properties defined in conf/LiveStreamPacketizers.xml for any LiveStreamPacketizers loaded by this applications -->
			<Properties>
			</Properties>
		</LiveStreamPacketizer>
		<HTTPStreamer>
			<!-- Properties defined here will override any properties defined in conf/HTTPStreamers.xml for any HTTPStreamer loaded by this applications -->
			<Properties>
			</Properties>
		</HTTPStreamer>
		<Repeater>
			<OriginURL></OriginURL>
			<QueryString><![CDATA[]]></QueryString>
		</Repeater> 
		<Modules>
			<Module>
				<Name>base</Name>
				<Description>Base</Description>
				<Class>com.wowza.wms.module.ModuleCore</Class>
			</Module>
			<Module>
				<Name>properties</Name>
				<Description>Properties</Description>
				<Class>com.wowza.wms.module.ModuleProperties</Class>
			</Module>
			<Module>
				<Name>logging</Name>
				<Description>Client Logging</Description>
				<Class>com.wowza.wms.module.ModuleClientLogging</Class>
			</Module>
			<Module>
				<Name>flvplayback</Name>
				<Description>FLVPlayback</Description>
				<Class>com.wowza.wms.module.ModuleFLVPlayback</Class>
			</Module> 
<Module>
	<Name>ModuleGetConnectionCount</Name>
	<Description>ModuleGetConnectionCount</Description>
	<Class>com.wowza.wms.plugin.collection.module.ModuleGetConnectionCount</Class>
</Module>
		</Modules>
		<!-- Properties defined here will be added to the IApplication.getProperties() and IApplicationInstance.getProperties() collections -->
		<Properties>
<Property>
	<Name>smoothStreamingMediaMajorVersion</Name>
	<Value>2</Value>
	<Type>Integer</Type>
</Property>
		</Properties>
	</Application>
</Root>

This is a problem with the connection. It is probably not really random.

Are they corporate users? They may be having a problem with rtmp. You can try using rtmpt. You should enable port 80. Change /conf/VHost.xml /HostPort /Port “1935” to “1935,80”, then restart Wowza. Then try:

rtmpt://[wowza-address]/[appName]

If you cannot enable port 80, you can use 443, or any port really, even 1935, but if it is anything other than 80 you have add that port:

443 is the best choice actually. Change /conf/VHost.xml /HostPort /Port “1935” to “1935,443” or “1935,80,443”

Then use:

rtmpt://[wowza-address]:443/[appName]

This will also use rtmpt, but it is not the best option to overcome this problem:

rtmpt://[wowza-address]:1935/[appName]

You can use a protocol rollover scheme so that clients that can will connect with rtmp and others will try rtmpt:

http://community.wowza.com/t/-/37

If you can, it would be a good idea to test this with a user that is having this problem. You can setup a player that uses rtmpt.

And Jake Hilton is hosting a port tester here:

http://www.jakehilton.com/?q=node/43

Richard

Looks like you still need to enable 80 and/or 443.

The lines “RTMP Port 1935 Rejected” and “RTMP Default Rejected” show the problem. But the test doesn’t show if you can fix it yet. You need to enable ports 80 and/or 443 then try the test again.

If you enable ports 80 and 443 and rtmp on 80 and 443 work, then you can use that instead of 1935, and not rollover to rtmpt, which has added overhead, maybe 25%.

Then you could just switch to one of these for everyone:

rtmp://[wowza-address]:80/[appName]

or

rtmp://[wowza-address]:443/[appName]

Richard

Hi Richard,

Thanks, I looked at our URL in flowplayer and it appears we are hitting port 80 just as you said, and i just added the :1935 and i think that will fix the problem… judging by the test reults from the provided url i get

RTMPT (Tunneling) Port 443 Failed 5s

RTMPT (Tunneling) Port 80 > timed out

RTMPT (Tunneling) Default > timed out

RTMP Port 443 Failed 20s

RTMP Port 80 Failed 14.1s

RTMP Port 1935 Rejected 0.2s

RTMP Default Rejected 0.1s

Test Completed

So RTMP port 80 failed, and its what users are hitting, but 1935 Rejected, (No idea what that means) but seems to me its wht it was… Just as i suspeted after i was in a panic to get the issue resolved… Im still waiting confirm from one of the viewers that is having the issue… Thanks Richard…

Thanks Richard for your help. I contacted the viewer and he confirmd thats what the problem was…

I can how ever enable 443 for SSL for corp networks, but 80 is taken by our CCTV, therefore we cannot use 80… But i can deifenitly enable 443…