View previous topic :: View next topic |
Author |
Message |
Danuvius Guru
Joined: 18 Sep 2004 Posts: 375 Location: Toronto
|
Posted: Wed May 04, 2005 2:27 pm Post subject: [HU] Kissebb / Jobb minõségû videók (H.264 codec): Teszt |
|
|
A H.264-es codec dramatikusan jobb minõséget hozz ki bármely adott bitrate-bõl. És természetesen ez azt jelenti hogy kissebb videó fájlokkal élvezhetünk jó minõségû videókat.
Legelsõ próbálkozásom egy 22 perces, 260 MB-os, TV-adás minõségû rajzfilmet sikeresen levitt 55 MB-ra. A vizuális minõség alig változott. A rajzfilm 97%-ban gyönyörû és tiszta maradt a videó. Itt ott kivilágosodásoknal/besötétedéseknél (fading in/fading out--van erre jobb magyar szó) viszont látható volt pár tizedmásodperces "kockásodás". De tisztes "tv-nézési" távolságból nézve ez nem különösen szembetûnõ.
Természetesen ez a méretnyereség további erénye az hogy míg az eredeti méretben egy CD-re 2 videó fér, az új méretben 12 fér rá (700 MB-os CD).
Rendes (nem rajzfilm) filmekkel még kisérletezek; úgyhogy nem tudok még errõl nyilatkozni. De a lenti magyarázat elég kezdõpont bárkinek saját kisérletezéséhez.
Az MEncoder ami a Gentoo portage-ba van sajnos nem használható eleve a H.264-es codec-el, úgyhogy más módon kell telepíteni.
De ha már megvan, ajánlom a következõt rajzfilmekhez:
Figyelem: az alábbi kód 3 soros, de lehet mert túl hosszú több sorra vetõdik. Minden sort az $ mencoder kezdi.
Code: | $ mencoder [i]eredeti.avi[/i] -oac copy -ovc x264 -x264encopts bitrate=160:frameref=10:4x4mv:subq=5:pass=1 -o /dev/null
$ mencoder [i]eredeti.avi[/i] -oac copy -ovc x264 -x264encopts bitrate=160:frameref=10:4x4mv:subq=5:pass=3 -o /dev/null
$ mencoder [i]eredeti.avi[/i] -oac copy -ovc x264 -x264encopts bitrate=160:frameref=10:4x4mv:subq=5:pass=3 -o [i]atkodolt.avi[/i] |
A hang csak másolva van itt (-oac copy)--természetesen avval is lehet játszadozni.
A bitrate az azt szabja meg mennyi kbit használható másodpercenként a videóban--minnél magasabb annál jobb a minõség és nagyobb a fájl.
A frameref (nem tiszta számomra száz százalék mit csinál) magasnak ajánlott rajzfilmekhez (15 a maximum).
A 4x4mv ajánlott a rajzfilmekhez--ezt használva a codec több módszert probál meg képrészek tömörítéséhez és azt választja amelyik a legjobb minõségû végeredményt produkálta. Bár nem érthem hogy/miért, azt írja a dokumentáció hogy esetekben árthat (feltételezem nem-rajzfilm filmeknél).
A subq a mozgásos részeket tudja feljavítani ha magasra állítod (5 a legjobb), de persze minnél jobb annál tovább tart.
A pass avagy "menet" jobb minõséget hozz ki úgy hogy többször is átmegy a videón, és minden alkalommal statisztikákat ír egy log-fájlba (és ha már létezik statisztika fájl, akkor az abban levõ statisztikákat is használja az új statisztikák készítéséhez). A három menetes kódolás ajánlott. És nem hibából van írva pass=3 a második menetbe is, a dokumentáció szerint ez így helyes.
No meg említem hogy a fenti parancsok szerint nem írja a videót a harmadik menetig--elõzõleg csak a statisztikák íródnak és a kijövõ videó anyag a /dev/null-ba írányítódik. Ez csak annyit tesz hogy felgyorsítja a folyamatot, mivel kevesebbet kell a merevlemezre írni.
---
Amint kidolgozom hogy lehet jól rendes filmeket átkódolni evvel; utánírom majd ide.
Amint kidolgozom hogy lehet változó bitrate-el videókat (rajzfilm vagy rendes film) átkódolni, azt is megírom. Elvileg a változó bitrate eltüntetheti a kockásodási hibákat abból az 55 MB-os átkódolt videó fájlból.
Last edited by Danuvius on Fri May 06, 2005 3:08 pm; edited 1 time in total |
|
Back to top |
|
|
Danuvius Guru
Joined: 18 Sep 2004 Posts: 375 Location: Toronto
|
Posted: Wed May 04, 2005 6:14 pm Post subject: |
|
|
Itt egy elegánsabb bash script:
mx264.sh
Code: |
#!/bin/bash
# használat:
#
# ./mx264.sh video.avi 160
# ^-- bitrate
# vagy:
#
# ./mx264.sh video.avi 160 qp_min=1:qp_max=51
# ^-- nem-kötelezõ extra paraméterek az -x264encopts számára
FAJL="$1"
BITRATE="$2"
PARAMETEREK="frameref=10:4x4mv:subq=5:$3"
AUDIO="-oac copy"
VIDEO="-ovc x264 -x264encopts bitrate=$BITRATE:$PARAMETEREK"
mencoder $FAJL $AUDIO $VIDEO:pass=1 -o /dev/null
mencoder $FAJL $AUDIO $VIDEO:pass=3 -o /dev/null
mencoder $FAJL $AUDIO $VIDEO:pass=3 -o $FAJL.x264-$BITRATE.avi
|
Aki még kezdõ a fájl engedélyekkel, a következõt kell csinálni:
1. Nyiss egy új fájlt a home könyvtáradon belül mx264.sh névvel.
2. Másold be a fenti kódot és mentsd el a fájlt.
3. Mint önmagad (nem kell root-nak lenni) írd be ezt a parancsot:
Code: | chmod u+x /home/a_te_neved/konyvtar_ahol_fajl_van/mx264.sh |
Innentõl fogva az mx264.sh futtatható--de pontosan kell célozni, még ha ugyanabban a könyvtárban tartózkodsz ahol van akkor is:
Ha az mx264.sh könyvtárjában vagy:
Code: | ./mx264.sh video.avi 160 |
Ha máshol vagy:
Code: | /home/a_te_neved/konyvtar_ahol_fajl_van/mx264.sh |
Persze be lehet tenni az mx264.sh-t tartalmazó könyvtárat a "path"-ba... de ez már más téma. |
|
Back to top |
|
|
ProTech Tux's lil' helper
Joined: 30 Dec 2003 Posts: 88 Location: Hungary
|
Posted: Thu May 05, 2005 2:37 pm Post subject: |
|
|
A H264 codec biztos nagyon jo, en meg nem probaltam. De nem lehet sokkal jobb mint egy XVID, az biztos. Az egesz beallitas kerdese, ezekrol oldalakat lehetne irni. Alltalaban nincs olyan beallitas ami mindenre jo.
Egyebkent ez a 260MB-rol 55 MB-ra nekem egy kicsit eros, ha az eredeti xvid volt es jo minosegu akkor valszeg meg volt az oka miert akkora. Egyebkent ennek a dolognak ugy lenne ertelme ha csinalnal a tobbi codecel is 55MB-os darabokat azt megnezni, melyik a jobb.
Lehet ilyen nagy tomoritest elerni, de akkor ha az eredeti nem valami agyontomoritett. Pl. mi 60 GB mjpeg-es avi-bol csinaltunk egy DVD-nyi MPEG2-ot. (2 ora Forma-1). Itt nagyon ossze lett nyomva, de az eredeti alig volt tomoritve.
A kockasodasrol meg anyit, hogy en kifejezetten nem birom elviselni, es ha a kepbe belenagyitva kozelrol kockakat latok akarhol, akkor novelem a bitrate-et. Egyebkent a kockak alltalaban a gyors valtasoknal jonnek elo. Amikor valt ket jelenet kozott, vagy gyors mozgas van. |
|
Back to top |
|
|
Danuvius Guru
Joined: 18 Sep 2004 Posts: 375 Location: Toronto
|
Posted: Thu May 05, 2005 2:55 pm Post subject: |
|
|
ProTech wrote: | A H264 codec biztos nagyon jo, en meg nem probaltam. De nem lehet sokkal jobb mint egy XVID, az biztos. Az egesz beallitas kerdese, ezekrol oldalakat lehetne irni. Alltalaban nincs olyan beallitas ami mindenre jo. |
Ha videó kódolás terén tudsz tanítgatni engem (minket?) én nagyon örülnék! Sajnos bár sok mindent csinálok e téren... kevés dolgot értek.
ProTech wrote: | Egyebkent ez a 260MB-rol 55 MB-ra nekem egy kicsit eros, ha az eredeti xvid volt es jo minosegu akkor valszeg meg volt az oka miert akkora. Egyebkent ennek a dolognak ugy lenne ertelme ha csinalnal a tobbi codecel is 55MB-os darabokat azt megnezni, melyik a jobb. |
Keresek egy rajzfilm "preview"-t és avval csinálok összehasonlítást. Tudsz ajánlani?
ProTech wrote: | Lehet ilyen nagy tomoritest elerni, de akkor ha az eredeti nem valami agyontomoritett. Pl. mi 60 GB mjpeg-es avi-bol csinaltunk egy DVD-nyi MPEG2-ot. (2 ora Forma-1). Itt nagyon ossze lett nyomva, de az eredeti alig volt tomoritve. |
Az eredeti úgy hiszem DivX volt--de mint mondtad nem sokat jelent a bizonygatásom egy tisztességes összehasonlítás nélkül. Úgyhogy megpróbálok csinálni egyet.
ProTech wrote: | A kockasodasrol meg anyit, hogy en kifejezetten nem birom elviselni, es ha a kepbe belenagyitva kozelrol kockakat latok akarhol, akkor novelem a bitrate-et. Egyebkent a kockak alltalaban a gyors valtasoknal jonnek elo. Amikor valt ket jelenet kozott, vagy gyors mozgas van. |
Én engedékenyebb vagyok nálad--de hát ez személyes kérdés. És igen, kockákat a jelenet váltásoknál látom. |
|
Back to top |
|
|
Danuvius Guru
Joined: 18 Sep 2004 Posts: 375 Location: Toronto
|
Posted: Thu May 05, 2005 3:18 pm Post subject: |
|
|
ProTech, mely mencoder paramterekkel csinaljam az XVid-et?
Az 55 MB-os fájl 160 bitrate-es volt H.264-el. |
|
Back to top |
|
|
ProTech Tux's lil' helper
Joined: 30 Dec 2003 Posts: 88 Location: Hungary
|
Posted: Thu May 05, 2005 3:42 pm Post subject: |
|
|
Danuvius wrote: | ProTech, mely mencoder paramterekkel csinaljam az XVid-et?
Az 55 MB-os fájl 160 bitrate-es volt H.264-el. |
Majd otthon, megprobalom megnezni milyen parameterrel lehet csinalni. Egyebkent van az mplayer sajat libavcodec-e amirol szinten jokat mondanak. Erre vannak peldak a doksiban is.
Egyebkent ha tobbet akarsz tudni video tomoritesrol akkor ajanlom a doom9.org-ot. Sok Windows-os cucc van fen, de a forumon van Linux-os szekcio is, ahol igen jo tutorialok vannak. Mellesleg van magyar valtozata is (doom9.hu), de nemtom menyire naprakesz. Ahogy elneztem a magyar foruma nem megy. |
|
Back to top |
|
|
Danuvius Guru
Joined: 18 Sep 2004 Posts: 375 Location: Toronto
|
Posted: Fri May 06, 2005 3:27 am Post subject: |
|
|
Csináltam egy összehasonlítást. Itt található:
http://gentoo.spinarette.com/
Mint írom a lapon, gyanusan úgy tünik mintha a H.264-es klipeknek alacsonyab <b>framerate</b>-jük lenne... mindenesetre a 320 bitrate-es H.264 hasonlóan (ha nem jobban) néz ki mint a 640 bitrate-es XviD.
ProTech mit gondolsz? Nagyon béna vagyok a paraméterek választásában?
Hozzá kell tennem hogy közelebbrõl megnézve az (elsõ hozzászólásban említett) 55 MB-os klipben, valóban látható a különbség annak eredetijétõl. De attól függetlenül dramatikus. Azt kb ugyanolyan felbontású klipbõl készítettem mint a fenti tesztet, de 160 bitrate-el. Amikor lesz idõm, felrakok 160 bitrate-es klipeket és jpeg-eket a tesztben használt kliprõl. |
|
Back to top |
|
|
Danuvius Guru
Joined: 18 Sep 2004 Posts: 375 Location: Toronto
|
Posted: Fri May 06, 2005 3:58 am Post subject: |
|
|
Danuvius wrote: | Mint írom a lapon, gyanusan úgy tünik mintha a H.264-es klipeknek alacsonyab <b>framerate</b>-jük lenne... mindenesetre a 320 bitrate-es H.264 hasonlóan (ha nem jobban) néz ki mint a 640 bitrate-es XviD. |
Talán a jpeg kimenet az mplayer-nél csak bizonyos tipusú frame-eket dob ki jpeg-ként. (I-frames, keyframes, P-frames, stb.) Mit gondolsz, ProTech? |
|
Back to top |
|
|
ProTech Tux's lil' helper
Joined: 30 Dec 2003 Posts: 88 Location: Hungary
|
Posted: Fri May 06, 2005 7:48 am Post subject: |
|
|
Megneztem a ket codec kozti kepeket es a videokat. Az egyik dolog az, hogy a h264-et siman lejatszotta a 1.0_pre6-r5 portage-ben levo mplayer. Kicsit utannaolvasva rajottem, hogy maga a codec a h264 es ezt az mplayer lejetsza alapbol. A tomoriteshez kell x264 ami egy h264-es videot csinal. Szoval csak azoknak kell az az ebuild ami nincs a portagebe akik tomoriteni akarnak.
Az konyen elkepzelheto, hogy csak I frameeket ad ki a mpayer jpeg kimenete, mondjuk nem teszteltem.
Meg behatoan nem tudtam tanulmanyozni a klippeket, de mplayer szerint mindketto 30fps-es. Ami elsore latszott, hogy az x264 elmossa a kepet, ami segiteni szokott a tomoriteskor. Eleg meggyozo volt a kulombseg az XviD meg az x264 kozott, mondjuk ez lehet beallitasi gondok miatt is, de nem ismerem anyira ezeket a codec-eket, hogy segiteni tudjak benne.
Szoval nekem tetszik egyenlore ez a x264. Csak az a baj, hogy mostanaban mindent MPEG2-be rakok el, nagy bitrate-en, igy nem tudom mire hasznalni. De eszben fogom tartani, ha valamit nagyon osze kell nyomni. |
|
Back to top |
|
|
Danuvius Guru
Joined: 18 Sep 2004 Posts: 375 Location: Toronto
|
Posted: Mon May 09, 2005 6:28 pm Post subject: |
|
|
Figyelem: Sokkal gyorsabban megy az átkódolás ha csak videó van az átkódolandó klippben.
ProTech wrote: | Szoval nekem tetszik egyenlore ez a x264. Csak az a baj, hogy mostanaban mindent MPEG2-be rakok el, nagy bitrate-en, igy nem tudom mire hasznalni. De eszben fogom tartani, ha valamit nagyon osze kell nyomni. |
Nem adna a H.264-es codec azonos minõséget kevesebb bitrate-el és kissebb méretben? Vagy félreértettelek?
Nem kell olyan orulten csinalni mint en. Mehetsz egy 1600-as MPEG2-bol egy 1200-as MPEG4-be (avagy H.264-be). Ha nem is feleakkora, de kissebb lesz. |
|
Back to top |
|
|
ProTech Tux's lil' helper
Joined: 30 Dec 2003 Posts: 88 Location: Hungary
|
Posted: Mon May 09, 2005 6:46 pm Post subject: |
|
|
Danuvius wrote: | Nem adna a H.264-es codec azonos minõséget kevesebb bitrate-el és kissebb méretben? Vagy félreértettelek? |
De adna, sot sok minden adna jobb bitrate-et egy 4MBit-es MPEG2-nel.
Vagy DVD-t csinalok belole (forma-1), aminek menuje van es hasonlok. Arra csak az MPEG2 jo (Asztali lejatszok).
Vagy digitalis muholdvevovel veszek fel klippeket, es azok alapbol MPEG2-ben jonnek. Nem tomoritem at oket, mert meretileg nekem megfelel, es attomoritessel csak ronthatok a minosegen, es nalam a minoseg a fo szempont. A mai DVD arak mellett siman kibirom
Amig meg volt HDTV az Astra-n vettem fel belole poenbol 1920 x 1080 felbontas 20Megabit/sec MPEG2, 3 perc 460MB. Na az a nem semmi De nagyon durvan nez ki, a DVD-nel 5x nagyobb a felbontasa |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|