Mercurial > mplayer.hg
view DOCS/hu/encoding.html @ 11189:8b43f6485ac0
obsolete
author | diego |
---|---|
date | Mon, 20 Oct 2003 13:27:58 +0000 (2003-10-20) |
parents | f40a897cb276 |
children | a9dd06d780b8 |
line wrap: on
line source
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <LINK REL="stylesheet" TYPE="text/css" HREF="../default.css"> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2"> </HEAD> <BODY> <H2><A NAME="encoding">7 Enk�dol�s a MEncoderrel</A></H2> <P>A rendelkez�sre �ll� opci�k �s p�ld�k teljes list�j�t l�sd a man page-ben. Sz�mos p�lda �ll rendelkez�sre a k�l�nb�z� opci�kr�l a <A HREF="../tech/encoding-tips.txt">tech/encoding-tips.txt</A> file-ban. Ezek a p�ld�k az <A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-users">mplayer-users</A> levelez�si list�r�l lettek kigy�jtve, �gy �rdemes lehet ezen lista <A HREF="http://mplayerhq.hu/pipermail/mplayer-users/">arch�vum�t</A> b�ng�szgetni inf皷rt.</P> <H2><A NAME=2pass>7.1 2, 3 menetes MPEG4 ("DivX") enk�dol�sa</A></H2> <P><U><B>2 menetes enk�dol�s:</B></U> az elnevez�s onnan j�n, hogy ezzel a m�dszerrel a file <I>k�tszer</I> lesz enk�dolva. Az els� menet n�h�ny p�r Mb-os ideiglenes (*.log) file-t hoz l�tre, amiket egyel�re nem szabad t�r�lni (az AVI t�r�lhet�, ugyanolyan mintha -pass opci�k n�lk�l keletkezett volna). A m�sodik menetben keletkezik a t�nyleges 2 menetes DivX, az ideiglenes file-ok adataib�l. A keletkez� file az egy menetesekhez k�pest sokkal jobb min�s�ggel �s kisebb m�rettel b�r. Ha most hallassz err�l el�sz�r, jobb ha keresel a neten egy �tmutat�t.</P> <P>A k�vetkez� p�lda egy DVD 2 menetes MPEG4 ("DivX") AVI-ba t�rt�n� enk�dol�s�t mutatja be. Csak k�t parancs sz�ks�ges:<BR> <CODE> rm frameno.avi</CODE> - t�r�ld ezt a file-t, ami egy esetleges el�z� 3 menetes enk�dol�sb�l sz�rmazhat<BR> <CODE> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:opci�k -oac copy -o film.avi -pass 1<BR> <CODE> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:opci�k -oac copy -o film.avi -pass 2<BR> <P><U><B>3 menetes enk�dol�s:</B></U> ez egyfajta b�v�tett k�tmenetes enk�dol�s. A k�l�nbs�g abban �ll hogy itt az audio enk�dol�sa k�l�n menetben t�rt�nik, ez�ltal lehet�v� v�lik annak megbecsl�se hogy az adott filmet milyen bitr�t�val kell t�m�r�teni hogy r�f�rjen egy 650, 700 vagy 800Mb-os CD-re, �s ezt a <B>MEncoder</B> ki is sz�molja. Tov�bb�, ilyenkor az audio csak egyszer ker�l enk�dol�sra, ellent�tben a 2 menetes m�ddal. A haszn�lata a k�vetkez�:</P> <OL> <LI>egy esetleges el�z� 3 menetes enk�dol�sb�l sz�rmaz� file t�rl�se, mely konfliktolhat a most k�vetkez�vel <P><CODE>rm frameno.avi</CODE></P></LI> <LI>Els� menet: <P><CODE>mencoder <file/DVD> -ovc frameno -oac mp3lame -lameopts vbr=3:opci�k -o frameno.avi</CODE></P> <P>Egy csak audiot tartalmaz� AVI file j�n l�tre, ami a k�rt form�tumban tartalmazza az audio streamet. Ha akarod haszn�lhatod a <CODE>-lameopts</CODE> opci�t. Ha ez egy hosszabb film, e menet v�g�n a MEncoder ki�rja hogy mekkora bitrate-tel t�m�r�ts a k�vetkez� menetekben hogy a film r�f�rjen egy 650, 700 vagy 800Mb-os CD-re.</P></LI> <LI>M�sodik menet: <P><CODE>mencoder <file/DVD> -oac copy -pass 1 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=<bitr�ta></CODE></P> <P>Alias az MPEG4 video enk�dol�s els� menete. Opcion�lisan megadhatod azt a bitrate-et amit a MEncoder az el�z� menet v�g�n ki�rt, l�sd feljebb.</P></LI> <LI>Harmadik menet: <P><CODE>mencoder <file/DVD> -oac copy -pass 2 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=<bitr�ta></CODE></P> <P>Alias az MPEG4 video enk�dol�s m�sodik menete. Add meg azt a bitrate-et amit a MEncoder az el�z� menet v�g�n ki�rt, l�sd feljebb. Ebben a menetben a <CODE>frameno.avi</CODE>-ban lev� audio beleker�l a c�lfileba.. �s k�sz is az eg�sz!</P></LI> </OL> <H4>P�lda a 3 menetes enk�dol�sra:</H4> <P><CODE> rm frameno.avi</CODE> - esetlegesen egy el�z� enk�dol�sbol sz�rmaz� file t�rl�se (bezavar a most k�vetkez�nek)<BR> <CODE> mencoder dvd://2 -ovc frameno -o frameno.avi -oac mp3lame -lameopts vbr=3:opci�k<BR> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1100 -oac copy -o movie.avi -pass 1<BR> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1100 -oac copy -o movie.avi -pass 2</CODE> </P> <H2><A NAME="mpeg">7.2 Enk�dol�s MPEG form�tumba</A></H2> <P>A MEncoder k�pes MPEG (MPEG-PS) form�tum� kimeneti file-t gener�lni. Ez persze val�sz�n�leg csak a <a href="codecs.html#libavcodec">libavcodec</a> <I>mpeg1video</I> codec-�vel hasznos, mert (az MPlayer-t kiv�ve) minden lej�tsz� MPEG1 video, �s MPEG1 layer2 (MP2) audio stream-re sz�m�t az MPEG file-okban.</P> <P>A MEncoder ezen k�pess�ge jelenleg nem t�l hasznos, mert - att�l eltekintve hogy m�g el�gg� bugos is -, m�g nem lehet MPEG 1 layer 2 (MP2) audio-ba enk�dolni MEncoderen bel�l, m�rpedig az MPEG file-okba az esetek 99%-�ban ez kell.</P> <P>A MEncoder kimeneti form�tum�nak megv�ltoztat�s�ra az <CODE>-of mpeg</CODE> opci� szolg�l.</P> <P>P�lda:<BR> <CODE>mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video -oac copy <other options> media.avi -o output.mpg</CODE></P> <H2><A NAME=rescaling>7.3 Filmek �tm�retez�se</A></H2> <P>Gyakran el�j�n a filmek �tm�retez�s�nek ig�nye. Ennek sok oka lehet, p�ld�ul a filem�ret cs�kkent�se, illetve a sz�ks�ges h�l�zati s�vsz�less�g cs�kkent�se. A legt�bb ember �tm�retez�st hajt v�gre DVD-k vagy SVCD-k DivX AVI-ba t�rt�n� konvert�l�sa sor�n. <B>Ez helytelen.</B> Miel�tt te is ilyen megold�sra vetemedn�l, olvasd el az <A HREF="#aspect">Aspect ratio meg�rz�se</A> fejezetet.</P> <P>Az �tm�retez�st a <I>'scale'</I> nev� video filter v�gzi: <CODE>-vf scale=X:Y</CODE>. A min�s�g�t pedig az <CODE>-sws</CODE> opci�val lehet megadni (l�sd a manpage-t). Alap�rtelmezett a 0: gyors bilinear.</P> <P>Haszn�lata:<BR> <CODE> mencoder sample-svcd.mpg -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1300 -vf scale=640:480 -oac copy -o output.avi</CODE></P> <H2><A NAME=copying>7.4 Stream m�sol�sa</A></H2> <P>A <B>MEncoder</B> k�tf�lek�ppen tudja a bemeneti stream-eket kezelni: <B>enk�dolja</B> vagy csak <B>�tm�solja</B> �ket. Ez a r�sz a <B>m�sol�sr�l</B> sz�l.</P> <UL> <LI><B>Video stream-ek</B> (<CODE>-ovc copy</CODE> opci�): �rdekes dolgokat lehet vele csin�lni :)<BR> Mint p�ld�ul FLI vagy VIVO vagy MPEG1 video m�sol�sa AVI file-ba! Persze az ilyen videokat csak az <B>MPlayer</B> tudja lej�tszani :) �s ezeknek a haszna gyakorlatilag nulla. A racion�lis felhaszn�l�sa ennek p�ld�ul amikor csak az audio stream-et kell enk�dolni (pl t�m�r�tetlen PCM-et MP3-ba).</LI> <LI><B>Audio stream-ek</B> (<CODE>-oac copy</CODE> opci�): egy�rtelm�. Lehets�ges az audio streamet egy k�ls� fileb�l (MP3, WAV) venni, ehhez az <CODE>-audiofile <filen�v></CODE> opci�t kell haszn�lni.</LI> </UL> <H2><A NAME=fixing>7.5 Hib�s index-szel rendelkez� AVI-k rendbehoz�sa</A></H2> <P>A legk�nnyebb dolog a vil�gon. Egyszer�en �tm�soljuk a video �s audio streameket, �s k�zben a <B>MEncoder</B> l�trehozza a megfelel� indexet is. Ez persze nem tudja kijav�tani az esetleges hib�kat a video �s/vagy audio stream-ekben, viszont a hib�san interleave-elt fileokat igen.</P> <P>A parancs: <CODE>mencoder -idx input.avi -ovc copy -oac copy -o output.avi</CODE></P> <H3><A NAME=appending>7.5.1 T�bb AVI file �sszef�z�se</A></H3> <P>Az index jav�t� funkci� mell�khat�sk�nt megold�st jelent AVI-k �sszef�z�s�re is:</P> <P>Parancs: <CODE>cat 1.avi 2.avi | mencoder -noidx -ovc copy -oac copy -o kimenet.avi -</CODE></P> <P>Megjegyz�s: Az <CODE>1.avi</CODE> �s <CODE>2.avi</CODE> file-ok azonos codec-kel, felbont�ssal, frame rate-tel kell rendelkeznie, �s az <CODE>1.avi</CODE>-nak nem szabad hib�snak lennie. A hib�s file-ok jav�t�s�nak folyamata a 7.5-�s fejezetben van le�rva.</P> <H2><A NAME=libavcodec>7.6 Enk�dol�s a <I>libavcodec</I> codec-ekkel</A></H2> <P>A <A HREF="codecs.html#libavcodec">libavcodec</A>-kel egyszer�en lehet k�dolni j�n�h�ny �rdekes video �s audio form�tumba (jelenleg az audio codec-ek nem t�mogatottak). A k�vetkez� codec-ekkel lehet enk�dolni:</P> <UL> <LI>mjpeg - Motion JPEG</LI> <LI>ljpeg - Lossless JPEG</LI> <LI>h263 - H263</LI> <LI>h263p - H263 Plus</LI> <LI>mpeg4 - ISO szabv�nyos MPEG4 (DivX5, XVID kompatibilis)</LI> <LI>msmpeg4 - szabv�nyos�t�s el�tti MPEG4 (Micro$oft), v3 (alias DivX3)</LI> <LI>msmpeg4v2 - szabv�nyos�t�s el�tti MPEG4 (Micro$oft), v2 (r�gi ASF file-okban)</LI> <LI>wmv1 - Windows Media Video, 1-es verzi� (alias WMV7)</LI> <LI>wmv2 - Windows Media Video, 2-es verzi� (alias WMV8)</LI> <LI>rv10 - egy r�gi RealVideo codec</LI> <LI>mpeg1video - MPEG1 video</LI> <LI>mpeg2video - MPEG2 video</LI> <LI>huffyuv - vesztes�gmentes t�m�r�t�s</LI> <LI>asv1 - ASUS Video v1</LI> <LI>asv2 - ASUS Video v2</LI> <LI>ffv1 - az FFmpeg saj�t vesztes�gmentes codec-e</LI> </UL> <P>Az els� oszlopban felsorolt codec-eket kell �tadni a <CODE>vcodec</CODE> opci�nak, pl: <CODE>-lavcopts vcodec=msmpeg4</CODE></P> <P>Egy p�lda, MJPEG t�m�r�t�ssel:<BR> <CODE> mencoder dvd://2 -o title2.avi -ovc lavc -lavcopts vcodec=mjpeg -oac copy</CODE></P> <H2><A NAME=image_files>7.7 Enk�dol�s t�bb bemeneti file-b�l (JPEG, PNG)</A></H2> <P>A <B>MEncoder</B> k�pes t�bb JPEG vagy PNG file-b�l filmet l�trehozni. Egyszer� framecopy haszn�lat�val pedig MJPEG (Motion JPEG) vagy MPNG (Motion PNG) filmek hozhat�k l�tre.</P> <P><B><I>A folyamat magyar�zata</I></B></P> <P>El�sz�r a <B>MEncoder</B> <I>dek�dolja</I> a bemeneti fileokat a <CODE>libjpeg</CODE> seg�ts�g�vel (PNG-k dek�dol�s�t a libpngvel v�gzi). </P> <P>A <B>MEncoder</B> ezut�n a kiv�lasztott kimeneti codecnek adja a dek�dolt k�pet (pl DivX4, Xvid, ffmpeg msmpeg4, stb).</P> <P><B><I>P�ld�k</I></B></P> <P>Az <CODE>-mf</CODE> opci� magyar�zata a manpage-ben tal�lhat�.</P> <P><I>DivX4 film l�trehoz�sa az aktu�lis k�nyvt�rban tal�lhat� �sszes JPEG fileb�l:</I><BR> <CODE>mencoder -mf on:w=800:h=600:fps=25 -ovc divx4 -o kimenet.avi \*.jpg</CODE></P> <P><I>DivX4 film l�trehoz�sa n�h�ny JPEG fileb�l:</I><BR> <CODE>mencoder -mf on:w=800:h=600:fps=25 -ovc divx4 -o kimenet.avi frame001.jpg,frame002.jpg</CODE></P> <P><I>MJPEG (Motion JPEG) film l�trehoz�sa az aktu�lis k�nyvt�rban tal�lhat� �sszes JPEG fileb�l:</I><BR> <CODE>mencoder -mf on:w=800:h=600:fps=25 -ovc copy -o kimenet.avi \*.jpg</CODE></P> <P><I>T�m�r�tetlen film l�trehoz�sa az aktu�lis k�nyvt�rban tal�lhat� �sszes PNG fileb�l:</I><BR> <CODE>mencoder -mf on:w=800:h=600:fps=25:type=png -ovc rawrgb -o kimenet.avi \*.png</CODE></P> <P><B>Megjegyz�s:</B> a sz�less�gnek 4-gyel oszthat�nak kell lennie, ez a RAW RGB AVI form�tum egyik megk�t�se.</P> <P><I>MPNG (Motion PNG) film l�trehoz�sa az aktu�lis k�nyvt�rban tal�lhat� �sszes PNG fileb�l:</I><BR> <CODE>mencoder -mf on:w=800:h=600:fps=25:type=png -ovc copy -o kimenet.avi \*.png</CODE></P> <H2><A NAME=vobsub>7.8 DVD feliratok VOBsub form�tum�v� alak�t�sa</A></H2> <P>A <B>MEncoder</B> k�pes DVD-r�l kivonni a feliratot, �s �talak�tani Vobsub form�tum� feliratt�. Ezek egy <CODE>.idx</CODE> �s egy <CODE>.sub</CODE> kiterjeszt�s� file-b�l �llnak, gyakran egyetlen <CODE>.rar</CODE> arch�vba t�m�r�tve. Az <B>MPlayer</B> k�pes az ilyen feliratok megjelen�t�s�re a <CODE>-vobsub</CODE> �s <CODE>-vobsubid</CODE> opci�kkal.</P> <P>Az alap filenevet (teh�t kiterjeszt�s n�lk�l) a <CODE>-vobsubout</CODE> opci�val adhatod meg. Az index sz�mot amin el lesz t�rolva a felirat, pedig a <CODE>-vobsuboutindex</CODE> opci�val.</P> <P>Ha a bemeneti file nem DVD, haszn�ld az <CODE>-ifo</CODE> opci�t, amivel megadhatod hogy melyik file legyen <CODE>.idx</CODE>-� alak�tva.</P> <P>Ha a bemeneti file nem DVD, de nincs meg hozz� az <CODE>.ifo</CODE> file, haszn�ld a <CODE>-vobsubid</CODE> opci�t a haszn�land� nyelv azonos�t�j�nak kiv�laszt�s�hoz.</P> <P>Minden egyes fut�s hozz�f�zi a kimenetet az esetlegesen m�r l�tez� kimeneti file-hoz, �gy aj�nlott k�r�ln�zni ind�t�s el�tt.</P> <P><B>P�ld�k</B></P> <P><I>K�t felirat m�sol�sa DVD-r�l, 3 menetes enk�dol�s k�zben</I><BR> <CODE>rm subtitles.idx subtitles.sub</CODE><BR> <CODE>mencoder dvd://1 -vobsubout subtitles -vobsuboutindex 0 -sid 2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3</CODE><BR> <CODE>mencoder dvd://1 -oac copy -ovc divx4 -pass 1</CODE><BR> <CODE>mencoder dvd://1 -oac copy -ovc divx4 -pass 2 -vobsubout subtitles -vobsuboutindex 1 -sid 5</CODE></P> <P><I>Francia nyelv� felirat m�sol�sa MPEG-b�l</I><BR> <CODE>rm subtitles.idx subtitles.sub</CODE><BR> <CODE>mencoder movie.mpg -ifo movie.ifo -vobsubout subtitles -vobsuboutindex 0 -vobsuboutid fr -sid 1</CODE></P> <H2><A NAME=aspect>7.9 Aspect ratio meg�rz�se</A></H2> <P>A DVD-k �s az SVCD-k (teh�t az MPEG1/2 file-ok) tartalmazz�k azt az �rt�ket amib�l a lej�tsz� tudni fogja merre �s mennyire kell a k�pet sz�th�zni, hogy ne toj�sfej� emberek ugr�ljanak a k�pen (p�ld�ul: 480x480 + 4:3 = 640x480). Viszont amikor az ilyen file-okat AVI-ba (DivX) konvert�ljuk, szembe tal�ljuk magunkat a probl�m�val miszerint az AVI form�tum nem k�pes ezt az �rt�ket (aspect ratio) elt�rolni. A filmek felbont�s�nak �tm�retez�se undor�t�, �s id�ig�nyes feladat, kell h�t legyen egy jobb megold�s!</P> <P>Van is.</P> <P>Az MPEG4 form�tumnak egyik egyed�l�ll� tulajdons�ga, hogy bele�rhat� az aspect ratio �rt�ke (csak�gy mint az MPEG1/2, illetve H263 file-okn�l). Ennek egyetlen h�tul�t�je, hogy jelenleg az MPlayer az egyetlen lej�tsz� amelynek megvan ez a k�pess�ge.</P> <P>A haszn�lata csakis a <a href="codecs.html#libavcodec">libavcodec</a> <CODE>mpeg4</CODE> codec-�vel lehets�ges.</P> <P>Semmik�ppen ne felejtsd el lev�gni a film tetej�r�l �s alj�r�l a fekete s�vokat. Olvasd el a manpage-ben, hogy hogyan kell haszn�lni a <CODE>cropdetect</CODE> �s a <CODE>crop</CODE> filtereket.</P> <H4>Haszn�lata:</H4> <P><CODE>$ mencoder sample-svcd.mpg -ovc lavc -lavcopts vcodec=mpeg4:autoaspect -vf crop=714:548:0:14 -oac copy -o output.avi</CODE></P> <H2><A NAME=custommatrices>7.10 Saj�t inter/intra m�trixok</A></H2> <P>A <A HREF="codecs.html#libavcodec">libavcodec</A> ezen k�pess�g�nek kihaszn�l�s�val be lehet �ll�tani saj�t inter (I, azaz kulcs k�pkock�k), �s intra (P k�pkock�k) m�trixok haszn�lat�t. Sok codec t�mogatja, amik k�z�l az <CODE>mpeg1video</CODE> �s az <CODE>mpeg2video</CODE> bizonyosan m�k�dik.</P> <P>A funkci� tipikusan a <A HREF="http://www.kvcd.net/">KVCD</A> specifik�ci�hoz illeszked� m�trixok be�ll�t�s�ra haszn�lhat�.</P> <P>A <B>KVCD "Notch" Quantization Matrix</B>:</P> <P><I>Intra:</I> <PRE> 8 9 12 22 26 27 29 34 9 10 14 26 27 29 34 37 12 14 18 27 29 34 37 38 22 26 27 31 36 37 38 40 26 27 29 36 39 38 40 48 27 29 34 37 38 40 48 58 29 34 37 38 40 48 58 69 34 37 38 40 48 58 69 79 </PRE> </P> <P> <I>Inter:</I> <PRE> 16 18 20 22 24 26 28 30 18 20 22 24 26 28 30 32 20 22 24 26 28 30 32 34 22 24 26 30 32 32 34 36 24 26 28 32 34 34 36 38 26 28 30 32 34 36 38 40 28 30 32 34 36 38 42 42 30 32 34 36 38 40 42 44 </PRE> </P> <H4>Haszn�lata:</H4> <P><CODE>$ mencoder bemenet.avi -o kimenet.avi -oac copy -ovc lavc -lavcopts inter_matrix=...:intra_matrix=...</CODE></P> <P><CODE>$ mencoder bemenet.avi -ovc lavc -lavcopts vcodec=mpeg2video:intra_matrix=8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37, 12,14,18,27,29,34,37,38,22,26,27,31,36,37,38,40,26,27,29,36,39,38,40,48,27, 29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79 :inter_matrix=16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26, 28,30,32,34,22,24,26,30,32,32,34,36,24,26,28,32,34,34,36,38,26,28,30,32,34, 36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44 -oac copy -o svcd.mpg</CODE></P> </BODY> </HTML>