https://www.wowza.com/docs/how-to-troubleshoot-rtsp-rtp-playback
I’ve try to play an ondemand file with a blackberry bold 9700 without success.
Do you think it’s possible to play a live stream with blackberry?
Like with iphone : http://[wowzaipaddress]/live/stream/playlist.m3u8
If it’s possible which file do i use ?
Best Regards,
Thanks, I added it to the list of supported devices:
https://www.wowza.com/docs/media-players-and-devices)
Charlie
For rtsp out with default port (554) you need to do two things:
-
Change Application.xml /RTP /Authentication /PlayMethod from “digest” to “none”
-
Change /conf/VHost.xml /HostPort /Port “1935” to “1935, 554”
Restart Wowza after #2 and check startup lines in access log to see if Wowza successful in binding to port 554
Richard
Have you opened all UDP ports, and reviewed the Mobile Trouble Shooting Guide?:
And have you tried the mobile example on this device (step 5 in the guide above)?
Richard
Backing up a bit:
rtsp://[wowzaipaddress]/live/stream/
Doesn’t works
rtsp://[wowzaipaddress]/live/stream
Doesn’t works
Can you confirm, both “doesn’t work”, or does one of them work?
Richard
That server has all UDP ports open. And it has port 554 enabled in /conf/VHost.xml /HostPort /Port “1935,554”
This is the Application.xml
<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</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>
<Property>
<Name>enableDynamicStreamMarkers</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
</Properties>
</Streams>
<!-- HTTPStreamers (separate with commas): cupertinostreaming, smoothstreaming -->
<HTTPStreamers>sanjosestreaming,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>none</PublishMethod>
<PlayMethod>none</PlayMethod>
</Authentication>
<!-- RTP/AVSyncMethod. Valid values are: senderreport, systemclock, rtptimecode -->
<AVSyncMethod>senderreport</AVSyncMethod>
<MaxRTCPWaitTime>12000</MaxRTCPWaitTime>
<RTSPSessionTimeout>90000</RTSPSessionTimeout>
<RTSPMaximumPendingWriteBytes>0</RTSPMaximumPendingWriteBytes>
<RTSPBindIpAddress>10.249.35.81</RTSPBindIpAddress>
<RTSPConnectionIpAddress>184.72.239.149</RTSPConnectionIpAddress>
<RTSPOriginIpAddress>184.72.239.149</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>
<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>
<Property>
<Name>smoothStreamingUseSMILBitrates</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
</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>
</Modules>
<!-- Properties defined here will be added to the IApplication.getProperties() and IApplicationInstance.getProperties() collections -->
<Properties>
</Properties>
</Application>
</Root>
Richard
Check the startup lines in the access log to see if Wowza was able to bind to 554…
At this stage is best to run Wowza in stand alone mode so you can see log output in the console in real-time. So stop the service and run Wowza in the console
cd /usr/local/WowzaMediaServer/bin
./startup.sh
Assuming 554 is binding, when you try to play on the blackberry, look for a log pattern like this:
INFO server comment - RTPUDPTransport.bind[vod/_definst_]: /[wowza-ip]:6970
INFO server comment - RTPUDPTransport.bind[vod/_definst_]: /[wowza-ip]:6971
INFO server comment - RTPUDPTransport.bind[vod/_definst_]: /[wowza-ip]:6972
INFO server comment - RTPUDPTransport.bind[vod/_definst_]: /[wowza-ip]:6973
INFO rtsp play 792644984 -
INFO server comment - RTPUDPTransport.unbind[vod/_definst_]: /[wowza-ip]:6970
INFO server comment - RTPUDPTransport.unbind[vod/_definst_]: /[wowza-ip]:6971
INFO server comment - RTPUDPTransport.unbind[vod/_definst_]: /[wowza-ip]:6972
INFO server comment - RTPUDPTransport.unbind[vod/_definst_]: /[wowza-ip]:6973
This pattern of 4 RTPUDPTransport.bind lines followed immediately by 4 RTPUDPTransport.unbind indicates that UPD ports are not open. Then you need to find out how to do that on your system, IPTables probably. Or maybe UDP is blocked in a router.
Richard
For live streaming, you have to change the /conf/blackberry/Application.xml /StreamType to “live”
And you have to publish a stream named “blackberry” in this case to an application named “blackberry”. If you are using FMLE:
FMS URL: rtmp://[wowza-address]:1935/blackberry
Stream Name: Blackberry
Make sure format is “H.264”
Richard
MP3 might be a problem with Blackberry. I would try use AAC if possible.
The sanjose error might mean you are using a certain version of Wowza that went out with that value in the Application.xml but did not have support.
I think you should apply the latest patch, Patch 5 to benefit from rtsp enhancements, and it will take care of that error. NOTE the 3 files in the Wowza /lib folder that must be deleted when you apply this patch:
https://www.wowza.com/downloads/WowzaMediaServer-2-1-2/WowzaMediaServer2.1.2-patch5.zip
Carefully ready the IMPORTANT!!! notice in the README.txt file of the patch. Several core components have been upgraded:
IMPORTANT!!!
Several core components have been updraded to newer versions. Before
applying this patch, delete the following files from your Wowza Media Server
installation:
[install-dir]/lib/bcprov-ext-jdk15-143.jar
[install-dir]/lib/commons-lang-2.4.jar
[install-dir]/lib/log4j-1.2.15.jar
And for RTSP streaming you should take a look at this Article:
https://www.wowza.com/docs/how-to-set-up-an-application-for-rtsp-rtp-streaming
Richard
You’ll need to use RTSP instead of http, and drop the playlist.m3u8 off the end.
rtsp://[wowzaipaddress]/live/stream/
Doesn’t works
rtsp://[wowzaipaddress]/live/stream
Doesn’t works
Change Application.xml /RTP /Authentication /PlayMethod from “digest” to “none”
Change /conf/VHost.xml /HostPort /Port “1935” to “1935, 554”
Already done!
I have checked every post about blackberry before submit my reply
Have you opened all UDP ports, and reviewed the Mobile Trouble Shooting Guide?:
And have you tried the mobile example on this device (step 5 in the guide above)?
Richard
I’ve tried the mobile example on my device with succes both http:// and rtsp://
Do you have the application.xml for this example ?
I can try it on my server with the ondemand file.
Backing up a bit:
Can you confirm, both “doesn’t work”, or does one of them work?
Richard
Yes both doesn’t work. But it’s live stream. On mobile.html it’s on demand file.
With a fresh new install.
Wowza Media Server 2 Developer 2.1.2 build24878
I type this on wowza folder :
mkdir application/blackberry
mkdir conf/blackberry
vi conf/blackberry/Application.xml
I paste you Application.xml and i save it
vi conf/VHost.xml
and i edit port number : 1935,554 and i save it
/etc/init.d/WowzaMediaServer restart
I configure my FlashMediaEncoder to :
FMS URL : rtmp://{wowzaip}/blackberry
Stream : blackberry
On my blackberry bold i type : rtsp://{wowzaip}/blackberry/blackberry
And i’ve got the same result… like the last picture can’t connect.
INFO rtsp connect 1324341613 -
INFO stream create - -
WARN server comment blackberry MediaReaderH264.open[1]: java.io.FileNotFoundException: /usr/local/WowzaMediaServer/content/blackberry (No such file or directory)
INFO rtsp describe 1324341613 -
For iptables i flush all rules before lauching wowza
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
iptables -X
iptables -N LOG_DROP
iptables -A LOG_DROP -j LOG --log-level info --log-prefix '[IPTABLES DROP] : '
iptables -A LOG_DROP -j DROP
So this application.xml work for “on demand” file? But it’s not possible to create a live stream and play on blackberry bold ?
Video
Format : H.264
Frame Rate: 24.00
Audio
Format : MP3
Channels : Mono
Sample Rate : 44100 Hz
Bit Rate : 56 Kbps
On your Application.xml it was default i change by live :
When i launch WowzaDir/bin/.startup
WARN server comment - ApplicationInstance.setHTTPStreamerList[blackberry/definst]: HTTPStreamer is not valid: sanjosestreaming
Successfully tested the live streaming for Blackberry Torch 9800.
The encoder is Adobe Flash Media Live Encoder 3.2 with the MainConcept AAC plug-in installed (v. 1.0.6).
Video:
Format: H.254
Profile: Baseline
Level: 3.1
Keyframe frequency: 4 sec
Frame rate: 15 fps
Size: 240x180
Bit rate: 200 kbps
Audio:
Format: AAC
Channels: Mono
Sample rate: 22050 Hz
Bit rate: 48 Kbps
Wowza Media Server 2 Perpetual 2.2.3 build26454
Successfully tested the live streaming with above settings for Blackberry 9700, Apple iPad, iPod Touch, and iPhone.
Successfully tested live streaming via RTSP through port 554 to Samsung Galaxy Captivate