Почему VLC Player не справляется с декодированием видео, когда другая программа использует процессор, даже если он имеет низкий приоритет?

336
EM0

Я запускаю ffmpeg в Windows 7, чтобы перекодировать некоторые видео в x265. Пока он работает, я хочу посмотреть другие видео в VLC Player (также в кодировке x265, поэтому их декодирование также требует много ресурсов процессора). Я обнаружил, что когда я это делаю, VLC Player не может декодировать его вовремя - видео все время приостанавливается, и большая часть экрана запачкается серым. Это совершенно не поддается наблюдению. (Видео воспроизводится нормально, если ffmpeg не запущен.)

Процесс ffmpeg использует все доступное процессорное время, но работает с приоритетом «ожидания». VLC Player работает с «нормальным» приоритетом (я даже пробовал «высокий»). Я подумал, что это должно позволить VLC Player использовать все процессорное время, которое ему нужно, и только оставшееся время должно переходить в процесс «ожидания». Почему этого не происходит?

0
Почему вы так уверены, что это проблема с процессором? Кодирование и декодирование видео обычно передаются в графический процессор на правильно настроенном ПК. sawdust 6 лет назад 1
См. Https://docs.microsoft.com/en-us/windows-hardware/drivers/display/gpu-preemption sawdust 6 лет назад 0
Интересный момент! Я предполагал, что это проблема с процессором, потому что ffmpeg использует столько процессора, сколько может получить, а VLC Player также использует довольно много (~ 45%). Приоритет IO также не имеет значения. В соответствии с https://superuser.com/questions/516948/change-gpu-priority-of-a-process-under-windows нет способа установить приоритет графического процессора, так что я тогда облажался? Я не могу кодировать и просматривать видео x265 одновременно? EM0 6 лет назад 0

0 ответов на вопрос