10-bit H264 video can't be played back on Windows
Categories
(Core :: Audio/Video: Playback, defect)
Tracking
()
People
(Reporter: gcp, Unassigned)
References
(Blocks 1 open bug, )
Details
I have a report that this clip (https://www.foobar2000.org/temp/k.mp4) breaks on Windows. It works on Linux and I think macOS, suggesting a WMF decoder issue. There is an extra timecode track in the mp4, written by a fuji cam, but not 100% sure that is what throws us off. Works in all other browsers.
Comment 1•3 years ago
|
||
I can reproduce the problem on Windows 11, in Firefox Nightly 104 and 91 (from a year ago). The video plays fine in Firefox and Chrome on macOS (though it doesn't play in Safari).
I see the following error logged:
2022-07-05T12:12:58.447000: INFO : b'[Child 30172, MediaDecoderStateMachine #1] WARNING: Decoder=23eed1d6d00 Decode error: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005) - mozilla::MediaResult __cdecl mozilla::RemoteVideoDecoderChild::InitIPDL(const mozilla::VideoInfo &, float, const CreateDecoderParams::OptionSet &, Maybe<layers::TextureFactoryIdentifier>, const Maybe<uint64_t> &): RemoteDecoderManager is not available.: file /builds/worker/checkouts/gecko/dom/media/MediaDecoderStateMachineBase.cpp:151'
Comment 2•3 years ago
|
||
That video is a 10 bits H264 format, and we use WMF decoder for that. However, WMF h264 decoder only supports 8 bits output so we can't use it for 10 bits. If my above understanding is correct, then this bug would be wonfix
because we rely on the platform decoder for h264.
Zaggy, would you mind to help me verify if my understanding is correct? Or we have way to decode 10 bits h264 video by MFT?
Thank you.
Yeah, the WMF H264 decoder should only be 8-bit, so this should be a wontfix. I would assume OpenH264 decoding would allow this, but I'm sure that's not a priority given how few HDR videos are encoded as H264.
FYI, the error I get in the latest nightly is more like what I would expect vs what :cpeterson saw: Media resource https://www.foobar2000.org/temp/k.mp4 could not be decoded, error: Error Code: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005) Details: mozilla::MediaResult __cdecl mozilla::WMFVideoMFTManager::InitInternal(void): Fail to set the decoder media types.
Comment 4•3 years ago
|
||
Thanks! Close this bug because of comment 3.
Reporter | ||
Comment 5•3 years ago
|
||
WMF h264 decoder only supports 8 bits output so we can't use it for 10 bits
Outputting in 8-bits would be fine (downsampled) if it could decode. It seems the critical part is here:
Profiles/Levels Baseline, Main, and High profiles, up to level 5.1.
So no 10-bit profile support. Contrast to the WMF H265 decoder:
Profiles/Levels Main, Main Still Picture, and Main10 profiles
Which does list Main10.
I can confirm that Windows Media Player and Films & TV also fail to decode this file, so the problem is really with the Windows decoders.
Reporter | ||
Updated•3 years ago
|
Updated•3 years ago
|
Description
•