Wowza Community

Can't View HLS version of Transport Stream, but Renditions are Fine

I am ingesting an 8 Mbps MPEG2 Transport Stream (TS) from a multicast, which I am then transrating to several lower rate renditions. The payload on the incoming TS is H.264 video, 720p/59.94, High Profile at Level 4.0.

My goal is an adaptive HLS stream, to be played with the Enterprise JW Player.

The renditions are working fine across multiple platforms. However, I get mixed results with the original 8Mbps stream once wrapped for HLS. I actually see the same results whether it’s transrated, or if I’m just viewing the HLS version of the original stream.

The stream works fine in Chrome, and on iPad, but the original-bitrate stream shows as black on Safari and on Firefox on my Mac.

I think there may also be some problems on the Windows side, though IE, Firefox, and Chrome seem to work fine on Windows 10. Maybe IE on Win 7 is a problem?

I’m currently wondering if the problem might be with support for the High Profile Level 4.0, or perhaps issues with the Chunk Duration not lining up well with the original?

Here are the errors I’m seeing in the Apple Console when trying to view the stream in Safari.

2/16/18 4:59:05.324 PM com.apple.WebKit.WebContent[12889]: [16:59:05.324] vtDecompressionDuctDecodeSingleFrame signalled err=-8969 (err) (VTVideoDecoderDecodeFrame returned error) at /Library/Caches/com.apple.xbs/Sources/CoreMedia_frameworks/CoreMedia-1731.15.207/Sources/VideoToolbox/VTDecompressionSession.c line 3486

2/16/18 4:59:05.324 PM com.apple.WebKit.WebContent[12889]: [16:59:05.324] <<<< VMC >>>> vmc2DequeueAndDecodeFrame: frame failed - err -8969

2/16/18 4:59:05.325 PM com.apple.WebKit.WebContent[12889]: [16:59:05.325] <<<< VMC >>>> vmc2PostDecodeError: posting DecodeError (-8969) – PTS was 89.796 = 64653120/720000

2/16/18 4:59:05.325 PM VTDecoderXPCService[12892]: [16:59:05.325] H264_DecodeFrameAsynchronously signalled err=-8969 (err) (H264_DecodeFrameAsynchronously frame failed) at /Library/Caches/com.apple.xbs/Sources/CoreMedia_frameworks/CoreMedia-1731.15.207/Sources/VideoCodecs/H264/H264VideoDecoder.c line 2096

2/16/18 4:59:05.325 PM VTDecoderXPCService[12892]: [16:59:05.325] VTRemoteDecompressionServer_DecodeFrame signalled err=-8969 (err) (VTVideoDecoderDecodeFrame returned error) at /Library/Caches/com.apple.xbs/Sources/CoreMedia_frameworks/CoreMedia-1731.15.207/Sources/VideoToolbox/DecodeServer/VTRemoteDecompressionServerCompartment.c line 989

Hello,

Thanks for contacting the Wowza Community.

From the looks of the error you posted, it looks like Safari has issues with decoding the original bitrate stream. It looks like something is off with regards to the encoding and causing the issue. The support for 4.0 and High should be fine. From the error message, it has to do with how the frames are being encoded, I think.

  • One suggestion is to test with 30FPS as the input and see if that resolves the issue.

  • Another suggestion is to check the keyframe interval and confirm it is between 1-4 seconds.

  • Another suggestion if the above does not work is you open a ticket HERE and also include your conf and log files and transrate template file. Make sure to include a log file with a server restart and you ingesting and transrating the stream and then we can see in the logs what is going on with the transcoding of the ingest stream to figure out the root cause.

regards,
Jermaine

An interesting additional data point is that I looked at the stream with my laptop, that’s running 10.12.6 instead of 10.11,6 and the video shows up fine in Safari. Same version of Safari (11.0.3) and Firefox (ESR 52.5.2) on each. Ah - and it works fine on my bosses iMac with 10.11.

Something must be hijacking my codec.

Any advice on figuring out the keyframe interval? I think the only choices on the encoder are resolution and bitrate. And I can’t make changes to the encoding.

Stranger and stranger.

Just tested the stream on another Mac Pro, running 10.12. It doesn’t work in exactly the same way as on my desktop Mac Pro. Tested on an additional MacBook Pro. Will try to come up with a package I could send to Apple.