Воспроизведение видео H.264 (с использованием MediaStreamSource) соответствует 3100 MediaError на эмуляторе WP7

Мы пытаемся воспроизвести поток H.264 с MediaStreamSource на эмуляторе WP7. Но встретил с 3100 ошибку с видео:

В методе переопределения OpenMediaAsync объекта Mp4MediaStreamSource для videoStreamAttribute VideoFourCC задано значение "H264":

Dictionary<MediaStreamAttributeKeys, string> videoStreamAttributes = new Dictionary<MediaStreamAttributeKeys, string>();
videoStreamAttributes[MediaStreamAttributeKeys.VideoFourCC] = "H264";
this.videoStreamDescription = new MediaStreamDescription(MediaStreamType.Video, videoStreamAttributes);

Но GetSampleAsync вообще не вызывался после OpenMediaAsync, MediaElement просто возвращает ошибку "3100 Произошла ошибка", больше никакой другой информации. И та же ошибка, даже если мы устанавливаем атрибут CodecPrivateData.

1 ответ

Согласно этой статье вы должны установить [MediaStreamAttributeKeys.CodecPrivateData]

в формате, который ожидает кодек ([START_CODE][SPS][START_CODE][PPS])

videoStreamAttributes[MediaStreamAttributeKeys.CodecPrivateData] = "000000012742000D96540A0FD8080F162EA00000000128CE060C88";
Другие вопросы по тегам