Я написал приложение WPF (в Visual C # 2010 Express), которое имеет 2 окна. 1-й имеет различные кнопки, другой отображает видео с помощью элемента управления MediaElement. При нажатии кнопки видео, связанное с ней, воспроизводится или останавливается, если оно уже воспроизводится.
На моей машине для разработки (Windows 7, хорошая видеокарта, много памяти и т. Д.) Это работает нормально. Единственная проблема, с которой я столкнулся, это то, что при подключении к отладчику он очень нестабилен, но при нормальной работе эти проблемы исчезают.
К сожалению, при запуске на гораздо менее мощной машине с XP видео работает со скоростью 1-2 кадра в секунду. И это несмотря на то, что видео нормально воспроизводятся в проигрывателе Windows Media.
Похоже, довольно много сообщений о низкой производительности для элемента управления MediaElement (не говоря уже о несоответствиях в том, что он может воспроизводить), поэтому я решил взглянуть на некоторые альтернативы.
Я попробовал бесплатный вызов библиотеки WPF MediaKit (http://wpfmediakit.codeplex.com), который, как мне показалось, мог бы иметь какой-то эффект, однако, хотя я заставил его работать на машине с XP, он решительно отказывается показывать видео на моей машине для разработки несмотря на использование точно такого же кода. Я все еще надеюсь, что смогу это сработать, но я не уверен, что это поможет, поскольку он все еще использует элемент управления MediaElement за кулисами.
Затем я попытался использовать COM-элемент управления wmp.dll (формы Windows, а не WPF) и даже с самым простым приложением (новый проект формы Windows, элемент управления WMP, добавленный в форму, и 1 строка кода для установки URL-адреса при загрузке). I получить странное поведение. С подключенным отладчиком он работает на нескольких мониторах, но иногда, когда он начинает воспроизводиться, он просто несколько раз заикается в течение первых нескольких кадров, и единственный способ вырваться из этого, кажется, состоит в том, чтобы переместить его на другой монитор. Если я не использую отладчик, у меня не возникает проблема с заиканием, но видео отображается только на главном мониторе, и как только я перемещаю окно на дополнительный монитор, оно становится черным.
Итак, мой вопрос: кто-нибудь сталкивался с чем-то подобным и / или нашел достойное решение? Было бы особенно приятно найти что-то, что работает согласованно с отладчиком и без него!