AC3 PassThru

I have been trying to implement the new AC3 HLS PassThru mentioned in the 3.5 documentation. I am ingesting an MPEG2 TS stream with AC3 audio via Wowza Transcoder and transcoding the video to H264 and I want to pass the audio through via PassThru on to the HLS packetizer.

So far I get the error:

WARN server comment 2012-11-19 13:53:36 - - - - - 4.282 - - - - - - - - TranscodingSession.handlePacket[live/definst]: Audio codec is not supported by transcoder. Can only be used as PassThru: AC3

I have the Audio Codec set to PassThru in my transcoder template. Any idea where this is going wrong?

This patch should address the issue:

WowzaMediaServer3.5.0-patch1.zip

Charlie

AC3 support in Wowza is very limited, and there is not really any practical support on the client-side.

AC3 decode is not supported at all in the Wowza Transcoder. What is supported is that Wowza will packetize AC3 audio if it is present and the audio encode is set to “PassThru”. The resultant stream is theoretically playable on iOS devices and Apple TV. In iOS device you will need a custom application that is beyond the scope of Wowza support, and for Apple TV there is not really a way to send the stream to Apple TV, so it is not practically supported.

Richard

It is my understanding that it is not useful unless there is a custom iOS player, but open a ticket on this by writing to support@wowza.com for at least more clarification. Include a link to this thread for reference.

Richard

Thanks that seems to have eliminated the initial error. Now the server seems to be having trouble adding the stream group for adaptive HLS. It looks like AC3 is still the culprit. Is there anything in my configuration I should check? Logs below…

WARN server comment 2012-11-20 09:55:00 - - - - - 7.302 - - - - - - - - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[720p] audio codec is not valid for name group: AC3 (ac-3)

WARN server comment 2012-11-20 09:55:00 - - - - - 7.302 - - - - - - - - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[360p] audio codec is not valid for name group: AC3 (ac-3)

WARN server comment 2012-11-20 09:55:00 - - - - - 7.303 - - - - - - - - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[240p] audio codec is not valid for name group: AC3 (ac-3)

WARN server comment 2012-11-20 09:55:00 - - - - - 7.303 - - - - - - - - TranscoderStreamNameGroup.addInternal[defaultVHost:live/definst/mpegts.stream]: Name group was not added, it is empty: mpegts.stream_all

The stream still does not play. I have included more of the logs below. It looks like the server cannot add AC3 streams to an adaptive HLS stream group. Any advice on how to fix this?

2012-11-21 08:20:04 PST encoder-video-start transcoder INFO 200 mpegts.stream {name:“360p”, bitrate:1150000, codec:H264, profile:Main, level:3.1, frameSize:640x360, displaySize:640x360, frameRate:59.94} - – 4.803 - - - - - - - - - – - - - - - - - - - - – - -

2012-11-21 08:20:04 PST encoder-video-start transcoder INFO 200 mpegts.stream {name:“720p”, bitrate:36500000, codec:H264, profile:Main, level:4.1, frameSize:1280x720, displaySize:1280x720, frameRate:59.94} - – 4.808 - - - - - - - - - – - - - - - - - - - - – - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_720p]: chunkDurationTarget: 10000 - - - 5.247 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_240p]: chunkDurationTarget: 10000 - - - 5.247 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_720p]: chunkDurationTolerance: 500 - - - 5.247 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_360p]: chunkDurationTarget: 10000 - - - 5.247 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_720p]: audioGroupCount: 3 - - - 5.249 - - - - - - – - - - - - - - - - - – - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_240p]: chunkDurationTolerance: 500 - - - 5.249 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_720p]: playlistChunkCount:3 - - - 5.25 - - - - - - – - - - - - - - - - - – - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_360p]: chunkDurationTolerance: 500 - - - 5.25 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: cupertinostreamingpacketizer:mpegts.stream_720p - - - 5.25 - - – - - - - - - - - - - – - - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_240p]: audioGroupCount: 3 - - - 5.25 - - - - - - – - - - - - - - - - - – - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - CupertinoPacketHandler.startStream[live/definst/mpegts.stream_720p] - - -5.251 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_360p]: audioGroupCount: 3 - - - 5.251 - - - - - - – - - - - - - - - - - – - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_720p]: Video codec:H264 isCompatible:true - - - 5.251 - - - – - - - - - - - - - - – - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_240p]: playlistChunkCount:3 - - - 5.251 - - - - - - – - - - - - - - - - - – - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_720p]: Audio codec:AC3 isCompatible:true - - - 5.251 - - - – - - - - - - - - - - – - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.init[live/definst/mpegts.stream_360p]: playlistChunkCount:3 - - - 5.251 - - - - - - – - - - - - - - - - - – - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_720p][ac-3]: AC3 Audio info: {AC3Frame: codec:AC3, channels:8, frequency:48000, samplesPerFrame:1536, size:1536} - - - 5.252 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: cupertinostreamingpacketizer:mpegts.stream_240p - - - 5.252 - - – - - - - - - - - - - – - - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: cupertinostreamingpacketizer:mpegts.stream_360p - - - 5.252 - - – - - - - - - - - - - – - - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - CupertinoPacketHandler.startStream[live/definst/mpegts.stream_240p] - - -5.252 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:04 PST comment server INFO 200 - CupertinoPacketHandler.startStream[live/definst/mpegts.stream_360p] - - -5.252 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_240p]: Video codec:H264 isCompatible:true - - - 5.253 - - - – - - - - - - - - - - – - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_360p]: Video codec:H264 isCompatible:true - - - 5.253 - - - – - - - - - - - - - - – - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_240p]: Audio codec:AC3 isCompatible:true - - - 5.253 - - - – - - - - - - - - - - – - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_360p]: Audio codec:AC3 isCompatible:true - - - 5.253 - - - – - - - - - - - - - - – - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_240p][ac-3]: AC3 Audio info: {AC3Frame: codec:AC3, channels:8, frequency:48000, samplesPerFrame:1536, size:1536} - - - 5.253 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_360p][ac-3]: AC3 Audio info: {AC3Frame: codec:AC3, channels:8, frequency:48000, samplesPerFrame:1536, size:1536} - - - 5.253 - - - - - – - - - - - - - - - - – - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_240p][avc1.66.30]: H.264 Video info: {H264CodecConfigInfo: codec:H264, profile:Baseline, level:3.0, frameSize:426x240, displaySize:426x240, frameRate:59.94, crop: l:0 r:3 t:0 b:0}-- - 5.477 - - - - - - - - – - - - - - - - - - - – - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_360p][avc1.77.31]: H.264 (Video may not be playable on older iPhone and iPod touch devices where Baseline/Level 3.0 or lower is required) Video info: {H264CodecConfigInfo: codec:H264, profile:Main, level:3.1, frameSize:640x360, displaySize:640x360, frameRate:59.94, crop: l:0 r:0 t:0 b:4} - - - 5.479 - - - – - - - - - - - - - - – - - - - - - - -

2012-11-21 08:20:04 PST comment server INFO 200 - LiveStreamPacketizerCupertino.handlePacket[live/definst/mpegts.stream_720p][avc1.77.41]: H.264 (Video may not be playable on older iPhone and iPod touch devices where Baseline/Level 3.0 or lower is required) Video info: {H264CodecConfigInfo: codec:H264, profile:Main, level:4.1, frameSize:1280x720, displaySize:1280x720, frameRate:59.94} - - - 5.479 - - - - - - – - - - - - - - - - - – - - - - -

2012-11-21 08:20:06 PST comment server WARN 200 - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[720p] audio codec is not valid for name group: AC3 (ac-3) - – 7.508 - - - - - - - - - – - - - - - - - - - - – - -

2012-11-21 08:20:06 PST comment server WARN 200 - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[360p] audio codec is not valid for name group: AC3 (ac-3) - – 7.509 - - - - - - - - - – - - - - - - - - - - – - -

2012-11-21 08:20:06 PST comment server WARN 200 - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[240p] audio codec is not valid for name group: AC3 (ac-3) - – 7.509 - - - - - - - - - – - - - - - - - - - - – - -

2012-11-21 08:20:06 PST comment server WARN 200 - TranscoderStreamNameGroup.addInternal[defaultVHost:live/definst/mpegts.stream]: Name group was not added, it is empty: mpegts.stream_all - - - 7.509 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:06 PST comment server WARN 200 - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[240p] audio codec is not valid for name group: AC3 (ac-3) - – 7.51 - - - - - - - - - – - - - - - - - - - - – - -

2012-11-21 08:20:06 PST comment server WARN 200 - TranscoderStreamNameGroup.addInternal[defaultVHost:live/definst/mpegts.stream]: Name group was not added, it is empty: mpegts.stream_mobile - - - 7.51 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:09 PST comment server INFO 200 - LiveStreamPacketizerCupertino.endChunkTS[live/definst/mpegts.stream_720p]: Add chunk: id:1 mode:TS[H264,AC3] a/v/k:63/300/5 duration:6106 - - - 10.513 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:09 PST comment server INFO 200 - LiveStreamPacketizerCupertino.endChunkTS[live/definst/mpegts.stream_240p]: Add chunk: id:1 mode:TS[H264,AC3] a/v/k:63/300/5 duration:6106 - - - 10.513 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:09 PST comment server INFO 200 - LiveStreamPacketizerCupertino.endChunkTS[live/definst/mpegts.stream_360p]: Add chunk: id:1 mode:TS[H264,AC3] a/v/k:63/300/5 duration:6106 - - - 10.513 - - - - - - - - - - – - - - - - - - - - - – -

2012-11-21 08:20:13 PST comment server INFO 200 - LiveStreamPacketizerCupertino.endChunkTS[live/definst/mpegts.stream]: Add chunk: id:1 mode:TS[MPEG2,AC3] a/v/k:105/0/0 duration:10080 - - - 14.432 - - - - - - - - - - – - - - - - - - - - - – -

Is there any progress on this issue? Adaptive streaming with AC3 does not appear to work at this time. I am attempting to transcode Mpeg2TS with AC3 audio to multi-bitrate H264 with AC3 passthrough for HLS delivery but so far this does not seem to work in Wowza 3.5 even with the patch included above.

As I stated earlier in the thread, I am trying to take Mpeg2TS with AC3 audio into Wowza Transcoder with audio set to “PassThru”. I am then attempting to then deliver the transcoded streams with H264 and AC3 via HLS. In the release notes found here it lists “Added support for AC3 audio in Apple HLS.” Is the process for setting up a stream with AC3 over HLS different than other HLS streams? Charlie was able to provide a patch earlier which eliminated an initial problem we were encountering but it looks like the playlists for the HLS streams are not being generated for some reason. The streams are being ingested and transcoded but without playlist files the clients don’t know where to go. Our devices support AC3 decode so we should be able to play the streams if there were playlist files.

WARN 200 - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[720p] audio codec is not valid for name group: AC3 (ac-3) - – 7.508 - - - - - - - - - – - - - - - - - - - - – - -

WARN 200 - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[360p] audio codec is not valid for name group: AC3 (ac-3) - – 7.509 - - - - - - - - - – - - - - - - - - - - – - -

WARN 200 - TranscoderStreamNameGroup.validateMembers[defaultVHost:live/definst/mpegts.stream]: StreamNameGroup[240p] audio codec is not valid for name group: AC3 (ac-3) - – 7.509 - - - - - - - - - – - - - - - - - - - - – - -

WARN 200 - TranscoderStreamNameGroup.addInternal[defaultVHost:live/definst/mpegts.stream]: Name group was not added, it is empty: mpegts.stream_all - - - 7.509 - - - - - - - - - - – - - - - - - - - - - – -

Is Wowza capable of serving HLS streams with AC3 or not?

I have the same problem with mp4 ac3 coded. Wowza can not recognize ac3 codec. I can’t find any solution to repair this.