LINUX.ORG.RU

Чем и как воспроизводить 8k@60fps-видео?

 , ,


0

2

Например (выбрав опцию качества 4320p60), https://www.youtube.com/watch?v=zpBSp3r-gAM

Речь не идет про 8k-монитор/телевизор, просто воспроизведение

В браузере просто сразу затыкается. Если скачать youtube-dl, то vlc совсем не может воспроизводить, mpv - затыкаясь и тормозя кое-как все же воспроизводит.

Железо: CPU AMD Ryzen 3900X@4100 (12 ядер) - должно быть достаточно по идее. Карта - Radeon RX 580

выборы аппаратного ускорения не помогают. -vo vaapi, -vo vdpau - один хрен.

Если посмотреть загрузку, то похоже нагружается только одно ядро. Опция

--vd-lavc-threads
как-то не помогает

$ mpv --vd-lavc-threads 16 Witcher3\ 8k\ RTX\ 3090\ -\ RAYTRACING_\ BEYOND\ ALL\ LIMITS_\ 50+Mods\ _\ PLMU-zpBSp3r-gAM.mp4 
Playing: Witcher3 8k RTX 3090 - RAYTRACING_ BEYOND ALL LIMITS_ 50+Mods _ PLMU-zpBSp3r-gAM.mp4
 (+) Video --vid=1 (*) (av1 7680x4320 60.002fps)
 (+) Audio --aid=1 --alang=eng (*) (aac 6ch 48000Hz)
VO: [gpu] 7680x4320 yuv420p
AO: [pulse] 48000Hz 5.1 6ch float
AV: 00:00:00 / 00:10:39 (0%) A-V:  0.497 Dropped: 2

Audio/Video desynchronisation detected! Possible reasons include too slow
hardware, temporary CPU spikes, broken drivers, and broken files. Audio
position will not match to the video (see A-V status field).

AV: 00:00:02 / 00:10:39 (0%) A-V: 10.730 Dropped: 79

При этом top показывает довольно далекий от 100% нагрузки результат:

top - 22:43:30 up 8 days,  1:42,  3 users,  load average: 1.96, 0.81, 0.73
Tasks: 473 total,   2 running, 471 sleeping,   0 stopped,   0 zombie
%Cpu(s): 19.2 us,  0.8 sy,  0.1 ni, 79.9 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st
MiB Mem :  64235.1 total,  12561.2 free,  10013.3 used,  41660.5 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.  52739.8 avail Mem
24796 oln        20   0 5509916   1.7g  75888 R 446.5   2.7   1:39.35 mpv 
★★★★★

Последнее исправление: praseodim (всего исправлений: 4)

Знающие люди писали, что у RX580 кодеков нужных нет. Нужна невидь, самая последняя.

anonymous
()
Ответ на: комментарий от anonymous

Почему CPU не хватает? На 100% нагружается всего одно ядро из 12, даже при этом заикаясь и дико тормозя (как будто скорость 0.5 поставлена) как-то скрипит.

По идее мультипоточность должна помочь. Не написали? Или я не осилил?

praseodim ★★★★★
() автор топика
Ответ на: комментарий от hateWin

Но оно же таки декодится, хотя и с невозможными тормозами. Но на ОДНОМ ядре. Думаю даже 4-х ядер 3900X должно было бы хватить, ну 6-ти точно.

praseodim ★★★★★
() автор топика
Ответ на: комментарий от praseodim

Емнип любой rtx, 3xxx точно могут.
Однако (с) под офтопиком играло и на встройке в 10750, правда не с ютуба

rukez ★★★★
()
Ответ на: комментарий от token_polyak

VCN3.0 SIENNA CICHLID, VANGOGH

Они еще не вышли =)

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

praseodim ★★★★★
() автор топика
Ответ на: комментарий от token_polyak

Ну это понятно. Таким образом можно наверное и на 20-летнем давности компе посмотреть.

Но интересно стало нагрузить железо чем-то максимальным. Но похоже, что кодек в линуксе недооптимизирован. Или у меня не получается нормально многопоточность задействовать.

praseodim ★★★★★
() автор топика
Последнее исправление: praseodim (всего исправлений: 1)
Ответ на: комментарий от praseodim

и на 20-летнем давности компе посмотреть.

Не успеет масштабировать и рендерить. (я пытался.)

Но интересно стало нагрузить железо чем-то максимальным.

Может, GPGPU?

Или, если сильно хочется именно видео - H.265 4K 10bpc.

token_polyak ★★★★
()
Последнее исправление: token_polyak (всего исправлений: 1)
Ответ на: комментарий от token_polyak

Не успеет масштабировать и рендерить.

Не в реалтайм можно хоть в divx сконвертировать с понижением разрешения.

Может, GPGPU?

Я наверное не так выразился. Понятно, найти задачи можно всегда. Имел ввиду что-то такое как бы «обычное». Воспроизведение видео - это обычное. Необычно пока что только разрешение и fps.

praseodim ★★★★★
() автор топика
Ответ на: комментарий от praseodim

Докладываю. Запустил это нечто у себя. Разрешение 8K, частота кадров 60 fps. Были нагружены все 4 ядра. Правда, я все равно наблюдал на экране слайдшоу, поскольку у меня core i5 7500 (кабилейк без гипертрейдинга). А на 12 секунде оно зависло. Вот выхлоп mpv:

mpv Witcher3\ 8k\ RTX\ 3090\ -\ RAYTRACING_\ BEYOND\ ALL\ LIMITS_\ 50+Mods\ _\ PLMU-zpBSp3r-gAM.mp4 
 (+) Video --vid=1 (*) (av1 7680x4320 60.002fps)
 (+) Audio --aid=1 --alang=eng (*) (aac 6ch 48000Hz)
AO: [pulse] 48000Hz 5.1 6ch float
VO: [gpu] 7680x4320 yuv420p
AV: 00:00:00 / 00:10:39 (0%) A-V:  0.487 Dropped: 17

Audio/Video desynchronisation detected! Possible reasons include too slow
hardware, temporary CPU spikes, broken drivers, and broken files. Audio
position will not match to the video (see A-V status field).

AV: 00:00:11 / 00:10:39 (2%) A-V: 25.313 Dropped: 516
[lavf] Too many packets in the demuxer packet queues:
[lavf]   video/0: 1540 packets, 157526432 bytes
[lavf]   audio/1: 0 packets, 0 bytes
(Paused) AV: 00:00:12 / 00:10:39 (2%) A-V:  0.000 Dropped: 547

Exiting... (Quit)
hateWin ★☆
()
Ответ на: комментарий от hateWin

Были нагружены все 4 ядра.

Хм.

Сейчас обратил внимание, что и у меня все же больше 1-го загружено. Правда вот не полностью.

Но понятно. Текущего железа уже недостаточно =) Или все же лучшая оптимизация должна быть.

praseodim ★★★★★
() автор топика
Ответ на: комментарий от praseodim

mplayer не зависает. Правда, он обрабатывает все в 1 поток, но разницы по сравнению с многопоточным mpv нет.

hateWin ★☆
()

(av1 7680x4320 60.002fps)

Чем и как воспроизводить

NVIDIA RTX 30xx или Intel Xe (Tiger Lake, Rocket Lake). Ещё у AMD RDNA 2 (RX 6xxx) в теории есть аппаратный блок, но потенциал как водится не раскрыт и дров тонет.

Больше никто аппаратно декодировать AV1 сейчас не умеет.

/thread

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)

-vo vaapi, -vo vdpau - один хрен

Это не аппаратное ускорение. Это драйвер вывода видео. Аппаратное ускорение управляется опцией --hwdec.

eternal_sorrow ★★★★★
()

Кампуктером в плеере!

anonymous
()

Radeon RX 580 - 2017

Нужна новая видеокарта (прям из новых). У тебя даже VP9 не умеет.

Жди AMD 6500, как раз к этому времени может что с потенциалом сделают.

С Nvidia с браузерами будет сильно хуже.

А пока ты слишком нищеброд для такого видео.

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 5)

Качать youtube-dl, кодировать в поддерживаемый кодек под размер экрана через ffmpeg, смотреть чем угодно. Очень желательно если данная конкретная версия ffmpeg умет работать с декодером и энкодером видеокарты. Ваш К.О.

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)

В браузере сеть просто может не успевать, в первую очередь.

anonymous
()
Ответ на: комментарий от ValdikSS

Верно, ldd на mpv показал, что там нет libdav1d Хотя в системе вроде как есть обе библиотеки. Как заставить использовать? Перекомпилировать, новая версия?

praseodim ★★★★★
() автор топика

Попробуй --dscale=bilinear --cscale=bilinear --correct-downscaling=no --dscale-antiring=0.0.

fulmar_lor
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.