Почему mpv потребляет так много ресурсов CPU?

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Ответить
MiK13
Сообщения: 1180
ОС: Linux Debian

Почему mpv потребляет так много ресурсов CPU?

Сообщение MiK13 »

Когда-то заметил, что при просмотре видео 4K через mpv задействованы как минимум три CPU из 6. top показывал загрузку примерно 270%. Я тогда решил, что это нормально.
Но сегодня, проверяя работу экшен камеры от Olympus, решил посмотреть аналогичное видео (3840x2160) под Windows 7.
Вызвал диспетчер задач, и он показал

Код: Выделить всё

Бездействие системы -- 92-93%
mpc-hc64.exe        -- 6-7%
иногда бывало и 5%
После этого загрузил Linux (Debian 9.9) Запустил проигрывание этого же видео через mpv -- top показывает в районе 250%.
vlc показал аналогичную загрузку.
mplayer вообще не смог нормально проиграть это видео. Видимо он не поддерживает несколько CPU и поэтому на одном проигрывает кусками.
Если виндовый диспетчер (или как его) показывает загрузку по отношению ко всем CPU, то всё равно это будет в районе 40%. По сравнению с 250% у mpv и vlc.

В чём может быть дело?

P.S. Связь с видеофайлами в mc у меня:

Код: Выделить всё

include/video
        Open=(mpv -af scaletempo -fs --stop-xscreensaver --fs-screen=1 %f >/dev/null 2>&1 &)
Спасибо сказали:
azsx
Сообщения: 3684
ОС: calculate linux, debian, ubuntu

Re: Почему mpv потребляет так много ресурсов CPU?

Сообщение azsx »

недавно я разбирал похожую тему. По сути взляд дилетанта.
Видео 4К понятние абстрактное. Они сильно зависит от кодека. Большая часть видеокарт, в том числе встроенных тянут аппаратно кодек типа x264 в том числе на 4К.
linux очень хорошая ОС, но есть места, где он стабильно слаб. Напрмер, дрова для видеокарт. Он их или не подхватывает совсем, либо держит как то крайне урезано.
Что вам надо.
1. Показать формат вашего видео (mediainfo).
2. Посмотреть какие кодеки поддерживает ваша видеокарта (vdpauinfo или vainfo).
3. Посмотреть стоят ли в вашем дебиане дрова на видеокарту. Посмотреть видеокарту так:

Код: Выделить всё

lspci | grep -E "VGA|3D"
а вот дрова, тем более актуальные ли они и поддерживаются ли софтом -- я не умею.
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Почему mpv потребляет так много ресурсов CPU?

Сообщение MiK13 »

azsx писал(а):
22.08.2019 04:17
Видео 4К понятние абстрактное. Они сильно зависит от кодека. Большая часть видеокарт, в том числе встроенных тянут аппаратно кодек типа x264 в том числе на 4К.
linux очень хорошая ОС, но есть места, где он стабильно слаб. Напрмер, дрова для видеокарт. Он их или не подхватывает совсем, либо держит как то крайне урезано.
Я потом так и подумал. Видеокарта у меня довольно "серьёзная" (какая-то GeForce, модель сейчас не помню, какая-то 900 с чем-то, помню что в ней 768 ядер). Видимо винда умеет её использовать для декодирования видео, а Linux нет.
С видеокартой у меня вообще были проблемы. Когда я использовал Jessie, то сначала всё работало относительно неплохо, но когда я попробовал поставить Cuda для этой карты, возникли проблемы. В результате я потерял OpenGL, и работал через VESA.
Когда поставил strtch, то сначала вообще иксы не работали. Заработали только после установки пакета firmware.
azsx писал(а):
22.08.2019 04:17
Что вам надо.
1. Показать формат вашего видео (mediainfo).
2. Посмотреть какие кодеки поддерживает ваша видеокарта (vdpauinfo или vainfo).
3. Посмотреть стоят ли в вашем дебиане дрова на видеокарту. Посмотреть видеокарту так:

Код: Выделить всё

lspci | grep -E "VGA|3D"
Спасибо. Посмотрю дома.
Правда, не знаю, есть ли mediainfo, но вот exiftool на один из подобных файлов выдал такую информацию

Код: Выделить всё

ExifTool Version Number         : 10.40
File Name                       : 190623193259_EM1m2_0008.MOV
Directory                       : .
File Size                       : 2062 MB
File Modification Date/Time     : 2019:06:23 19:36:18+03:00
File Access Date/Time           : 2019:08:22 11:10:23+03:00
File Inode Change Date/Time     : 2019:06:23 23:33:22+03:00
File Permissions                : rw-rw-rw-
File Type                       : MOV
File Type Extension             : mov
MIME Type                       : video/quicktime
Major Brand                     : Apple QuickTime (.MOV/QT)
Minor Version                   : 2011.7.0
Compatible Brands               : qt
Movie Header Version            : 0
Create Date                     : 2019:06:23 19:32:59
Modify Date                     : 2019:06:23 19:32:59
Time Scale                      : 90000
Duration                        : 0:03:16
Preferred Rate                  : 1
Preferred Volume                : 100.00%
Preview Time                    : 0 s
Preview Duration                : 0 s
Poster Time                     : 0 s
Selection Time                  : 0 s
Selection Duration              : 0 s
Current Time                    : 0 s
Next Track ID                   : 4
Track Header Version            : 0
Track Create Date               : 2019:06:23 19:32:59
Track Modify Date               : 2019:06:23 19:32:59
Track ID                        : 1
Track Duration                  : 0:03:16
Track Layer                     : 0
Track Volume                    : 0.00%
Image Width                     : 3840
Image Height                    : 2160
Chapter List Track ID           : 0
Graphics Mode                   : srcCopy
Op Color                        : 0 0 0
Compressor ID                   : avc1
Source Image Width              : 3840
Source Image Height             : 2160
X Resolution                    : 72
Y Resolution                    : 72
Bit Depth                       : 24
Video Frame Rate                : 25
Time Code                       : 3
Balance                         : 0
Audio Format                    : sowt
Audio Channels                  : 2
Audio Bits Per Sample           : 16
Audio Sample Rate               : 48000
Matrix Structure                : 1 0 0 0 1 0 0 0 1
Media Header Version            : 0
Media Create Date               : 2019:06:23 19:32:59
Media Modify Date               : 2019:06:23 19:32:59
Media Time Scale                : 90000
Media Duration                  : 0:03:16
Media Language Code             : jpn
Gen Media Version               : 0
Gen Flags                       : 0 0 0
Gen Graphics Mode               : srcCopy
Gen Op Color                    : 0 0 0
Gen Balance                     : 0
Text Font                       : System
Text Face                       : Plain
Text Size                       : 12
Text Color                      : 0 0 0
Background Color                : 0 0 0
Font Name                       : 
Handler Class                   : Data Handler
Handler Type                    : Alias Data
Other Format                    : tmcd
Make                            : OLYMPUS DIGITAL CAMERA
Camera Model Name               : E-M1MarkII
Date Time 1                     : Sun Jun 23 19:32:59 2019
Date Time 2                     : Sun Jun 23 19:32:59 2019
Thumbnail Width                 : 160
Thumbnail Height                : 120
Thumbnail Length                : 10158
Thumbnail Image                 : (Binary data 10158 bytes, use -b option to extract)
Preview Image Length            : 64485
Preview Image                   : (Binary data 64485 bytes, use -b option to extract)
Image Size                      : 3840x2160
Megapixels                      : 8.3
Rotation                        : 0
P.S. Попробую в выходные поставить Buster. Может быть там ситуация будет получше.
Спасибо сказали:
azsx
Сообщения: 3684
ОС: calculate linux, debian, ubuntu

Re: Почему mpv потребляет так много ресурсов CPU?

Сообщение azsx »

полное название MPEG-4 Part 10 AVC/H.264
а у вас
Compressor ID : avc1
может это важно, может нет.
У меня была похожая проблема, то есть комп физически не показывал fhd. Я пока не понимал это, выкрутилтся тем, что поставил себе calculate linux в котором почему то видео в vlc стало работать. Ни вин 7, ни деб, ни убунту не тянули.
Недавно эксперементировал. mplayer на том же компе в той же ос не тянут fhd ни с какими параметрами. mpv тянет, но с потерей кадров.
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Почему mpv потребляет так много ресурсов CPU?

Сообщение MiK13 »

Натолкнулся на Воспроизведение HD-video, попробовал их рекомендации, но толку нет.
Поговорил с одним знакомым. Он спросил, "что показывает nvidia-smi?" У меня этой команды не было.
Попробовал поставить:

Shell

# apt install nvidia-smi
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Некоторые пакеты невозможно установить. Возможно, вы просите невозможного,
или же используете нестабильную версию дистрибутива, где запрошенные вами
пакеты ещё не созданы или были удалены из Incoming.
Следующая информация, возможно, поможет вам:

Пакеты, имеющие неудовлетворённые зависимости:
libglx0 : Зависит: libglx-mesa0 но он не будет установлен
libpurple-bin : Зависит: libpurple0 но он не будет установлен
wine : Зависит: wine64 (>= 1.8.7-2) но он не будет установлен или
wine32 (>= 1.8.7-2)
Зависит: wine64 (< 1.8.7-2.1~) но он не будет установлен или
wine32 (< 1.8.7-2.1~)
E: Ошибка, pkgProblemResolver::Resolve сгенерировал повреждённые пакеты. Это может быть вызвано отложенными (held) пакетами.
Похоже, что надо ставить проприетарный драйвер.

P.S.

Shell

lspci | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GM206 [GeForce GTX 950] (rev a1)
Спасибо сказали:
azsx
Сообщения: 3684
ОС: calculate linux, debian, ubuntu

Re: Почему mpv потребляет так много ресурсов CPU?

Сообщение azsx »

MiK13 писал:
24.08.2019 00:11
GeForce GTX 950
ну вот как бы и ответ. То есть теперь ваша задача становится одной, как заставить линукс начать работать с вашей видеокартой, хотя бы на уровне декодирования x264.
У вас случайно не ноут с двумя видеокартами?
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Почему mpv потребляет так много ресурсов CPU?

Сообщение MiK13 »

azsx писал(а):
24.08.2019 02:55
MiK13 писал:
24.08.2019 00:11
GeForce GTX 950
ну вот как бы и ответ. То есть теперь ваша задача становится одной, как заставить линукс начать работать с вашей видеокартой, хотя бы на уровне декодирования x264.
Только как это сделать? Пока сообразить не могу.
azsx писал(а):
24.08.2019 02:55
У вас случайно не ноут с двумя видеокартами?
Нет, стационарный, видеокарту отдельно покупал.
Спасибо сказали:
Ответить