nvidia "tearing"

Fórumok

HTPC-t építek linux alapokon és már elég sok buktatón túljutottam, de most egy újabb problémába ütköztem. Jelenleg egy nvidia 9400-as kártyám van, ahol lejátszáskor nagyon erős tearing volt a képen (a kép két darabra törik, mintha vízszintesen két félképből állna a kép egymáshoz képest picit elcsúszva.) Minden lejátszóprogram produkálta a hibát, bár alapvetően mőlayert akarok majd használni mythtv frontenddel. Sehogy sem tudtam eltüntetni, míg végül felhívták erre a linkre a figyelmemet.

http://blog.mymediasystem.net/my-media-system/tearing-with-nvidia-dirve…

Nekem picit zavaros a leírás, de végül is a leírás alapján találtam megoldást. Az opengl részben, ha bepipálom a sync to vblank opciót, akkor teljesen eltűnik a tearing. Az opengl kimenet elve jobb képet adott, de azért gondoltam megnézem xv kimenettel is. Csodálkoztam, hogy ott is megoldja a problémát. Nem teljesen értem, hogy hogyan függ össze a két dolog, de nem is törődtem vele, lényeg, hogy megszabadultam a hibától. A probléma ott kezdődik, hogy az nvidia-settings-ben beállítottakat nem jegyzi meg a rendszer. Olvasgattam és azt találtam, hogy a ~.nvidia-settings-rc fájlban tárolt beállításokat az nvidia drivere feolvassa. Nosza lementettem, és próbáltam megkeresni a beállítást a fájlban, de nem találtam. Gondoltam biztos ott van valahol, csak nem találom. Újraindítottam a gépet, de nem olvasta fel. Ezek után próbáltam betölteni paparcssorból nvidia-settings --load-config-only --config=~.nvidia-settings-rc, de nem töltődött be semmi.

Két eset van vagy valamit rosszul csinálok vagy egyszerűen nem menti le a beállítást.

Tud valaki erre valami megoldást?

esetleg környezeti változót kellene állítani?

Hozzászólások

most olvastam. Most a laptopomon írok és nem a htpc-s gépen, ezért nem tudom kipróbálni, de kíváncsi lennék másoknál működik-e, az alábbi dolog.

Vblank syncing

Setting the environment variable __GL_SYNC_TO_VBLANK to a non-zero value will force glXSwapBuffers to sync to your monitor's vertical refresh (perform a swap only during the vertical blanking period).

When using __GL_SYNC_TO_VBLANK with TwinView, OpenGL can only sync to one of the display devices; this may cause tearing corruption on the display device to which OpenGL is not syncing. You can use the environment variable __GL_SYNC_DISPLAY_DEVICE to specify to which display device OpenGL should sync. You should set this environment variable to the name of a display device; for example "CRT-1". Look for the line "Connected display device(s):" in your X log file for a list of the display devices present and their names. You may also find it useful to review Chapter 13, Configuring TwinView "Configuring Twinview" and the section on Ensuring Identical Mode Timings in Chapter 19, Programming Modes.

Na sikerült megkerülnöm a problémát, de ez az egész akkor is furcsa.

Az

nvidia-settings -a "property név=érték"

Hívással beíródik a megfelelő beállítás. A .bashrc fájlba beletettem a 4 szükséges hívást és az működik. A property beállításokat a lementett .nvidia-settings-rc állományból szépen kipuskáztam. Az is furcsa, hogy állítom a gammát is, és ezt ugye három színre külön-külön menti színenként külön property név alá. Az értékek, pedig ha mondjuk a gammát 1.5-re állítom, színenként 1.5. Ha viszont kiadom parancsba az 1.5-öt nem fogadja el csak az 1,5-öt. A látott képen látszik is, hogy változik a gamma, de az nvidia-settings programot elindítva ott nem látszik. Hát az nvidia sem áll a helyzet magaslatán a beállítóprogramjaival az biztos. Ez a vessző vs pont mizéria szinte biztosan a regional settings magyar voltából adódik.

Mindenesetre így megkerültem a problémát.

Azt még mindig nem értem mi a köze az opengl alatti beállításnak az xv alatti működéshez, amikor ott külön beállítás van erre, de annak nincs pozitív hatása.

Kicsit zavaros ez nekem, az nvidia-settings progi nem menti el a beállításokat a ~.nvidia-settings-rc-be? Ha ez a problem, olyan alap butaságokat, mint a beállító felület root-ként futtatása, illetve a ~.nvidia-settings-rc jogosultságainak ellenőrzése, főképp azirányban, hogy van-e jogod írni bele, szóval ezeket megnézted? Mert nekem működik...

---------------------------------------------------------------------------------
A Linux nem ingyenes. Meg kell fizetni a tanulópénzt.
Az emberek 66 százaléka nem tud számolni! Gondoljatok bele, ez majdnem a fele!!

Én is éppen ezzel szenvedtem ma.
Próbáld ki a VDPAU-t, gyönyörű és a 9400 bőven elég neki, processzorhasználat gyakorlatilag nincs (HD videóknál tearing sincs, divix-en még dolgozom).

Kipróbálom majd a vdpau is, de a kérdés a minőség. Én vetítek vele és hozzá vagyok szokva a szép postprocesselt képhez. Windows alatt ffdshow+avisynth scripteket képjavító használok. pl. ott is a coreavc kisebb teljesítménnyel is beéri, de gyengébb képet ad. Legalább olyan képet akarok ami windows alatt van, mert ha nem kapok akkor sajnos nem tudok megszabadulni a windowstól. Ezért kínlódok az mplayerrel, mert ott van remény rá. Csináltam is már elfogadható képet miután ezt a borzalmas tearinget sikerült eliminálni.

Tudom offtopic vagyok már, de folytatnám.

Hát egy plazmán biztosan gyönyörű, úgy 140cm képátlóig nincs is gond egy 720p, 1080p forrással, viszont 2 méter feletti vetített képátlónál bizony minden látszik. :)

A vpdau nálam csak az xbmc alatt ment, de ott a kép nekem nem tetszett, ezért az egész xbmc frontendet elvetettem. Az xbmc alá ugyan be tudtam hegeszteni az mplayert, de az xbmc valahogy mindig az előtérben volt és az mplayer képét kitakarta. nem tudtam megoldani, hogy ne így legyen. Próbáltam a vpdau kimenetet megadni mplayer alatt, de nekem hibára futott. Biztosan kell valami plusz beállítás is.

Be tudnád tenni ide az mplayer.conf-odat?

Kipuskáznám belőle, hogy hogyan kell beállítani.

Nyitnom kéne egy új topicot, de utoljára rákérdeznék, hogy milyen htpc frontendet javasolsz?

Az xbmc jó lett volna, de a képminősége nem jó, és nem lehet rendesen mplayert alá tenni, továbbá továbbá fagy is állandóan.

A mythv-vel az a bajom, hogy túlságosan tv-re van kihegyezve, meg arra, hogy nagy mozikönyvtárakat építünk borítókkal.

A freevo nem lenne rossz, de kb. ugyanolyan idegesítő a fájlkiválasztó része, mint a mythtvnek.

A geekbox az kb. a freevo a screenshotok alapján, és ráadásul egy komplett isoból kell feltenni, ezért nehezen tudom kipróbálni.

Moovida az számomra egy borzadály volt.

Nekem a windowsos zoomplayer-hez hasonló kéne.

-távval irányítható legyen
-legyen képnézegető része, azaz legalább tudjon képet megnyitni és távgombról előre hátra lépkedni a képek között
-mplayer legyen a lejátszó program
-legyen normális fájkiválasztó része ami egy egyzserű lista ahol tudok mászkálni a könyvtárak között

A

Mplayer vdpau-ra fordított változata kell, ubuntu-ra elérhető extra repo-ból, google megmondja. Utána már csak egy -vo vdpau kapcsoló kell neki, de confba is beírható:
subcp = windows-1252
subfont-text-scale = 3
subfont-osd-scale = 4
font=/home/b/.mplayer/subfont.ttf
#vf=expand=0:-40:0:0
fs=1
nojoystick = yes
#unicode=yes
#utf8=yes
vo=vdpau,xv,
vc=ffh264vdpau,ffvc1vdpau,
#subcp=utf8
cache=30000

Én tulajdonképpen ebben már nem tudok segíteni, ezeket a média center alkalmazásokat nem ismerem, sosem használtam őket.
De valaki hátha...

Találtam pár leírást és ott a forrásból való fordítást favorizálják, de van aki ajánlott repot ahonnan le lehet tölteni.

Itt van a fórumrész ami erről szól

http://ubuntuforums.org/showthread.php?t=1037625&page=11

Itt van a repo amit ott ajánlott valaki

https://launchpad.net/~brandonsnider/+archive/ppa

Te mit javasolsz?
Meg tudod mondani pontosan melyik repot használjam?

Kicsit kezdő vagyok a linuxban, de erősen tanulom. :)

Az enyém ez:
deb http://www.avenard.org/files/ubuntu-repos release (bár nekem jelenleg a testing van a 190-es nvidia driver miatt)

Fordítani én is próbáltam, de ismeretlen okokból mindig elszáll a make, nem erőltettem tovább.

http://ubuntuforums.org/showthread.php?t=1037625
Ez a leírás jó, én is ez alapján csináltam a többit.

Linux-on a fullhd lejátszás egyenlőre beta elégé, én széttuningolt ubuntuval, beta nvidia driver-el, smplayer-el, mplayer-el, vdpau kimenettel értem el hogy jól működik.

Ubuntu 9.04 - Kernel: Linux 2.6.30-10-generic x86_64 - CPU modell : AMD Athlon(tm) II X2 250 Processor 3 GHz - Memória : 4017M - Videókártya : nVidia Corporation GeForce 9800 GT (rev a2 ] - X.Org : 1.6.3 - NVIDIA Driver Version: 190.18.03 - MPlayer SVN-r29375-4.3.3 (C) Amúgy jól halad a fejlesztés, szinte napról napra jobb. Ha érdekel egy sources.list, és egy xorg.conf, privátban keress meg.

--------------------------------------------------------------------------------
A Linux nem ingyenes. Meg kell fizetni a tanulópénzt.
Az emberek 66 százaléka nem tud számolni! Gondoljatok bele, ez majdnem a fele!!

Az valóban nem, de kernelcsere, nvidia driver cseréje, xorg lib-ek cseréje, és pár dolog, ami még nem látszik, az már szerintem igen. Gyakorlatilag a gyári csomagok 45% le van cserélve nálam, múltkor megnéztem.

---------------------------------------------------------------------------------
A Linux nem ingyenes. Meg kell fizetni a tanulópénzt.
Az emberek 66 százaléka nem tud számolni! Gondoljatok bele, ez majdnem a fele!!

Nézőpont kérdése. Nálam a 2.6.30-as kernel pl stabilabb, mint a "gyári" rendszerrel érkező. Így most jó a gépem, minden működik, a video lejátszás pl szebb, mint windows rendszeren. Erősen agyalok amúgy egy rolling relase rendszeren, mint amilyen az Arch, unom a félévente történő telepítési mizériát.

---------------------------------------------------------------------------------
A Linux nem ingyenes. Meg kell fizetni a tanulópénzt.
Az emberek 66 százaléka nem tud számolni! Gondoljatok bele, ez majdnem a fele!!

A frontend-re mit használsz?

Az xbmc-n kívül nem találtam használható frontendet, de ott az mplayert nem tudtam normálisan alátenni, mert az xbmc felületétől nem látszott az mplayer által lejátszott film képernyője.

Van erre valami ötleted?

Még egy kérdés?

A vdpau-val való lejátsuás esetén is mennek a filterek?

Én nem htpc-nek használom a gépem, így smplayer-el nézem a filmeket. Nekem bevált.

Hamár vdpau és PPA, ezt-> http://www.xbmc.org/forum/showthread.php?t=33327 nézted már?

---------------------------------------------------------------------------------
A Linux nem ingyenes. Meg kell fizetni a tanulópénzt.
Az emberek 66 százaléka nem tud számolni! Gondoljatok bele, ez majdnem a fele!!

Az xbmc-vel az a gond, mint fentebb is írtam, hogy egy saját fejlesztésű belső lejátszót használnak, amit dvdplayer-nek hívnak, mert ugye régen a dvd volt a fő forrás és a név megmaradt. A dvdplayer is az ffmpeg és az mplayer kódjára épül, de nem könyvtárszinten ahsználja őket, hanem forrásszinten. A képjellemzőkbe ezért nem lehet úgy belenyúlni, mint az mplayer esetében. A látott eredmény szerintem pocsék egy projektoron. Egy "átlagos" 90-100cm tv-n valószínüleg nem érdekes, mert hd tartalom esetén a kép elegendően jó, de egy 2 méter körüli képátlón nagyon elmarad a kép attól amit windowson nézek.

A frontend fontos, mert egyfelől megszoktam már a kényelmes távról kezelést, másfelől nem csak én használom hanem a feleségem.

A frontend tekintetében nem vagyok nagy igényű, mert simán megfelel nekem a zoomplayer amit windows alatt ahsználok. Annak van rendes file browser-je ami távra van optimalizálva. Sajnos ehhez hasonlót linuxon nem találtam. Ha az xbmc-t alá be lehetne normálisan teni az mplayert, hogy működjön és a vdpau-val dekódolt képet még tudom postprocesselni, akkor bizony ráfekszem a linuxos htpc-re, mert megéri.

Mostmár baszta a csőröm, felraktam az általam linkelt ppa-s repo-ból az xbmc-t. Fullhd-t akadás nélkül viszi.

---------------------------------------------------------------------------------
A Linux nem ingyenes. Meg kell fizetni a tanulópénzt.
Az emberek 66 százaléka nem tud számolni! Gondoljatok bele, ez majdnem a fele!!

Ha nincs vele gond ergo viszi, akkor mi lehet a hiba? Miket látsz, amiket kis képernyőn nem lehet?
Mennyire szubjektív a képminőség-érzékelőd? :)
Milyen post-process kapcsolókat, filtereket használsz/használnál?
Hátha nekem is sikerül valamit reprodukálnom.

Egyébként a nagy kijelző esetén szerintem nem pusztán a méret számít, hanem a natív felbontás, a kivetített pixelméret.
Pl 2m körül az 1024x768 már borzasztóan kevés, de biztosan lehet olyat is építeni, ahol már a fullhd 1080p is kicsi, mert észlelhetőek a részletek, a pixelhatárok. Ilyen esetben már az sem mindegy, hogy a tartalom mennyire durván van kódolva. Szép dolog az AVC, de egy blu-ray-t 2-3 GB-ra már összenyomni nem egészséges.

Hát ezt nehéz megfogalmazni, de erősen offtopic lenne, mivel én windowsos platformon valósítottam meg és alapvetően ahhoz értek.

A vetítőm 1280x720-as felbontású amit elegendőnek érzek (ezzel persze sokan vitatkoznak), de a képet postprocesselem is, egy limitedsharpenfaster metódussal, de van rengeteg olyan is amitől az én konfigom letérdel, de erősebb gépen használják.

http://avisynth.org/LimitedSharpen

Ez egy avisynth script ami egy script alapú videófeldolgozó nyelv. Igazából az enkódolás alatt hasznáják, de processor teljesítménytől függően lehet valósidejű képjavításra is használni. én már a dvd időkben is htpc-t használtam, mert jobb képet tudtam csinálni ezekkel a speciális képjavító eljárásokkal, mint a legdrágább 300-400es dvd lejátszókkal. A 720p HD anyagokat is feljavítom és jobban néznek ki, mint a 1080p anyagok.

Sajnos a linux tábor kicsisége itt is látszik, mert a windowsos video fórumokon azokról vitatkozunk milyen algoritmussal és milyen paraméterezéssel érdemes beállítani, itt meg és kész és örüljünk neki.

Próbáltam a repóból lehúzott xbmc-vel is, de sajnos ha külső őlayert teszek alá az mplayer képe a háttérben marad és az xbmc-t, csak egy másik konzolból tudom kilőni. Az xbmc-n kívül pedig nincs normális frontend sajnos.

Egy jó mkv rip ami 6-8 giga szinte megkülönböztethetetlen egy natív blu-ray képétől. Teszteltem.