We'd like to play a video delivered by our customer using the MediaElement
within a Windows 8.1 app. The videos are encoded using H.264:
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L5.1
Format settings, CABAC : Yes
Format settings, ReFrames : 3 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Bit rate mode : Variable
Bit rate : 9 300 Kbps
Maximum bit rate : 11.1 Mbps
Width : 1 080 pixels
Height : 1 920 pixels
Frame rate mode : Constant
Frame rate : 30.000 fps
Standard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
As I can tell from the MSDN documentation (here and here), the encoding should be supported.
But when I assign the Video URL to a media element, I'll get the following error from the MediaFailed
event:
MF_MEDIA_ENGINE_ERR_SRC_NOT_SUPPORTED : HRESULT - 0xC00D5212
Is there a way to debug, what's the actual problem with the video, e.g. what kind of feature is not supported? I read a lot about videos that had problems with meta-data and stuff and tried various different encodings, but wasn't able to track down the issue. It's kinda hard when you get no information from the API.
So it turned out that they sent us H.264 encoded videos, embedded into an AVI container. This is kind of ugly and not supported by the MediaElement
. Switching to a proper MPEG-4 container solved the problem.
Unfortunately we were unable to find logs or exception details pointing us into the right direction, so trial & error did the trick.
User contributions licensed under CC BY-SA 3.0