Results 1 to 6 of 6

Thread: iPhone/iOS Audio Only Stream

  1. #1

    Default iPhone/iOS Audio Only Stream

    Hi there.

    We're streaming from FMLE to Wowza with only an audio stream, the video is not selected. The problem is that the iPhone URL for the stream does not play.

    I have it set up so that it plays an audio-only stream to iPhone just fine, but only if there is both audio and video in the original stream.

    Does anyone have ideas about why this might not work?

    Here is the related Application.xml options in the edge audio-only server:

    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>cupertinoMaxCalulatedVideoBitrate</Name>
    	<Value>0</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>cupertinoDefaultAudioBitrate</Name>
    	<Value>64000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>cupertinoMaxCalulatedAudioBitrate</Name>
    	<Value>64000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>cupertinoBitrateAdjustmentFactor</Name>
    	<Value>110</Value>
    	<Type>Integer</Type>
    </Property>
    And here is the Application.xml options for it in the origin server:

    Code:
    <Property>
    	<Name>cupertinoCreateAudioOnlyRendition</Name>
    	<Value>true</Value>
    	<Type>Boolean</Type>
    </Property>
    <Property>
    	<Name>cupertinoChunkDurationTarget</Name>
    	<Value>10000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>cupertinoMaxChunkCount</Name>
    	<Value>10</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>cupertinoPlaylistChunkCount</Name>
    	<Value>3</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>cupertinoRepeaterChunkCount</Name>
    	<Value>3</Value>
    	<Type>Integer</Type>
    </Property>
    And the URL we're connecting to looks like this:
    http://example.com:1935/audio/stream...wowzaaudioonly

    I ran the Apple mediastreamvalidator on it, and got this result:
    Code:
    ~: mediastreamvalidator validate http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzaaudioonly
    Validating http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzaaudioonly against iOS 5.0
    Validating child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=2008946879&wowzaaudioonly [250.00 kbit/s]
    mediastreamvalidator: ERROR: Cannot open 'http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=2008946879&wowzaaudioonly': HTTP Error 404: Not Found.
    
    WARNING: The playlist should use relative URIs to reduce its size.
    
    ---------------------------------------------------------------------------------------------------------------------------------
    REPORT FOR CHILD PLAYLIST 'http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=2008946879&wowzaaudioonly'
    ---------------------------------------------------------------------------------------------------------------------------------
    
    No segment information available.
    However, reconnecting and streaming both audio and video gives me this result:

    Code:
    ~: mediastreamvalidator validate http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzaaudioonly
    Validating http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzaaudioonly against iOS 5.0
    Validating child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly [335.10 kbit/s]
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    Child playlist http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly is a live stream
    
    ERROR: Invalid media segment: The validator helper exited due to a fatal error: failed to create format reader: [errno: -12847] format reader file not recognized.
    10:    media_21.aac?wowzasessionid=1944736096&wowzaaudioonly
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    WARNING: The playlist should use relative URIs to reduce its size.
    
    ---------------------------------------------------------------------------------------------------------------------------------
    REPORT FOR CHILD PLAYLIST 'http://example.com:1935/audio/stream-un1qu3/playlist.m3u8?wowzasessionid=1944736096&wowzaaudioonly'
    ---------------------------------------------------------------------------------------------------------------------------------
    
    ERROR: Invalid media segment: The validator helper exited due to a fatal error: failed to create format reader: [errno: -12847] format reader file not recognized.
    10:    media_21.aac?wowzasessionid=1944736096&wowzaaudioonly
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    ERROR: Invalid media segment: The validator helper exited due to a fatal error: failed to create format reader: [errno: -12847] format reader file not recognized.
    10:    media_21.aac?wowzasessionid=1944736096&wowzaaudioonly
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    Average segment duration: 7.33 seconds
    Playlist target bitrate: 335.10 kbit/s
    Average segment bitrate: 44.75 kbit/s (-648.78 % of target)
    
    Audio codec: aac 
    Audio sample rate: 22050, 44100 Hz
    Any ideas or help is appreciated.
    Last edited by Moresheth; 08-25-2011 at 12:58 PM.

  2. #2
    Join Date
    Dec 2007
    Posts
    27,866

    Default

    You should be able to playback an .mp4 file that has AAC or MP3 audio track only.

    You can play an MP3 file in iOS.
    Code:
    http://[wowa-address]:1935/vod/mp3:mySong.mp3/playlist.m3u89
    MP3 encoded as stereo at 44100Hz has been key in my experience. AAC is preferable.

    Richard

  3. #3

    Default

    Thank you for your reply, but I was talking about a live stream. The mp4 files playback ok, it's just the incoming livestream from FMLE that doesn't work.

  4. #4
    Join Date
    Dec 2007
    Posts
    27,866

    Default

    Same thing tho. If it is mp3, make it Stereo 44100Hz

    Richard

  5. #5

    Default

    I tried changing the settings, but it didn't seem to affect it. I noticed in other forum posts that the requirements were to use "H.264 and AAC or MP3". But we cannot use H.264 without a video stream. Is Wowza returning a 404 error for Cupertino streams that don't have H.264 video?

    Changing no settings other than removing the video from the stream in FMLE causes the server to return a 404 error for a stream.

  6. #6

    Default

    You don't need to do the whole wowzaaudioonly thing. In fact, that will cause problems if you don't have a video channel. Turn off that whole system. Set the following LiveStreamPacketizer/Properties in conf/[application]/Application.xml (or just remove it):

    Code:
    <Property>
    	<Name>cupertinoCreateAudioOnlyRendition</Name>
    	<Value>true</Value>
    	<Type>Boolean</Type>
    </Property>
    Undo any other settings you made based on this article:

    http://www.wowza.com/forums/content....ppStore-64Kbps)

    Then just play the stream with no extra query parameters. It should just work.

    Charlie

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •