Mplayer on luultavasti paras videosoitin (ja mencoder paras kooderi)
Last modified on 24. heinäkuuta 2026 • 3 min read • 509 wordsKoska dunerec-ohjelmalla tallennetut videotiedot ovat jossain oudossa MPEG-muodossa, ne veivät melko paljon levytilaa. Kaksi tuntia vastasi noin 5 GB:tä. Siksi etsin helppoa tapaa muuntaa MPEG-tiedostot DivX-muotoon. Kun transcode-ohjelman kokeilut eivät tuottaneet tulosta, onnistuin asiassa mencoderin avulla. Mencoder sisältyy Mplayeriin , ja Suse Linux 9.1:lle on saatavilla RPM-paketti.
Ensimmäiseksi yritin koodata TV-tallennetta. Tein sen kahdessa vaiheessa, eli suoritin ensimmäisen komennon, odotin sen päättymistä ja suoritin sitten toisen komennon. Ainoa ero näiden kahden komennon välillä on vpass=1 ja vpass=2. Ensimmäisessä kierroksessa kooderi käyttää ilmeisesti vakiobittinopeutta, mutta tallentaa tiedot väliaikaistiedostoon, johon tallennetaan ne elokuvan osat, joiden yksityiskohdat on säilytettävä tarkemmin. Toisessa kierroksessa kooderi käyttää näitä tietoja laadullisesti paremman datan jakautumisen aikaansaamiseksi, mutta säilyttäen samalla tiedoston kokonaistiedostokoon. Käytin vain oletusasetuksia, ja laatu oli varsin surkea: mencoder YLE1.mpeg -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac mp3lame -lameopts vbr=3 -o /tmp/encode/output.avi mencoder YLE1.mpeg -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac mp3lame -lameopts vbr=3 -o /tmp/encode/output.avi Sitten kokeilin hieman monimutkaisempia asetuksia. Rajasin myös kuvaa, koska sen kaikilla sivuilla oli mustia raitoja (kyseessä oli laajakuvafilmi, ja lisäksi TV-korttini näyttää lisäävän mustia reunoja). mencoder -of avi -oac mp3lame -lameopts q=5:vbr=2:abr=128:aq=5:ratio=50:mode=1:vol=0 -ovc lavc -lavcopts vcodec=mpeg4 -vf crop=640:480:40:48 /home/jeltsch/YLE1.mpeg -o /tmp/encode/output.avi Laskin rajaamisen jotenkin väärin. dunerec tallentaa 720x576 pikselin muodossa, jos valitsee DVD-laadun. Seuraava rajaus leikkaa 40 pikseliä sekä vasemmalta että oikealta, 78 pikseliä ylhäältä ja 48 pikseliä alhaalta: mencoder -of avi -oac mp3lame -lameopts q=5:vbr=2:abr=128:aq=5:ratio=50:mode=1:vol=0 -ovc lavc -lavcopts vcodec=mpeg4 -vf crop=640:450:40:78 /home/jeltsch/YLE1.mpeg -o /tmp/encode/output.avi Lopulta käytin seuraavia asetuksia. Koodaus kesti ikuisuuden, mutta laatu oli erittäin hyvä (tiedoston koko pieneni 5,1 gigatavusta 1,3 gigatavuun): mencoder -of avi -oac mp3lame -lameopts q=5:vbr=2:abr=128:aq=5:ratio=50:mode=1:vol=0 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1200:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=1 -vf crop=680:430:20:88,hqdn3d=2:1:2 /home/jeltsch/YLE1.mpeg -o /tmp/encode/output.avi
Seuraavassa on selityksiä lippujen ja vaihtoehtojen merkityksistä:
-of avi: koodaa avi-muotoon
-oac mp3lame: koodaa mp3-äänikoodekilla käyttäen lame-ohjelmaa
-lameopts: lame-ohjelman asetukset
q: laatu asteikolla 0–9
vbr: vaihteleva bittinopeus
abr: keskimääräinen bittinopeus
aq:
ratio:
mode:
vol:
-ovc lavc: koodaa libavcodec-kirjaston koodekkeilla
-lavcopts: libavcodec-kirjaston asetukset
vcodec: videokoodekki
vbitrate: vaihteleva bittinopeus (käytännöllinen alue 500–3000, harvoin tarvitaan yli 2000)
-vf hqdn3d=2:1:2 käytä kohinanpoistosuodatinta (erittäin kevyt kohinanpoisto)
-vf crop=680:430:20:88 rajaa (alun perin 720x576-kokoinen) video kokoon 680x430; leikkaa vasemmalta ja oikealta 20 pikseliä, ylhäältä 88 pikseliä ja alhaalta 58 pikseliä
v4mv:mbd=2:trell parantaa laatua koodausajan kustannuksella
cmp=3:subcmp=3:mbcmp=3 epästandardi vertailufunktio
vpass=1 suorita kaksivaiheisen koodauksen ensimmäinen vaihe (sinun on toistettava sama komento uudelleen, vaihtamalla vain vpass=1 arvoksi vpass=2)
Suoratoistokoodaukseen käytin seuraavaa komentoa: dunerec -i 0 -a 479250 -t dvd -R - | mencoder - -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1200 -oac mp3lame -lameopts vbr=3 -o /tmp/encode/streaming.avi Jos rajaaminen on tarpeen (mikä on lähes aina tilanne): dunerec -i 0 -a 479250 -t dvd -R - | mencoder - -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1200 -vf crop=680:476:20:50 -oac mp3lame -lameopts vbr=3 -o /tmp/encode/streaming.avi
Nauhoitin televisiodokumentin ja halusin muuntaa MPEG-tiedoston eri formaatteihin ja laatuasteisiin lataamista varten. Valitsin matalan laadun MPEG-tiedoston sekä korkean ja matalan laadun DivX-tiedostot. Tässä ovat komennot:
Korkealaatuinen DivX: mencoder -of avi -oac mp3lame -lameopts q=5:vbr=2:abr=128:aq=5:ratio=50:mode=1:vol=0 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=300:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=1 -vf crop=680:426:20:76,hqdn3d=2:1:2 /tmp/movies/tutkittu_juttu_cut.mpg -o /home/jeltsch/smaller.avi Heikkolaatuinen DivX: mencoder -of avi -oac mp3lame -lameopts q=5:vbr=2:abr=128:aq=5:ratio=50:mode=1:vol=0 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=300:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=1 -vf crop=680:426:20:76,scale=340:213,hqdn3d=2:1:2 /tmp/movies/tutkittu_juttu_cut.mpg -o /home/jeltsch/smaller.avi Heikkolaatuinen MPEG: mencoder -of mpeg -oac copy -ovc lavc -lavcopts vcodec=mpeg1video:vpass=1 -vf crop=680:426:20:76,scale=340:213,hqdn3d=2:1:2 /tmp/movies/tutkittu_juttu_cut.mpg -o /home/jeltsch/smaller.mpg