Nvidia ir aparatinis video spartinimas

Namuose naudoju kompiuterį, kurio parametrus daugelis pavadins “muziejiniais”. Tai AMD64 3000+ 1.8GHz procesorius kurio taktinis dažnis pakeltas iki 2.43GHz. Dažnio kėlimo metu buvo įdėta NVidia Geforce 6600GT vaizdo plokštė. Viena iš pagrindinių priežasčių, dėl kurių buvo keliamas dažnis tai nesugebėjimas užtikrintai atvaizduoti 720p video (jau nekalbant apie 1080p). Išsiaiškinau, kad aparatinis spartinimas naudojant linux OS pradeda veikti naudojant Geforce 8 ar naujesnės serijos vaizdo plokštes. Nors perkant Geforce 6600 GT ant dėžutės buvo priklijuota visokiu fullHD video ir panašių lipdukų, pasirodo spartinimas veikė tik Windows OS.

Pasiskaitęs NVidia tvarkyklių README, ten gi sąrašas yra GPU palaikančiu VDPAU. VDPAU tai atviro kodo biblioteka, kurios autorius NVidia. Ši biblioteka leidžia video dekodavimą bei apdorojimą (procesing) perlaisti GPU (GPU tai vaizdo plokštės procesorius).Tad su kiekvieną dieną audžiau mintį kaip čia man dabar iš kur nors naujesnį Geforc’ą iškrapščius. Aišku kaip visada su finansais ne prūdai, bet šiaip ne taip išsirinkau NVidia GT220 vaizdo plokštę. Pagal kokius parametrus aš ją išsirinkau dabar jau tiksliai nepamenu, bet svarbiausia buvo, kad ji palaikytu VDPAU, būtinai turėtu CUDA procesorius (kurio iki šios dienos taip ir neišbandžiau) ir kuo aukštesnius GPU bei RAM dažnius.

Koks didžiulis buvo nusivylimas, kaip įdėjus šią plokštę stebuklo nepamačiau. Tiesa 720p jau buvo galima lyg ir žiūrėti, bet apie 1080p kalbos nebuvo. Kažkaip jau net buvau susitaikęs su mintimi, kad geriau nebus. Čia ir buvo mano didžiausia klaida. Pasirodo, kad neužtenka suinstaliuoti NVidia tvarkyklių, kad sėkmingai veiktu video spartinimas. Visai atsitiktinai atnaujinant ar tai VLC ar MPLAYER paketą pamačiau, kad kaip papildoma priklausomybė yra VDPAU paketas. Pasidomėjus daugiau, nepraėjus nė dešimčiai minučių 720p bei 1080p jau buvo atvaizduojamas su minimaliais CPU apkrovimais!

Taigi, kad veiktu aparatinis spartinimas reikia suinstaliuoti paketus (su sąlygą, kad NVidia tvarkyklės jau įrašytos):

sudo pacman -Sy libvdpau vdpau-video

Jei naudojate VLC grotuvą tai jums reikia keliauti į menių punktą Įrankai -> Parinktys. Atsidariusiam dialoge kairėję pusėje pasirinkti Įvestis ir kodavimas ir uždėti varnelę Use GPU acceleration (experimental), pas mane dabar 1.1.13 versija. Jei neklystu aparatinis spartinimas atsirado tik VLC 1.1.* versijoje.

Jei naudojate MPLAYER (kaip aš) tai video galima žiūrėti su dar mažesniais CPU resursais. Tik prieš tai, kad nereikėtu kiekvieną kartą suvedinėti komandinės eilutės reikia paredaguoti konfigūracinę bylą kuri randasi adresu .mplayer/config (mano atvėju pilnas kelias yra /home/dinux/.mplayer/config). Mano konfigūracinė byla atrodo taip:

# Write your default config options here!
vo=vdpau
vc=ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau,ffodivxvdpau,
cache=8192

Pirmos dvi eilutės daugiau mažiau aiškios. Trečioji skirta cache’o padidinimui. Be šios eilutės kol MPLAYER kreipiasi į diską vaizdas akimirkai užstringa. Nuskaitęs informacijos kiekį, grotuvas ją atvaizduoja. Tai trunka ~5-10sek. vėliau vėl seka truktelėjimas, kol nuskaitoma antra porcija informacijos. Taigi, trečioji eilutė nustato 8Mb cache’o dydi. To užtenka, kad grotuvas skaitytu informaciją “į priekį” ir visada turėtu duomenų porciją, kurią reikia iškoduoti ir atvaizduoti.

Dabar žiūrint 1080p video naudojant MPLAYER jis CPU apkrauna iki ~4%:

[dinux@dinux ~]$ ps aux | grep mplayer
dinux     4451  8.3  <strong>3.7</strong> 122876 77760 ?        S    22:41   0:01 mplayer Eurosport-HD.Demo.Loop.1080p.H.264.MP2.2.0.mkv

Archlinux libpng 1.4 atsinaujinimas į 1.5

Vakar (užvakar?) archlinux saugyklose pasirodė libpng 1.5 versija, kuri įšaukia daugelio programų neveikimą. Pasirodžius šiam atnaujinimui pasipylė ir atnaujinimai programų, kurios priklauso nuo šio paketo. Šiandiena kompiuteris atsisiuntė ~570Mb atnaujinimų. Aišku paketus prižiūrintis asmenys tikrai nespėjo perkompiliuoti visų programų. Tuo labiau daug programų (bent pas mane) yra instaliuotu iš AUR. Taipogi programos kurias jūs galėjote atsisiųsti jau sukompiliuotas ir paruoštas naudojimui (jeigu pvz autorius nepateikia programos išeities tekstų (source).
Kad nesukelti sumaišties vykdome:

sudo pacman -Syu

ir atsinaujiname visus siūlomus paketus (tuo tarpu ir libpng). Iškarto po atnaujinimo vykdome komandą:

sudo yaourt -S libpng14

kuri iš AUR sukompiliuos ir paruoš naudojimui senąją libpng versiją. Jei naudojate Archlinux ir nežinote kas tas AUR tai labai rekomenduoju išsiaiškinti. Tikrai patogus ir naudingas dalykas. Skaitom čia https://wiki.archlinux.org/index.php/AUR

Dabar trumpas komentaras kodėl gali būti instaliuoti du vienodi paketai ir dar skirtingom versijom. Viskas labai paprasta, tiesiog reikia atkreipti dėmesį į paketų pavadinimus. Originalusis paketas vadinasi libpng, o paketas iš AUR vadinasi libpng14. Kad naujai kompiliuojamos programos susikompiliuotu naudojant naujausią versiją iš libpng14 (AUR versijos) paketo pašalintos bylos libpng-config, libpng.so, libpng.a, libpng.pc, pngconf.h,png.h. Todėl po instaliacijos šios bylos lieka originaliojo paketo. Papildomai atsiranda tik libpng14.a ir libpng14.so.

Samsung Galaxy Mini (S5570)

Nebus čia nuotraukų, kaip atrodo šis telefonas nes ir taip jau pilnas internetas aprašimų (review), tuo labiau, kad šio telefono medelis nėra naujas. Pabandysiu aprašyti tai kas patiko, nepatiko, kokios problemos atsirado naudojant šį modelį.

Mano senasis SE W810i pradėjo kvailioti. Pokalbio viduryje paprasčiausiai išsijungdavo, kartais nereikėdavo pokalbio, išsijungdavo tiesiog gulėdamas ant stalo. Finansai niekad nedraskė piniginės, todėl pasidomėjęs išsirinkau Samsung Galaxy Mini.

Pirmas įspūdis neblogas. Patiko kaip jis sukonstruotas, patiko, kad galinis dangtelis yra grublėtas to pasekoje tvirtai laikosi rankoje, neslysta. Pasinaudojus kiek ilgiau išlindo bėdos:

* Telefonas paprasčiausiai užsilagindavo pačiuose keisčiausiose vietose. Ypač lėtai pradėjo startuoti skambučių žurnalas, nes po kurio laiko ten atsirado pakankamai daug įrašų.

* Nors pridėta atminties kortelė (SD) yra 2Gb dydžio, bet įrašius kažkiek programų, telefone pritrūko atminties. Pasirodo nesvarbu, kad programos įrašomos į SD kortelę, telefono atmintį jos vistiek naudoja.

* Na ir didžiausia problema, kuri pasireiškė daugeliui, bet pasirodo ne visiems, kad į dieną kelis kart išjungus/įjungus Wifi po kelių dienų jis paprasčiausiai neįsijungia. Problemos sprendimas – telefono perkrovimas.

* Samsung Lietuva vėžliškumas ruošiant programinės įrangos atnaujinimą. Nupirkus telefoną (tai buvo rugpjūčio galas) jis turėjo Android 2.2.1 versiją. Pasinaudojus Google paaiškėjo, kad jau daugelyje Europos valstybių buvo paruošti ir per KIES platinami atnaujinimai į 2.3.* versiją (kažkuriai valstybei atnaujinimas buvo išleistas jau liepos pabaigoje). Kaip vėliau paaiškėjo, lietuviškoji atnaujinimo versija atsirado lapkričio gale ir jei neklystu tai buvo 2.3.4 versija, kai tuo tarpu kitose valstybėse jau buvo 2.3.5 ir Lotinų amerikai 2.3.6

Kaip jau supratot, lietuviško, oficialaus atnaujinimo aš nesulaukiau. Pasinaudojau internete pateikiamais originalios programinės įrangos paketais ir jau rugsėjo mėn. turėjau android 2.3.4 versiją. Tai buvo Rusijos rinkai skirta programinė įranga kuri turėjo lietuvišką sąsajos vertimą bei lietuvišką klaviatūros išdėstymą. Po šio atnaujinimo telefonas pradėjo veikti lyg ir smagiau (arba tai buvo psichologinis efektas). Ir kas svarbiausia, dingo Wifi problemos. Dabar jį buvo galima junginėti kiek noriu ir jis visada įsijungdavo.

Po kelių savaičių per KIES atsirado oficialus atnaujinimas mano suinstaliuotam rusiškajam firmware. Atnaujinimas praėjo sklandžiai. Bet iškarto po procedūros pastebėjau, kad telefonas persikrauna. Tiesiog nieko nedarant, kas keletas dienų ima ir persikrauna. Pats linux branduolys lieka nepersikrovęs, kaip supratau persikrauna tik android’as. Dar vėliau pastebėjau, kad prisijungus prie daugelio AP (access point) ir aktyviau pasinaudojus bevieliu tinklu telefonas lygiai taip pat persikraudinėja. Kuo toliau tuo labiau šį problema pradėjo siutint. Smagu nors tiek, kad su naminiu AP veikė be problemų.

Kur buvus kur nebuvus pasirodė Turkišką programinės įrangos 2.3.6 versija. Sugalvojau pabandyti atsinaujinti, nes perkrovimo problemos jau buvo nusibodę. O atnaujinęs nustebau. Telefonas atsigavo! Toks vaizdas kad jam kas pridėjo CPU galios. Atsirakina akimirksniu, dingo visi laginimai “lygioje vietoje”. Atnaujinimu buvau labai patenkintas.. išskyrus vienu BET. Telefono sąsają turėjo lietuvišką vertimą, bet nebuvo lietuviško klaviatūros išdėstymo. Galvojau, kad pabandysiu naudotis taip kaip yra. Bet kartais tenka parašyti kokią forumo žinutę ar komentarą, o rašyti nesinaudojant lietuviškais simboliais man nesigauna (nors klaidų darau, bet bent jau nešvepluoju ;)). Taigi reikėjo rasti sprendimą kaip ten sukišti lietuvišką klaviatūros išdėstymą.

Ir pasirodo tai labai paprasta. Tiesiog reikia į /system/T9DB katalogą nukopijuoti bylas phonepad_lt.kdb qwerty_lt.kdb ir Samsung_400_LTIsUN_xt9.ldb. Žinoma, kad tai padaryti telefonas turi būti nurootintas ir /system turi buti permountintas į rašymo rėžimą (rw). Lietuviškos klaviatūros bylas galima pasiimti iš bet kurio kito Samsung telefono programinės įrangos paketo/telefono.

Po pusmečio naudojimo korpuse atsirado vienintelis trūkumas, tai šone esantys mygtukai (garso reguliavimo) pradėjo truputi klibėti. Klibėjimas labai švelnus. Žmogus paėmęs tokį telefoną pirmą kartą, turbūt net nepasakyti, kad ten kažkas negerai.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close