Portál AbcLinuxu, 7. května 2025 16:52

Dotaz: HW akcelerace videa na linuxu

26.9.2014 21:18 petrfm
HW akcelerace videa na linuxu
Přečteno: 4928×
Odpovědět | Admin

Tak a je to tady. Chvilku pouzivam linux desktop a zjistil jsem, ze ma nejake potize s prehravanim videa. Mam kubuntu 14.04 a pouzivam VLC, ktery jsem mel na W7 a bezel tam skvele i s akceleraci videa. Ale tady ouha. Dneska jsem narazil na videa z gopro, ktere jsou tocene v 1080p a na T400 s C2D mi to sezere 95 procent procesoru. Je tedy jasne, ze se dekoduje SW. A potvrzuje to i menu VLC. ALE - kdyz zapnut pouzit HW dekodovani - dam auto, tak je video kostickovane a silene se seka.

A pro jsem jsem se zacetl a mam z toho jeste vetsi zmatek. Jak je to vubec s podporou HW dekodovani videa na linuxu? Funguje to? a co k tomu potrebuju? Zkousel jsem testy grafiky, mam 3D akceleraci zapnutou, ale to se tyka asi jenom akcelerace ve hrach. Na filmy potrebuju asi neco jineho.

Poradite prehravac, nebo kodeky, nebo jak dosahnout toho, aby mi linux akceleroval HD video?

vypis z lspci :

00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)

Jde o NB Lenovo T400.

V praci mam stejny linux a grafiku Nvidia 210? Nevim presny typ, ale ma podporu akcelerace. Nezkousel jsem teda vypnout akceleraci ve VLC, ale nedalo se na to vubec divat. Zkusim az u nej budu, vypnout HW, zrejme to pak pojede, ale neni to reseni, sezere to veskery procesor. Navic, dela to problemy i v youtube ve firefoxu - obraz se v prostredku roztrhava a pri rychlych prechodech desne skube.

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jendа avatar 26.9.2014 21:36 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
Odpovědět | | Sbalit | Link | Blokovat | Admin
No a fakt tahle intelovská grafika umí HW dekódování? Nepleť si HW dekódování a HW akceleraci výstupu (neakcelerovaný je např. výstup X11, akcelerované xv, gl).

Když zkusíš jenom dekódovat bez výstupu (v mplayeru asi něco jako -vo none), tak to dává?
26.9.2014 21:39 petrfm
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
Diky moc za reakci, ale slo by to cesky ? :-))) Ne, vazne, pres grafiku jsem uplna lama. Jak konkretne se dekoduje bez zobrazovani? Spustit to nejak pres terminal? Muzu to jeste zkusit ve WIN7. Tim notebookem si fakt nejsem jisty, ale ta nvidia umi HW dekodovani na 1 000 000 %. Tam jsem prehraval pod widlema HD filmy se zatezi procesoru okolo 10 %.
Jendа avatar 26.9.2014 21:54 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
mplayer -vo null
26.9.2014 22:11 petrfm
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
To je dobra hracka :-) Zkousel jsem. Kdyz dam null, zere to 80% cpu. Kdyz nedam nic, ukaze se mi okno s videem a zere to 90% cpu. Kdyz dam -vo vdpau, coz by mela byt HW dekodovani na linuxu, tak to zere 10% CPU !!!! Ale problem je, ze nevidim obraz :-(
27.9.2014 03:06 nobody
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
nezarucuju, ale zkus tohle :)
# pridat webupd8 ppa a nainstalovat potrebne pro vdpau&vaapi na intelu
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update && sudo apt-get install libvdpau-va-gl1 i965-va-driver

# doufam ze staci restart jen gfx prostredi
sudo service lightdm restart

# pro info: je vdpau aktivni ?
grep -i vdpau /var/log/Xorg.0.log

# pro info: jake kodeky mplayer pro vdpau umi ?
mplayer -vc help|grep vdpau

# prehrani :)
VDPAU_DRIVER=va_gl mplayer -vo vdpau -vc ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau,ffodivxvdpau video_soubor

pokud bude slapat, parametry mplayer je mozno nastavit natrvalo v ~/.mplayer/config
echo 'fs=yes
zoom=yes
vo=vdpau
vc=ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau,ffodivxvdpau' >> ~/.mplayer/config
a vytvorit alias pro mplayer:
echo mplayer='VDPAU_DRIVER=va_gl mplayer' >> ~/.bash_aliases
a nakonec treba asociovat video soubory s mplayer :)
27.9.2014 03:09 nobody
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
btw: ten restart gfx prostredi killne bez dotazu vsechny bezici programy :)
26.9.2014 21:54 petrfm
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
Odpovědět | | Sbalit | Link | Blokovat | Admin

Tak jsem tady zpatky, ze sedmicek a jsem docela smutny :-( Resume - grafika dekodovani UMI. Ale VLC pod win stoji taky za hov.. Pri prehravani tech 80% CPU. Byla vypnuta akcelerace. OK, zapnul jsem ji a zatez padla na 50%, ale umerne s tim zacal skubat obraz.

Nicmene, mam tam taky Media Player Classic HC. A tady nastal SOK. Stejne video prehral UPLNE PLYNULE se zatezi CPU mezi 6-14 %. Takze proste umi akcelerovat a to hodne dobre.

A ted, jak to dokazat na linuxu?

26.9.2014 21:56 petrfm
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
Odpovědět | | Sbalit | Link | Blokovat | Admin

Jinak ted si uvedomuju tu svou blbost. Jasne, video se na grafice neakceleruje, ale HW dekoduje.

Takze sorry za zmatek v nazvoslovi. Jde mi samozrejme o HW dekodovani, akcelerace ASI funguje - podle vypisu ze shellu - realne to nemam v cem odzkouset, hry nehraju.

26.9.2014 22:34 MadCatX
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Video lze na obrazovku pod X11 dostat několika způsoby:

- Plně softwarově. CPU dekóduje obraz a výsledek třeba přes XShm předá XServeru, který zařídí, že se obraz vykreslí. To je samozřejmě pomalé.
- S hardwarově akcelerovaným výstupem. Obraz pořád dekóduje CPU, ale samotné vykreslení včetně třeba přeškálování zařídí GPU. Takhle funguje třeba XVideo.
- Hardwarově akcelerované dekódování i výstup. Na Linuxu jsou podporována dvě API, která to umožňují. VDPAU na nVidii s proprietárními a na Radeonech s FOSS ovladači a VAAPI na Intelech.

VLC od verze 2.1.0 podporuje jak VDPAU, tak VAAPI, ale HW dekódování je nutné ručně povolit. Bohužel VLC přistupuje k akceleraci videa trochu svérázně a sice tak, že VDPAU i VAAPI používá pouze pro akcelerované dekódování, nikoliv pro výstup. Proto bude VLC vždycky žrát více CPU než jiné přehrávače. Čím vyšší bude rozlišení přehrávaného videa, tím více to bude znát. VAAPI na Intelech je použitelně podporováno až od Sandy Bridge dále, takže s vaším GPU máte nejspíš smůlu. Na druhou stranu C2D by mělo 1080p videa zvládnout i bez HW dekódování, pokud se použije výstup přes XVideo. Možná bych místo VLC zkusil mplayer či ještě lépe mpv, s VLC nemám nejlepší zkušenosti co se výkonu při přehrávání videa týče.

26.9.2014 22:52 petrfm
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu

Diky za vycerpavajici popis, i kdyz mne teda vubec nepotesil :-( Je sice fakt, ze C2D video zvlada prehrat, ale, pokud si vezmu NB treba na prehrani filmu a pojedu z baterek, tak mi s 90% zatezi CPU zdechne baterka za hodinu, mozna drive. Kdyz u toho budu neco delat, nebo se prihlasi o slovo nejaky proces, ma to za nasledek skubani ve videu, coz je hnus.

Jsem z toho smutny, protoze jsem se tesil, ze linux skutecne muze nahradit desktop, ale tohle jsou drobnosti, ktere umi hodne otravit zivot.

Pokud bych sel do jineho NB, da se predem overit, kterou grafiku vzit, aby s tim nebyly problemy? Mam v planu T420, nebo T430, tak to asi budu muset uspisit :-)

26.9.2014 23:08 MadCatX
Rozbalit Rozbalit vše Re: HW akcelerace videa na linuxu
Dneska jakoukoliv nVidii nebo Intelku, s těmi mám vyzkoušené, že to funguje. U Radeonů je "problém" v tom, že akcelerace funguje jen s FOSS ovladači a ne s Catalysty (resp. XvBA akcelerační API poskytované Catalysty podporuje snad jen XBMC). FOSS ovladače pro Radeony jsou ale zatím na některých kartách docela problémové (i když třeba mně fungují OK).

90% CPU load je dost. Na 6 let starém C2D jsem přehrával video mpvčkem s výstupem přes OpenGL (-vo gl), které běželo přes llvmpipe - tedy kompletně softwarově - a zvládlo to i 720p videa, ač to už bylo na hraně. Kdybych měl k dispozici Xv, bylo by to nejspíš lepší. Skoro bych podezříval VLC, že dělá něco nepříliš efektivně. Není třeba zapnutý nějaký postprocessing? Používá se výstup přes XVideo?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.