diff options
-rw-r--r-- | DOCS/xml/en/bugreports.xml | 260 | ||||
-rw-r--r-- | DOCS/xml/en/documentation.xml | 106 | ||||
-rw-r--r-- | DOCS/xml/en/encoding-guide.xml | 5545 | ||||
-rw-r--r-- | DOCS/xml/en/faq.xml | 647 | ||||
-rw-r--r-- | DOCS/xml/en/install.xml | 413 | ||||
-rw-r--r-- | DOCS/xml/en/mencoder.xml | 771 | ||||
-rw-r--r-- | DOCS/xml/en/ports.xml | 833 | ||||
-rw-r--r-- | DOCS/xml/en/usage.xml | 119 | ||||
-rw-r--r-- | DOCS/xml/en/video.xml | 2301 |
9 files changed, 43 insertions, 10952 deletions
diff --git a/DOCS/xml/en/bugreports.xml b/DOCS/xml/en/bugreports.xml index 786c2516ef..dbcffcb88a 100644 --- a/DOCS/xml/en/bugreports.xml +++ b/DOCS/xml/en/bugreports.xml @@ -41,13 +41,7 @@ send that one with another mail. <title>How to fix bugs</title> <para> -If you feel have the necessary skills you are invited to have a go at fixing the -bug yourself. Or maybe you already did that? Please read -<ulink url="../../tech/patches.txt">this short document</ulink> to find out how -to get your code included in <application>MPlayer</application>. The people on -the -<ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">MPlayer-dev-eng</ulink> -mailing list will assist you if you have questions. +OUTDATED CONTENT REMOVED </para> </sect1> @@ -59,84 +53,7 @@ mailing list will assist you if you have questions. <title>How to do regression testing using Subversion</title> <para> -A problem that can happen sometimes is 'it used to work before, now it -doesn't anymore...'. -Here is a step by step procedure to try to pinpoint when the problem -occurred. This is <emphasis role="bold">not</emphasis> for casual users. -</para> - -<para> -First, you'd need to fetch MPlayer's source tree from Subversion. -Instructions can be found in the -<ulink url="http://www.mplayerhq.hu/design7/dload.html#svn">Subversion section of the download page</ulink>. -</para> - -<para> -You will have now in the mplayer/ directory an image of the Subversion tree, on -the client side. -Now update this image to the date you want: -<screen> -cd mplayer/ -svn update -r {"2004-08-23"} -</screen> -The date format is YYYY-MM-DD HH:MM:SS. -Using this date format ensure that you will be able to extract patches -according to the date at which they were committed, as in the -<ulink url="http://lists.mplayerhq.hu/pipermail/mplayer-cvslog/">MPlayer-cvslog archive</ulink>. -</para> - -<para> -Now proceed as for a normal update: -<screen> -./configure -make -</screen> -</para> - -<para> -If any non-programmer reads this, the fastest method to get at the point -where the problem occurred is to use a binary search — that is, -search the date of the breakage by repeatedly dividing the search -interval in half. -For example, if the problem occurred in 2003, start at mid-year, then ask -"Is the problem already here?". -If yes, go back to the first of April; if not, go to the first of October, -and so on. -</para> - -<para> -If you have lot of free hard disk space (a full compile currently takes -100 MB, and around 300-350 MB if debugging symbols are enabled), copy the -oldest known working version before updating it; this will save time if -you need to go back. -(It is usually necessary to run 'make distclean' before recompiling an -earlier version, so if you do not make a backup copy of your original -source tree, you will have to recompile everything in it when you come -back to the present.) -Alternatively you may use <ulink url="http://ccache.samba.org/">ccache</ulink> -to speed up compilation. -</para> - -<para> -When you have found the day where the problem happened, continue the search -using the mplayer-cvslog archive (sorted by date) and a more precise svn -update including hour, minute and second: -<screen> -svn update -r {"2004-08-23 15:17:25"} -</screen> -This will allow you to easily find the exact patch that did it. -</para> - -<para> -If you find the patch that is the cause of the problem, you have almost won; -report about it to the -<ulink url="http://bugzilla.mplayerhq.hu/">MPlayer Bugzilla</ulink> or -subscribe to -<ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-users">MPlayer-users</ulink> -and post it there. -There is a chance that the author will jump in to suggest a fix. -You may also look hard at the patch until it is coerced to reveal where -the bug is :-). +OUTDATED CONTENT REMOVED </para> </sect1> @@ -148,49 +65,7 @@ the bug is :-). <title>How to report bugs</title> <para> -First of all please try the latest Subversion version of -<application>MPlayer</application> -as your bug might already be fixed there. Development moves extremely fast, -most problems in official releases are reported within days or even hours, -so please use <emphasis role="bold">only Subversion</emphasis> to report bugs. -This includes binary packages of <application>MPlayer</application>. -Subversion instructions can be found at the bottom of -<ulink url="http://www.mplayerhq.hu/dload.html">this page</ulink> or in -the README. If this did not help please refer to the rest of the documentation. -If your problem is not known or not solvable by our instructions, -then please report the bug. -</para> - -<para> -Please do not send bug reports privately to individual developers. This is -community work and thus there might be several people interested in it. -Sometimes other users already experienced your troubles and know how to -circumvent a problem even if it is a bug in <application>MPlayer</application> -code. -</para> - -<para> -Please describe your problem in as much detail as possible. Do a little -detective work to narrow down the circumstances under which the problem occurs. -Does the bug only show up in certain situations? Is it specific to certain -files or file types? Does it occur with only one codec or is it codec -independent? Can you reproduce it with all output drivers? The more information -you provide the better are our chances at fixing your problem. Please do not -forget to also include the valuable information requested below, we will be -unable to properly diagnose your problem otherwise. -</para> - -<para> -An excellent and well written guide to asking questions in public forums is -<ulink url="http://www.catb.org/~esr/faqs/smart-questions.html">How To Ask Questions The Smart Way</ulink> -by <ulink url="http://www.catb.org/~esr/">Eric S. Raymond</ulink>. -There is another called -<ulink url="http://www.chiark.greenend.org.uk/~sgtatham/bugs.html">How to Report Bugs Effectively</ulink> -by <ulink url="http://www.chiark.greenend.org.uk/~sgtatham/">Simon Tatham</ulink>. -If you follow these guidelines you should be able to get help. But please -understand that we all follow the mailing lists voluntarily in our free time. We -are very busy and cannot guarantee that you will get a solution for your problem -or even an answer. +OUTDATED CONTENT REMOVED </para> </sect1> @@ -202,15 +77,7 @@ or even an answer. <title>Where to report bugs</title> <para> -Subscribe to the MPlayer-users mailing list: -<ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-users"/> -and send your bug report to -<ulink url="mailto:mplayer-users@mplayerhq.hu"/> where you can discuss it. -</para> - -<para> -If you prefer, you can use our brand-new -<ulink url="http://bugzilla.mplayerhq.hu/">Bugzilla</ulink> instead. +OUTDATED CONTENT REMOVED </para> <para> @@ -235,12 +102,7 @@ to subscribe to actually receive your answer. <title>What to report</title> <para> -You may need to include log, configuration or sample files in your bug report. -If some of them are quite big then it is better to upload them to our -<ulink url="ftp://upload.mplayerhq.hu/MPlayer/incoming/">FTP server</ulink> in a -compressed format (gzip and bzip2 preferred) and include only the path and file -name in your bug report. Our mailing lists have a message size limit of 80k, if -you have something bigger you have to compress or upload it. +OUTDATED CONTENT REMOVED </para> <!-- ********** --> @@ -249,57 +111,7 @@ you have something bigger you have to compress or upload it. <title>System Information</title> <para> -<itemizedlist> -<listitem><para> - Your Linux distribution or operating system and version e.g.: - <itemizedlist> - <listitem><para>Red Hat 7.1</para></listitem> - <listitem><para>Slackware 7.0 + devel packs from 7.1 ...</para></listitem> - </itemizedlist> -</para></listitem> -<listitem><para> - kernel version: - <screen>uname -a</screen> -</para></listitem> -<listitem><para> - libc version: - <screen>ls -l /lib/libc[.-]*</screen> -</para></listitem> -<listitem><para> - gcc and ld versions: - <screen> -gcc -v -ld -v<!-- - --></screen> -</para></listitem> -<listitem><para> - binutils version: - <screen>as --version</screen> -</para></listitem> -<listitem><para> - If you have problems with fullscreen mode: - <itemizedlist> - <listitem><para>Window manager type and version</para></listitem> - </itemizedlist> -</para></listitem> -<listitem><para> - If you have problems with XVIDIX: - <itemizedlist> - <listitem><para> - X colour depth: - <screen>xdpyinfo | grep "depth of root"</screen> - </para></listitem> - </itemizedlist> -</para></listitem> -<listitem><para> - If only the GUI is buggy: - <itemizedlist> - <listitem><para>GTK version</para></listitem> - <listitem><para>GLIB version</para></listitem> - <listitem><para>GUI situation in which the bug occurs</para></listitem> - </itemizedlist> -</para></listitem> -</itemizedlist> +OUTDATED CONTENT REMOVED </para> </sect2> @@ -309,39 +121,7 @@ ld -v<!-- <title>Hardware and drivers</title> <para> -<itemizedlist> -<listitem><para> - CPU info (this works on Linux only): - <screen>cat /proc/cpuinfo</screen> -</para></listitem> -<listitem><para> - Video card manufacturer and model, e.g.: - <itemizedlist> - <listitem><para>ASUS V3800U chip: nVidia TNT2 Ultra pro 32MB SDRAM</para></listitem> - <listitem><para>Matrox G400 DH 32MB SGRAM</para></listitem> - </itemizedlist> -</para></listitem> -<listitem><para> - Video driver type & version, e.g.: - <itemizedlist> - <listitem><para>X built-in driver</para></listitem> - <listitem><para>nVidia 0.9.623</para></listitem> - <listitem><para>Utah-GLX CVS 2001-02-17</para></listitem> - <listitem><para>DRI from X 4.0.3</para></listitem> - </itemizedlist> -</para></listitem> -<listitem><para> - Sound card type & driver, e.g.: - <itemizedlist> - <listitem><para>Creative SBLive! Gold with OSS driver from oss.creative.com</para></listitem> - <listitem><para>Creative SB16 with kernel OSS drivers</para></listitem> - <listitem><para>GUS PnP with ALSA OSS emulation</para></listitem> - </itemizedlist> -</para></listitem> -<listitem><para> - If in doubt include <command>lspci -vv</command> output on Linux systems. -</para></listitem> -</itemizedlist> +OUTDATED CONTENT REMOVED </para> </sect2> @@ -472,30 +252,4 @@ gdb mplayer --core=core -batch --command=command_file > mplayer.bug </sect2> </sect1> - -<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> - - -<sect1 id="bugreports_advusers"> -<title>I know what I am doing...</title> - -<para> -If you created a proper bug report following the steps above and you are -confident it is a bug in <application>MPlayer</application>, not a compiler -problem or broken file, you have already read the documentation and you could -not find a solution, your sound drivers are OK, then you might want to -subscribe to the MPlayer-advusers list and send your bug report there to get -a better and faster answer. -</para> - -<para> -Please be advised that if you post newbie questions or questions answered in the -manual there, you will be ignored or flamed instead of getting an appropriate -answer. So do not flame us and subscribe to -advusers only if you really know -what you are doing and feel like being an advanced -<application>MPlayer</application> user or developer. If you meet these -criteria it should not be difficult to find out how to subscribe... -</para> -</sect1> - </appendix> diff --git a/DOCS/xml/en/documentation.xml b/DOCS/xml/en/documentation.xml index 8d4a5e38a4..2d6e16c4c2 100644 --- a/DOCS/xml/en/documentation.xml +++ b/DOCS/xml/en/documentation.xml @@ -3,7 +3,7 @@ <bookinfo id="toc"> <title><application>MPlayer</application> - The Movie Player</title> -<subtitle><ulink url="http://www.mplayerhq.hu"></ulink></subtitle> +<subtitle><ulink url="http://www.mplayer2.org/"></ulink></subtitle> <date>March 24, 2003</date> <copyright> <year>2000</year> @@ -17,6 +17,7 @@ <year>2008</year> <year>2009</year> <year>2010</year> + <year>2011</year> <holder>MPlayer team</holder> </copyright> <legalnotice> @@ -45,116 +46,17 @@ If you are a first-time installer: be sure to read everything from here to the end of the Installation section, and follow the links you will find. If you have any other questions, return to the <link linkend="toc">Table of Contents</link> and search for the topic, read the <xref linkend="faq"/>, -or try grepping through the files. Most questions should be answered somewhere -here and the rest has probably already been asked on our -<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">mailing lists</ulink>. -Check the -<ulink url="https://lists.mplayerhq.hu/mailman/listinfo">archives</ulink>, there -is a lot of valuable information to be found there. +or try grepping through the files. </para> </preface> <chapter id="intro"> <title>Introduction</title> - -<para> -<application>MPlayer</application> is a movie player for Linux (runs on -many other Unices, and non-x86 CPUs, see <xref linkend="ports"/>). -It plays most MPEG, VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, -NuppelVideo, yuv4mpeg, FILM, RoQ, PVA, Matroska files, supported by -many native, XAnim, RealPlayer, and Win32 DLL codecs. You can watch -Video CD, SVCD, DVD, 3ivx, RealMedia, Sorenson, Theora, -and MPEG-4 (DivX) movies, too. Another big -feature of <application>MPlayer</application> is the wide range of -supported output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, -fbdev, AAlib, libcaca, DirectFB, but you can use GGI and SDL (and this way all -their drivers) and some low level card-specific drivers (for Matrox, 3Dfx and -Radeon, Mach64, Permedia3) too! Most of them support software or hardware -scaling, so you can enjoy movies in fullscreen. -<application>MPlayer</application> supports displaying through some -hardware MPEG decoder boards, such as the <link linkend="dvb">DVB</link> and -<link linkend="dxr3">DXR3/Hollywood+</link>. And what about the nice big -antialiased shaded subtitles (14 supported types) -with European/ISO 8859-1,2 (Hungarian, English, Czech, etc), Cyrillic, Korean -fonts, and the onscreen display (OSD)? -</para> - +OUTDATED CONTENT REMOVED <para> -The player is rock solid playing damaged MPEG files (useful for some VCDs), -and it plays bad AVI files which are unplayable with the famous -<application>Windows Media Player</application>. -Even AVI files without index chunk are playable, and you can -temporarily rebuild their indexes with the <option>-idx</option> option, or -permanently with <application>MEncoder</application>, thus enabling -seeking! As you see, stability and quality are the most important things, -but the speed is also amazing. There is also a powerful filter system for -video and audio manipulation. </para> -<para> -<application>MEncoder</application> (<application>MPlayer</application>'s Movie -Encoder) is a simple movie encoder, designed to encode -<application>MPlayer</application>-playable movies -AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET/PVA -to other <application>MPlayer</application>-playable formats (see below). -It can encode with various codecs, like MPEG-4 (DivX4) -(one or two passes), <systemitem class="library">libavcodec</systemitem>, -PCM/MP3/VBR MP3 audio. -</para> - -<itemizedlist> -<title><application>MEncoder</application> features</title> -<listitem><para> - Encoding from the wide range of file formats and decoders of - <application>MPlayer</application> -</para></listitem> -<listitem><para> - Encoding to all the codecs of FFmpeg's - <systemitem class="library">libavcodec</systemitem> -</para></listitem> -<listitem><para> - Video encoding from V4L compatible TV tuners -</para></listitem> -<listitem><para> - Encoding/multiplexing to interleaved AVI files with proper index -</para></listitem> -<listitem><para> - Creating files from external audio stream -</para></listitem> -<listitem><para> - 1, 2 or 3 pass encoding -</para></listitem> -<listitem><para> - VBR MP3 audio -</para></listitem> -<listitem><para> - PCM audio -</para></listitem> -<listitem><para> - Stream copying -</para></listitem> -<listitem><para> - Input A/V synchronizing (pts-based, can be disabled with - <option>-mc 0</option> option) -</para></listitem> -<listitem><para> - fps correction with <option>-ofps</option> option (useful when encoding - 30000/1001 fps VOB to 24000/1001 fps AVI) -</para></listitem> -<listitem><para> - Using our very powerful filter system (crop, expand, flip, postprocess, - rotate, scale, RGB/YUV conversion) -</para></listitem> -<listitem><para> - Can encode DVD/VOBsub and text subtitles - into the output file -</para></listitem> -<listitem><para> - Can rip DVD subtitles to VOBsub format -</para></listitem> -</itemizedlist> - <!-- FIXME: the license should be in bookinfo --> <para> <application>MPlayer</application> and <application>MEncoder</application> diff --git a/DOCS/xml/en/encoding-guide.xml b/DOCS/xml/en/encoding-guide.xml index 9309df9df7..d458f31b1c 100644 --- a/DOCS/xml/en/encoding-guide.xml +++ b/DOCS/xml/en/encoding-guide.xml @@ -3,5550 +3,7 @@ <chapter id="encoding-guide"> <title>Encoding with <application>MEncoder</application></title> -<sect1 id="menc-feat-dvd-mpeg4"> -<title>Making a high quality MPEG-4 ("DivX") - rip of a DVD movie</title> - -<para> -One frequently asked question is "How do I make the highest quality rip -for a given size?". Another question is "How do I make the highest -quality DVD rip possible? I do not care about file size, I just want the best -quality." -</para> - -<para> -The latter question is perhaps at least somewhat wrongly posed. After all, if -you do not care about file size, why not simply copy the entire MPEG-2 video -stream from the the DVD? Sure, your AVI will end up being 5GB, give -or take, but if you want the best quality and do not care about size, -this is certainly your best option. -</para> - -<para> -In fact, the reason you want to transcode a DVD into MPEG-4 is -specifically because you <emphasis role="bold">do</emphasis> care about -file size. -</para> - -<para> -It is difficult to offer a cookbook recipe on how to create a very high -quality DVD rip. There are several factors to consider, and you should -understand these details or else you are likely to end up disappointed -with your results. Below we will investigate some of these issues, and -then have a look at an example. We assume you are using -<systemitem class="library">libavcodec</systemitem> to encode the video, -although the theory applies to other codecs as well. -</para> - -<para> -If this seems to be too much for you, you should probably use one of the -many fine frontends that are listed in the -<ulink url="http://www.mplayerhq.hu/design7/projects.html#mencoder_frontends">MEncoder section</ulink> -of our related projects page. -That way, you should be able to achieve high quality rips without too much -thinking, because most of those tools are designed to take clever decisions -for you. -</para> - -<!-- ********** --> - -<sect2 id="menc-feat-dvd-mpeg4-preparing-encode"> -<title>Preparing to encode: Identifying source material and framerate</title> - -<para> -Before you even think about encoding a movie, you need to take -several preliminary steps. -</para> - -<para> -The first and most important step before you encode should be -determining what type of content you are dealing with. -If your source material comes from DVD or broadcast/cable/satellite -TV, it will be stored in one of two formats: NTSC for North -America and Japan, PAL for Europe, etc. -It is important to realize, however, that this is just the formatting for -presentation on a television, and often does -<emphasis role="bold">not</emphasis> correspond to the -original format of the movie. -Experience shows that NTSC material is a lot more difficult to encode, -because there more elements to identify in the source. -In order to produce a suitable encode, you need to know the original -format. -Failure to take this into account will result in various flaws in your -encode, including ugly combing (interlacing) artifacts and duplicated -or even lost frames. -Besides being ugly, the artifacts also harm coding efficiency: -You will get worse quality per unit bitrate. -</para> - - -<sect3 id="menc-feat-dvd-mpeg4-preparing-encode-fps"> -<title>Identifying source framerate</title> - -<para> -Here is a list of common types of source material, where you are -likely to find them, and their properties: -</para> - -<itemizedlist> -<listitem><para> - <emphasis role="bold">Standard Film</emphasis>: Produced for - theatrical display at 24fps. -</para></listitem> -<listitem><para> - <emphasis role="bold">PAL video</emphasis>: Recorded with a PAL - video camera at 50 fields per second. - A field consists of just the odd- or even-numbered lines of a - frame. - Television was designed to refresh these in alternation as a - cheap form of analog compression. - The human eye supposedly compensates for this, but once you - understand interlacing you will learn to see it on TV too and - never enjoy TV again. - Two fields do <emphasis role="bold">not</emphasis> make a - complete frame, because they are captured 1/50 of a second apart - in time, and thus they do not line up unless there is no motion. -</para></listitem> -<listitem><para> - <emphasis role="bold">NTSC Video</emphasis>: Recorded with an - NTSC video camera at 60000/1001 fields per second, or 60 fields per - second in the pre-color era. - Otherwise similar to PAL. -</para></listitem> -<listitem><para> - <emphasis role="bold">Animation</emphasis>: Usually drawn at - 24fps, but also comes in mixed-framerate varieties. -</para></listitem> -<listitem><para> - <emphasis role="bold">Computer Graphics (CG)</emphasis>: Can be - any framerate, but some are more common than others; 24 and - 30 frames per second are typical for NTSC, and 25fps is typical - for PAL. -</para></listitem> -<listitem><para> - <emphasis role="bold">Old Film</emphasis>: Various lower - framerates. -</para></listitem> -</itemizedlist> -</sect3> - - -<sect3 id="menc-feat-dvd-mpeg4-preparing-encode-material"> -<title>Identifying source material</title> - -<para> -Movies consisting of frames are referred to as progressive, -while those consisting of independent fields are called -either interlaced or video - though this latter term is -ambiguous. -</para> - -<para> -To further complicate matters, some movies will be a mix of -several of the above. -</para> - -<para> -The most important distinction to make between all of these -formats is that some are frame-based, while others are -field-based. -<emphasis role="bold">Whenever</emphasis> a movie is prepared -for display on television (including DVD), it is converted to a -field-based format. -The various methods by which this can be done are collectively -referred to as "telecine", of which the infamous NTSC -"3:2 pulldown" is one variety. -Unless the original material was also field-based (and the same -fieldrate), you are getting the movie in a format other than the -original. -</para> - -<itemizedlist> -<title>There are several common types of pulldown:</title> -<listitem><para> - <emphasis role="bold">PAL 2:2 pulldown</emphasis>: The nicest of - them all. - Each frame is shown for the duration of two fields, by extracting the - even and odd lines and showing them in alternation. - If the original material is 24fps, this process speeds up the - movie by 4%. -</para></listitem> -<listitem><para> - <emphasis role="bold">PAL 2:2:2:2:2:2:2:2:2:2:2:3 pulldown</emphasis>: - Every 12th frame is shown for the duration of three fields, instead of - just two. - This avoids the 4% speedup issue, but makes the process much - more difficult to reverse. - It is usually seen in musical productions where adjusting the - speed by 4% would seriously damage the musical score. -</para></listitem> -<listitem><para> - <emphasis role="bold">NTSC 3:2 telecine</emphasis>: Frames are - shown alternately for the duration of 3 fields or 2 fields. - This gives a fieldrate 2.5 times the original framerate. - The result is also slowed down very slightly from 60 fields per - second to 60000/1001 fields per second to maintain NTSC fieldrate. -</para></listitem> -<listitem><para> - <emphasis role="bold">NTSC 2:2 pulldown</emphasis>: Used for - showing 30fps material on NTSC. - Nice, just like 2:2 PAL pulldown. -</para></listitem> -</itemizedlist> - -<para> -There are also methods for converting between NTSC and PAL video, -but such topics are beyond the scope of this guide. -If you encounter such a movie and want to encode it, your best -bet is to find a copy in the original format. -Conversion between these two formats is highly destructive and -cannot be reversed cleanly, so your encode will greatly suffer -if it is made from a converted source. -</para> - -<para> -When video is stored on DVD, consecutive pairs of fields are -grouped as a frame, even though they are not intended to be shown -at the same moment in time. -The MPEG-2 standard used on DVD and digital TV provides a -way both to encode the original progressive frames and to store -the number of fields for which a frame should be shown in the -header of that frame. -If this method has been used, the movie will often be described -as "soft-telecined", since the process only directs the -DVD player to apply pulldown to the movie rather than altering -the movie itself. -This case is highly preferable since it can easily be reversed -(actually ignored) by the encoder, and since it preserves maximal -quality. -However, many DVD and broadcast production studios do not use -proper encoding techniques but instead produce movies with -"hard telecine", where fields are actually duplicated in the -encoded MPEG-2. -</para> - -<para> -The procedures for dealing with these cases will be covered -<link linkend="menc-feat-telecine">later in this guide</link>. -For now, we leave you with some guides to identifying which type -of material you are dealing with: -</para> - -<itemizedlist> -<title>NTSC regions:</title> -<listitem><para> - If <application>MPlayer</application> prints that the framerate - has changed to 24000/1001 when watching your movie, and never changes - back, it is almost certainly progressive content that has been - "soft telecined". -</para></listitem> -<listitem><para> - If <application>MPlayer</application> shows the framerate - switching back and forth between 24000/1001 and 30000/1001, and you see - "combing" at times, then there are several possibilities. - The 24000/1001 fps segments are almost certainly progressive - content, "soft telecined", but the 30000/1001 fps parts could be - either hard-telecined 24000/1001 fps content or 60000/1001 fields per second - NTSC video. - Use the same guidelines as the following two cases to determine which. -</para></listitem> -<listitem><para> - If <application>MPlayer</application> never shows the framerate - changing, and every single frame with motion appears combed, your - movie is NTSC video at 60000/1001 fields per second. -</para></listitem> -<listitem><para> - If <application>MPlayer</application> never shows the framerate - changing, and two frames out of every five appear combed, your - movie is "hard telecined" 24000/1001fps content. -</para></listitem> -</itemizedlist> - -<itemizedlist> -<title>PAL regions:</title> -<listitem><para> - If you never see any combing, your movie is 2:2 pulldown. -</para></listitem> -<listitem><para> - If you see combing alternating in and out every half second, - then your movie is 2:2:2:2:2:2:2:2:2:2:2:3 pulldown. -</para></listitem> -<listitem><para> - If you always see combing during motion, then your movie is PAL - video at 50 fields per second. -</para></listitem> -</itemizedlist> - -<note><title>Hint:</title> -<para> - <application>MPlayer</application> can slow down movie playback - with the -speed option or play it frame-by-frame. - Try using <option>-speed</option> 0.2 to watch the movie very - slowly or press the "<keycap>.</keycap>" key repeatedly to play one frame at - a time and identify the pattern, if you cannot see it at full speed. -</para> -</note> -</sect3> -</sect2> - -<!-- ********** --> - -<sect2 id="menc-feat-dvd-mpeg4-2pass"> -<title>Constant quantizer vs. multipass</title> - -<para> -It is possible to encode your movie at a wide range of qualities. -With modern video encoders and a bit of pre-codec compression -(downscaling and denoising), it is possible to achieve very good -quality at 700 MB, for a 90-110 minute widescreen movie. -Furthermore, all but the longest movies can be encoded with near-perfect -quality at 1400 MB. -</para> - -<para> -There are three approaches to encoding the video: constant bitrate -(CBR), constant quantizer, and multipass (ABR, or average bitrate). -</para> - -<para> -The complexity of the frames of a movie, and thus the number of bits -required to compress them, can vary greatly from one scene to another. -Modern video encoders can adjust to these needs as they go and vary -the bitrate. -In simple modes such as CBR, however, the encoders do not know the -bitrate needs of future scenes and so cannot exceed the requested -average bitrate for long stretches of time. -More advanced modes, such as multipass encode, can take into account -the statistics from previous passes; this fixes the problem mentioned -above. -</para> - -<note><title>Note:</title> -<para> -Most codecs which support ABR encode only support two pass encode -while some others such as <systemitem class="library">x264</systemitem>, -<systemitem class="library">Xvid</systemitem> -and <systemitem class="library">libavcodec</systemitem> support -multipass, which slightly improves quality at each pass, -yet this improvement is no longer measurable nor noticeable after the -4th or so pass. -Therefore, in this section, two pass and multipass will be used -interchangeably. -</para> -</note> - -<para> -In each of these modes, the video codec (such as -<systemitem class="library">libavcodec</systemitem>) -breaks the video frame into 16x16 pixel macroblocks and then applies a -quantizer to each macroblock. The lower the quantizer, the better the -quality and higher the bitrate. -The method the movie encoder uses to determine -which quantizer to use for a given macroblock varies and is highly -tunable. (This is an extreme over-simplification of the actual -process, but the basic concept is useful to understand.) -</para> - -<para> -When you specify a constant bitrate, the video codec will encode the video, -discarding -detail as much as necessary and as little as possible in order to remain -lower than the given bitrate. If you truly do not care about file size, -you could as well use CBR and specify a bitrate of infinity. (In -practice, this means a value high enough so that it poses no limit, like -10000Kbit.) With no real restriction on bitrate, the result is that -the codec will use the lowest -possible quantizer for each macroblock (as specified by -<option>vqmin</option> for -<systemitem class="library">libavcodec</systemitem>, which is 2 by default). -As soon as you specify a -low enough bitrate that the codec -is forced to use a higher quantizer, then you are almost certainly ruining -the quality of your video. -In order to avoid that, you should probably downscale your video, according -to the method described later on in this guide. -In general, you should avoid CBR altogether if you care about quality. -</para> - -<para> -With constant quantizer, the codec uses the same quantizer, as -specified by the <option>vqscale</option> option (for -<systemitem class="library">libavcodec</systemitem>), on every macroblock. -If you want the highest quality rip possible, again ignoring bitrate, -you can use <option>vqscale=2</option>. -This will yield the same bitrate and PSNR (peak signal-to-noise ratio) -as CBR with -<option>vbitrate</option>=infinity and the default <option>vqmin</option> -of 2. -</para> - -<para> -The problem with constant quantizing is that it uses the given quantizer -whether the macroblock needs it or not. That is, it might be possible -to use a higher quantizer on a macroblock without sacrificing visual |