2010-08-05 3 views
6

Я ищу подробную информацию о том, что решает форматы носителей, которые могут играть MediaElement, я не могу найти какой-либо окончательный источник. Я где-то читал, что если он может быть воспроизведен в WMP, то MediaElement может сыграть его. Это правда? Если да, то мой следующий вопрос: где я могу найти возможности и ограничения WMP? А где же связь между WPF MediaElement и WMP? Я ищу лучшего понимания этих компонентов и воспроизведения видео в WPF и до сих пор изо всех сил пытался найти что-либо в Интернете.Какие типы видео могут воспроизводиться MediaElement?

ответ

8

MediaElement внутренне использует WMP ActiveX. Теоретически, MediaElement может/должен иметь возможность воспроизводить любые WMP-файлы, но это не всегда так, например .vob-файлы.

Когда вы воспроизводите файл в MediaElement, загружается ActiveX Player проигрывателя Windows Media. Затем WMP решит использовать пути DirectShow или MediaFoundation для воспроизведения мультимедиа. Типы носителей, которые он может воспроизводить, во многом зависят от того, какие кодеки (DirectShow или MF) установлены на вашем компьютере. После выбора медиа-пути WPF предоставит пользовательский презентатор для Enhanced Video Renderer, чтобы каждый видеофрагмент отображался на поверхность D3D, загрунтованную для презентации в составе механизма компоновки WPF.

+0

Это замечательно, спасибо за объяснение. Еще два вопроса - 1) Есть ли способ увидеть, какие кодеки установлены на машине, доступной для Directshow и MF? 2) Любая идея о том, какие критерии проверены, чтобы принять решение о воспроизведении Directshow vs MF? Спасибо! – Sio

+1

Самый простой способ увидеть, какие кодеки доступны, - использовать GraphEdit в каталоге bin SDK Windows. Я не думаю, что аналогичная утилита существует для MF. Я не уверен, какие критерии используются для использования MF или DShow. Мое единственное предположение - сначала попробовать MF, а затем вернуться к DShow. MF в Windows 7 поддерживает некоторые варианты MPEG4, такие как h264 и WMV (возможно, WM7, 8 и VC1). –

+0

Теперь что нам делать, если нам нужно играть в .vob-файлы в приложении WPF? – TheAgent

Смежные вопросы