Configure live streaming application
Configure your application for live streaming using one of the following tutorials:
- How to set up live streaming using an RTMP-based encoder
- How to set up live streaming using an RTSP/RTP-based encoder
- How to set up live streaming using a native RTP encoder with SDP file
- How to publish and play a live stream (MPEG-TS based encoder)
- How to re-stream video from an IP camera (RTSP/RTP re-streaming)
Configure Application.xml
Open [install-dir]/conf/live/Application.xml in a text editor and make the following changes:
- (Live only) Add the following property to the LiveStreamPacketizer/Properties container:
Code:<Property> <Name>cupertinoCreateAudioOnlyRendition</Name> <Value>true</Value> <Type>Boolean</Type> </Property> - Add the following properties to the HTTPStreamer/Properties container:
Code:<Property> <Name>cupertinoAutoCreateMultibitratePlaylist</Name> <Value>true</Value> <Type>Boolean</Type> </Property> <Property> <Name>cupertinoUseCalculatedVideoBitrate</Name> <Value>true</Value> <Type>Boolean</Type> </Property> <Property> <Name>cupertinoUseCalculatedAudioBitrate</Name> <Value>true</Value> <Type>Boolean</Type> </Property> <Property> <Name>cupertinoDefaultVideoBitrate</Name> <Value>250000</Value> <Type>Integer</Type> </Property> <Property> <Name>cupertinoMaxCalculatedVideoBitrate</Name> <Value>0</Value> <Type>Integer</Type> </Property> <Property> <Name>cupertinoDefaultAudioBitrate</Name> <Value>64000</Value> <Type>Integer</Type> </Property> <Property> <Name>cupertinoMaxCalculatedAudioBitrate</Name> <Value>64000</Value> <Type>Integer</Type> </Property> <Property> <Name>cupertinoBitrateAdjustmentFactor</Name> <Value>110</Value> <Type>Integer</Type> </Property>
With this in place, Wowza Media Server will create/packetize an audio-only rendition of all incoming streams. This stream is available for use in any playlist. If you simply play any live or video on demand stream directly, Wowza Media Server will generate a multi-bitrate playlist with the two renditions. One rendition will include the audio and video and the other rendition will be audio-only. As long as the audio portion of the live or video on demand stream is 64 Kbps or less, the stream will conform to Apple AppStore 3G rules.
If you want to use Synchronized Multimedia Integration Language (SMIL) files to describe a multi-bitrate stream and use the audio from one of the live or video on demand streams as one of the playlist items, then you can add the <param name="audioOnly" value="TRUE" valuetype="data"/> statement to the <video> element in the SMIL file to select only the audio track. For example, if you have 2 live streams called hi-livestream and low-livestream and you want to create a 3 stream multi-bitrate playlist with the 3rd rendition being the audio from low-livestream, the SMIL file should look like this:
Code:
<smil>
<head>
</head>
<body>
<switch>
<video src="hi-livestream" system-bitrate="500000"/>
<video src="lo-livestream" system-bitrate="250000"/>
<video src="lo-livestream" system-bitrate="64000">
<param name="audioOnly" value="TRUE" valuetype="data"/>
</video>
</switch>
</body>
</smil>
Code:
http://[wowza-ip-address]:1935/[app-name]/[stream-name]/playlist.m3u8?wowzaaudioonly
Note: When using a live repeater (origin/edge) configuration with this setup, be sure to set the LiveStreamPacketizers value on the edge to cupertinostreamingrepeater and set the above properties on both the origin and edge.
Note: The behavior regarding bitrate-switching and audio-only streams has changed starting in iOS 6.x. It seems that switching between audio-only streams that are packetized as elementary audio streams and streams that are packetized as transport streams doesn't work as it did in the past. We have improved how this works starting in Wowza Media Server 3.5.0.01. To take advantage of the improved functionality add the following property to both the LiveStreamPacketizer/Properties and HTTPStreamer/Properties containers in [install-dir]/conf/[application]/Application.xml:
Code:
<Property>
<Name>cupertinoPacketizeAllStreamsAsTS</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>


Article List
Categories
Wowza Media