Ответы с форумов MSDN

Ошибка при воспроизведении mp4 в WPF

Date: 30.03.2018 19:12:34

Опишите ситуацию чуть более четко. Про 5 мониторов и загрузку ЦП вообще ничего не понятно.

Проблема возникает только с видео определенного типа, или со всеми видео? При воспроизведении того же видео в другой программе этого не происходит? Исключение где именно кидает, трассировка стека есть? С носителем, на котором лежит файл, все в порядке?

Message 495

Date: 31.03.2018 9:28:40

"Что такое трасировка стека?"

В обработчик события MediaFailed передается аргумент ExceptionEventArgs, у которого есть свойство ErrorException. Вызовом ErrorException.ToString() можно получить трассировку стека - перечень функций, вызванных в момент возникновения исключения (сделайте, чтобы его записывало в файл, так как оно будет длинным) 

"С носителем тоже затрудняюсь сказать как это выявить? А так по факту на жоский не грешу пока что не дал ни каких на это поводов."

Ну, жесткие диски считаются одним из самых ненадежных элементов компьютера сейчас. Почти расходным материалом. И возникновение неожиданных ошибок типа "файл не найден"  весьма вероятно может быть связано с аппаратной проблемой. Проверить жесткий диск средствами ОС или специальными утилитами изготовителя было бы не лишним. Можно хотя бы считать SMART-показатели прогой типа Crystal Disk Info, если перезагрузить для полной проверки затруднительно.

"пока что 3 видео все mp4."

MediaElement в WPF внутренне использует Windows Media Player, который, насколько я знаю, из коробки не поддерживает этот формат. Так что источником проблемы также может быть сторонний кодек, который он использует.

Message 490

Date: 10.04.2018 17:20:21

Хм, не густо. Единственное что из этих данных можно извлечь, то что ошибка происходит действительно от Windows Media Player (оба HRESULT относятся к нему). А в ErrorException.StackTrace то же самое? InnerException есть? Хотя, скорее всего без присоединенного специального отладчика с настроенными символами здесь ничего информативного не получить.

В общем, ответ тот же, может быть что угодно, от сбоя носителя до бага в кодеке. Если проявляется только при длительной работе, может быть и утечка каких-то ресурсов в какой-то программе или службе. 


Автор: VadimTagil

Главная страница - Список тем - Репозиторий на GitHub