Mercurial > mplayer.hg
view DOCS/xml/en/faq.xml @ 15942:3eaceddfd30c
Last nit for this entry, by "The Wanderer"
author | gpoirier |
---|---|
date | Fri, 08 Jul 2005 12:12:32 +0000 |
parents | 2bfd7b247e9e |
children | c20bd4b50521 |
line wrap: on
line source
<?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision$ --> <chapter id="faq" xreflabel="FAQ"> <title>Frequently Asked Questions</title> <qandaset defaultlabel="qanda"> <qandadiv id="faq-development"> <title>Development</title> <qandaentry> <question><para> How do I create a proper patch for <application>MPlayer</application>? </para></question> <answer><para> We made a <ulink url="../../tech/patches.txt">short document</ulink> describing all the necessary details. Please follow the instructions. </para></answer> </qandaentry> <qandaentry> <question><para> How do I translate <application>MPlayer</application> to a new language? </para></question> <answer><para> Read the <ulink url="../../tech/translations.txt">translation HOWTO</ulink>, it should explain everything. You can get further help on the <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-docs">MPlayer-docs</ulink> mailing list. </para></answer> </qandaentry> <qandaentry> <question><para> How can I support <application>MPlayer</application> development? </para></question> <answer><para> We are more than happy to accept your hardware and software <ulink url="http://www.mplayerhq.hu/homepage/donations.html">donations</ulink>. They help us in continuously improving <application>MPlayer</application>. </para></answer> </qandaentry> <qandaentry> <question><para> How can I become an <application>MPlayer</application> developer? </para></question> <answer><para> We always welcome coders and documenters. Read the <ulink url="../../tech/">technical documentation</ulink> to get a first grasp. Then you should subscribe to the <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">MPlayer-dev-eng</ulink> mailing list and start coding. If you want to help out with the documentation, join the <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-docs">MPlayer-docs</ulink> mailing list. </para></answer> </qandaentry> <qandaentry> <question><para> Why don't you use autoconf/automake? </para></question> <answer><para> We have a modular, handwritten build system. It does a reasonably good job, so why change? Besides, we dislike the auto* tools, just like <ulink url="http://freshmeat.net/articles/view/889/">other people</ulink>. </para></answer> </qandaentry> </qandadiv> <qandadiv id="faq-compilation"> <title>Compilation</title> <qandaentry> <question><para> Compilation fails with an error and <application>gcc</application> bails out with some cryptic message containing the phrase <systemitem>internal compiler error</systemitem> or <systemitem>unable to find a register to spill</systemitem>. </para></question> <answer><para> You have stumbled over a bug in <application>gcc</application>. Please <ulink url="http://gcc.gnu.org/bugs.html">report it to the gcc team</ulink> but not to us. For some reason <application>MPlayer</application> seems to trigger compiler bugs frequently. Nevertheless we cannot fix them and do not add workarounds for compiler bugs to our sources. To avoid this problem, either stick with a compiler version that is known to be reliable and stable, or upgrade frequently. </para></answer> </qandaentry> <qandaentry> <question><para> Are there binary (RPM/deb) packages of <application>MPlayer</application>? </para></question> <answer><para> See the <link linkend="debian">Debian</link> and <link linkend="rpm">RPM</link> section for details. </para></answer> </qandaentry> <qandaentry> <question><para> How can I build a 32 bit <application>MPlayer</application> on 64 bit Athlon? </para></question> <answer><para> Try the following configure options: <screen> ./configure --target=athlon_xp --cc="gcc -m32" --as="as --32" --with-extralibdir=/usr/lib </screen> </para></answer> </qandaentry> <qandaentry> <question><para> Configure ends with this text, and <application>MPlayer</application> won't compile! <screen>Your gcc does not support even i386 for '-march' and '-mcpu'</screen> </para></question> <answer><para> Your gcc isn't installed correctly, check the <filename>configure.log</filename> file for details. </para></answer> </qandaentry> <qandaentry> <question><para> I have a Matrox G200/G400/G450/G550, how do I compile/use the mga_vid driver? </para></question> <answer><para> Read the <link linkend="mga_vid">mga_vid</link> section. </para></answer> </qandaentry> <qandaentry> <question><para> During 'make', <application>MPlayer</application> complains about X11 libraries. I don't understand, I DO have X installed!? </para></question> <answer><para> ... but you don't have the X development package installed. Or not correctly. It's called <filename>XFree86-devel*</filename> under Red Hat, and <filename>xlibs-dev</filename> under Debian Woody, <filename>libx11-dev</filename> under Debian Sarge. Also check if the <filename class="directory">/usr/X11</filename> and <filename class="directory">/usr/include/X11</filename> symlinks exist (this can be a problem on Mandrake systems). They can be created with these commands: <screen> # ln -sf /usr/X11R6 /usr/X11 # ln -sf /usr/X11R6/include/X11 /usr/include/X11 </screen> Your distribution may differ from the <ulink url="http://www.pathname.com/fhs/">Filesystem Hierarchy Standard</ulink>. </para></answer> </qandaentry> </qandadiv> <qandadiv id="faq-general"> <title>General questions</title> <qandaentry> <question><para> Are there any mailing lists on <application>MPlayer</application>? </para></question> <answer><para> Yes. See the <link linkend="mailinglists">mailing lists</link> section. </para></answer> </qandaentry> <qandaentry> <question><para> I've found a nasty bug when I tried to play my favorite video! Who should I inform? </para></question> <answer><para> Please read the <link linkend="bugreports">bug reporting guidelines</link> and follow the instructions. </para></answer> </qandaentry> <qandaentry> <question><para> I have problems playing files with the ... codec. Can I use them? </para></question> <answer><para> Check the <ulink url="../../codecs-status.html">codec status</ulink>, if it doesn't contain your codec, read the <link linkend="codecs">codec documentation</link>, especially the <link linkend="codec-importing">codec importing HOWTO</link> and contact us. </para></answer> </qandaentry> <qandaentry> <question><para> When I start playing, I get this message but everything seems fine: <screen>Linux RTC init: ioctl (rtc_pie_on): Permission denied</screen> </para></question> <answer><para> You need root privileges or a specially set up kernel to use the new timing code. For details see the <link linkend="rtc">RTC</link> section of the documentation. </para></answer> </qandaentry> <qandaentry> <question><para> How can I make a screenshot? </para></question> <answer><para> You have to use a video output driver that does not employ an overlay to be able to take a screenshot. Under X11, <option>-vo x11</option> will do, under Windows <option>-vo directx:noaccel</option> works. </para></answer> </qandaentry> <qandaentry> <question><para> The <option>-xy</option> or <option>-fs</option> option doesn't work with the x11 driver (<option>-vo x11</option>) ... </para></question> <answer><para> It does, but you have to explicitly specify software scaling (very slow) with the <option>-zoom</option> option. You better use XF86VidMode support: You must specify the <option>-vm</option> and the <option>-fs</option> option, and you're done. Make sure you have the right modelines in your <filename>XF86Config</filename> file, and try to make the <link linkend="dga">DGA driver</link> and <link linkend="sdl">SDL's DGA driver</link> work for you. It's much faster. If SDL's DGA works, use that, it'll be even faster. </para></answer> </qandaentry> <qandaentry> <question><para> What is the meaning of the numbers on the status line? </para></question> <answer><para> Example: <screen>A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57/57 41% 0% 2.6% 0 4 49%</screen> <itemizedlist> <listitem><para>A: audio position in seconds</para></listitem> <listitem><para>V: video position in seconds</para></listitem> <listitem><para>A-V: audio-video difference in seconds (delay)</para></listitem> <listitem><para>ct: total A-V sync correction done</para></listitem> <listitem><para>frames played (counting from last seek)</para></listitem> <listitem><para>frames decoded (counting from last seek)</para></listitem> <listitem><para>video codec CPU usage in percent (for slices and DR this includes video_out)</para></listitem> <listitem><para>video_out CPU usage</para></listitem> <listitem><para>audio codec CPU usage in percent</para></listitem> <listitem><para>frames needed to drop to maintain A-V sync</para></listitem> <listitem><para>current level of image postprocessing (when using <option>-autoq</option>)</para></listitem> <listitem><para>current cache size used (around 50% is normal)</para></listitem> <listitem><para>playback speed as a factor of original speed</para></listitem> </itemizedlist> Most of them are for debug purposes and will be removed at some point. </para></answer> </qandaentry> <qandaentry> <question><para> What if I don't want them to appear? </para></question> <answer><para> Use the <option>-quiet</option> option and read the man page. </para></answer> </qandaentry> <qandaentry> <question><para> Why is video_out CPU usage zero (0%) for some files? </para></question> <answer><para> It's not zero, but it's called from the codec and thus cannot be measured separately. You should try to play the file using <option>-vo null</option> and then <option>-vo ...</option> and check the difference to see the video_out speed. </para></answer> <answer><para> You are using Direct Rendering, where the codec renders to the video memory itself. In this case, the decoding percentage contains the display percentage, too. </para></answer> </qandaentry> <qandaentry> <question><para> There are error messages about file not found <filename>/usr/local/lib/codecs/</filename> ... </para></question> <answer><para> Download the binary codecs from our <ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">codecs page</ulink> and install it. </para></answer> </qandaentry> <qandaentry> <question><para> Subtitles are very nice, the most beautiful I've ever seen, but they slow down playing! I know it's unlikely ... </para></question> <answer><para> After running <filename>./configure</filename>, edit <filename>config.h</filename> and replace <systemitem>#undef FAST_OSD</systemitem> with <systemitem>#define FAST_OSD</systemitem>. Then recompile. </para></answer> </qandaentry> <qandaentry> <question><para> I can't access the GUI menu. I press right click, but I can't access any menu items! </para></question> <answer><para> Are you using FVWM? Try the following: <orderedlist> <listitem><para>Start -> Settings -> Configuration -> Base Configuration</para></listitem> <listitem><para>Set <systemitem>Use Applications position hints</systemitem> to <systemitem>Yes</systemitem></para></listitem> </orderedlist> </para></answer> </qandaentry> <qandaentry> <question><para> How can I run <application>MPlayer</application> in the background? </para></question> <answer><para> Use: <screen>mplayer <replaceable>options</replaceable> <replaceable>filename</replaceable> < /dev/null &</screen> </para></answer> </qandaentry> </qandadiv> <qandadiv id="faq-playback"> <title>Playback problems</title> <qandaentry> <question><para> I cannot pinpoint the cause of some strange playback problem. </para></question> <answer><para> Do you have a stray <filename>codecs.conf</filename> file in <filename>~/.mplayer/</filename>, <filename>/etc/</filename>, <filename>/usr/local/etc/</filename> or a similar location? Remove it, an outdated <filename>codecs.conf</filename> file can cause obscure problems and is intended for use only by developers working on codec support. It overrides <application>MPlayer</application>'s internal codec settings, which will wreak havoc if incompatible changes are made in newer program versions. Unless used by experts it is a recipe for disaster in the form of seemingly random and very hard to localize crashes and playback problems. If you still have it somewhere on your system, you should remove it now. </para></answer> </qandaentry> <qandaentry> <question><para> How can I select audio/subtitle tracks from a DVD, OGM, Matroska or NUT file? </para></question> <answer><para> You have to use <option>-aid</option> (audio ID) or <option>-alang</option> (audio language), <option>-sid</option>(subtitle ID) or <option>-slang</option> (subtitle language), for example: <screen> mplayer example.mkv -alang eng -slang eng mplayer example.mkv -aid 1 -sid 1 </screen> To see which ones are available: <screen> mplayer -vo null -ao null -frames 0 -v <replaceable>filename</replaceable> | grep sid mplayer -vo null -ao null -frames 0 -v <replaceable>filename</replaceable> | grep aid </screen> </para></answer> </qandaentry> <qandaentry> <question><para> I'm trying to play a random stream off the internet but it fails. </para></question> <answer><para> Try playing the stream with the <option>-playlist</option> option. </para></answer> </qandaentry> <qandaentry> <question><para> I downloaded a movie off a P2P network and it doesn't work! </para></question> <answer><para> Your file is most probably broken or a fake file. If you got it from a friend, and he says it works, try comparing <application>md5sum</application> hashes. </para></answer> </qandaentry> <qandaentry> <question><para> I've just installed <application>MPlayer</application>. When I want to open a video file it causes a fatal error: <screen> Error opening/initializing the selected video_out (-vo) device. </screen> How can I solve my problem? </para></question> <answer><para> Just change your video output device. Issue the following command to get a list of available video output drivers: <screen> mplayer -vo help </screen> After you've chosen the correct video output driver, add it to your configuration file. Add <programlisting> vo = <replaceable>selected_vo</replaceable> </programlisting> to <filename>~/.mplayer/config</filename> and/or <programlisting> vo_driver = <replaceable>selected_vo</replaceable> </programlisting> to <filename>~/.mplayer/gui.conf</filename>. </para></answer> </qandaentry> <qandaentry> <question><para> I'm having trouble getting my subtitles to display, help!! </para></question> <answer><para> Make sure you have installed fonts properly. Run through the steps in the <link linkend="mpsub-install">OSD and subtitle</link> part of the installation section again. If you are using TrueType fonts, verify that you have the <systemitem class="library">FreeType</systemitem> library installed. Other things include checking your subtitles in a text editor or with other players. Also try converting them to another format. </para></answer> </qandaentry> <qandaentry> <question><para> Why doesn't <application>MPlayer</application> work on Fedora Core? </para></question> <answer><para> There is a bad interaction on Fedora between exec-shield, prelink, and any applications which use Windows DLLs (such as <application>MPlayer</application>). </para> <para> The problem is that exec-shield randomizes the load addresses of all the system libraries. This randomization happens at prelink time (once every two weeks). </para> <para> When <application>MPlayer</application> tries to load a Windows DLL it wants to put it at a specific address (0x400000). If an important system library happens to be there already, <application>MPlayer</application> will crash. (A typical symptom would be a segmentation fault when trying to play Windows Media 9 files.) </para> <para> If you run into this problem you have two options: <itemizedlist> <listitem><para>Wait two weeks. It might start working again.</para></listitem> <listitem><para>Relink all the binaries on the system with different prelink options. Here are step by step instructions:</para> <para> <orderedlist> <listitem><para>Edit <filename>/etc/syconfig/prelink</filename> and change</para> <para> <programlisting> PRELINK_OPTS=-mR </programlisting> </para> <para> to <programlisting> PRELINK_OPTS="-mR --no-exec-shield" </programlisting> </para> </listitem> <listitem><para><command>touch /var/lib/misc/prelink.force</command></para></listitem> <listitem><para><command>/etc/cron.daily/prelink</command> (This relinks all the applications, and it takes quite a while.)</para></listitem> <listitem> <para><command>execstack -s <replaceable>/path/to/</replaceable>mplayer</command> (This turns off exec-shield for the <application>MPlayer</application> binary.) </para> </listitem> </orderedlist> </para> </listitem> </itemizedlist> </para></answer> </qandaentry> <qandaentry> <question><para> ... works with <application>xine/vlc/...</application> but doesn't with <application>MPlayer</application>. </para></question> <answer><para> <application>MPlayer</application> is not <application>xine/vlc/...</application>. Although these players have some code in common, the codecs (DLL) set, synchronization, demultiplexing etc is different and should not be compared. If you have a file <application>MPlayer</application> fails to play correctly but works in another player, please read the <link linkend="bugreports">bug reporting guidelines</link> and upload the file to our FTP server. </para></answer> </qandaentry> <qandaentry> <question><para> Audio goes out of sync playing an AVI file. </para></question> <answer><para> Try the <option>-bps</option> or <option>-nobps</option> option. If it does not improve, read the <link linkend="bugreports">bug reporting guidelines</link> and upload the file to FTP. </para></answer> </qandaentry> <qandaentry> <question><para> My computer plays MS DivX AVIs with resolutions ~ 640x300 and stereo MP3 sound too slow. When I use <option>-nosound</option> option, everything is OK (but quiet). </para></question> <answer><para> Your machine is too slow or your sound card driver is broken. Consult the documentation to see if you can improve performance. </para></answer> </qandaentry> <qandaentry> <question><para> <application>MPlayer</application> dies with <screen>MPlayer interrupted by signal 4 in module: decode_video</screen> </para></question> <answer><para> Try running <application>MPlayer</application> on the machine you compiled on. Or recompile with runtime CPU detection (<command>./configure --enable-runtime-cpudetection</command>). Don't use <application>MPlayer</application> on a CPU different from the one it was compiled on, without using the feature mentioned just now. </para></answer> </qandaentry> <qandaentry> <question><para> I have problems with [your window manager] and fullscreen xv/xmga/sdl/x11 modes ... </para></question> <answer><para> Read the <link linkend="bugreports">bug reporting guidelines</link> and send us a proper bug report. Also try experimenting with the <option>-fstype</option> option. </para></answer> </qandaentry> <qandaentry> <question><para> When starting <application>MPlayer</application> under KDE I just get a black screen and nothing happens. After about one minute the video starts playing. </para></question> <answer><para> The KDE arts sound daemon is blocking the sound device. Either wait until the video starts or disable the arts-daemon in control center. If you want to use arts sound, specify audio output via our native arts audio driver (<option>-ao arts</option>). If it fails or isn't compiled in, try SDL (<option>-ao sdl</option>) and make sure your SDL can handle arts sound. Yet another option is to start <application>MPlayer</application> with artsdsp. </para></answer> </qandaentry> <qandaentry> <question><para> When I play this movie I get video-audio desync and/or <application>MPlayer</application> crashes with the following message: <screen>DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!</screen> </para></question> <answer><para> This can have multiple reasons. <itemizedlist> <listitem><para> Your CPU <emphasis role="bold">and/or</emphasis> video card <emphasis role="bold">and/or</emphasis> bus is too slow. <application>MPlayer</application> displays a message if this is the case (and the dropped frames counter goes up fast). </para></listitem> <listitem><para> If it is an AVI, maybe it has bad interleaving. Try the <option>-ni</option> option. </para></listitem> <listitem><para> Your sound driver is buggy, or you use ALSA 0.5 with <option>-ao oss</option>. See the <link linkend="audio">sound card section</link>. </para></listitem> <listitem><para> The AVI has a bad header, try the <option>-nobps</option> option, and/or <option>-mc 0</option>. </para></listitem> </itemizedlist> </para></answer> </qandaentry> <qandaentry> <question><para> When I try to grab from my tuner, it works, but colors are strange. It's OK with other applications. </para></question> <answer><para> Your card probably reports some colorspaces as supported when in fact it does not support them. Try with YUY2 instead of the default YV12 (see the <link linkend="tv-input">TV</link> section). </para></answer> </qandaentry> <qandaentry> <question><para> I have A/V sync problems. Some of my AVIs play fine, but some play with double speed! </para></question> <answer><para> You have a buggy sound card/driver. Most likely it's fixed at 44100Hz, and you try to play a file which has 22050Hz audio. Try the resample audio filter. </para></answer> </qandaentry> <qandaentry> <question><para> I get very strange percentage values (way too big) while playing files on my notebook. </para></question> <answer><para> It's an effect of the power management / power saving system of your notebook (BIOS, not kernel). Plug the external power connector in <emphasis role="bold">before</emphasis> you power on your notebook. You can also try whether <ulink url="http://www.brodo.de/cpufreq/">cpufreq</ulink> (a SpeedStep interface for Linux) helps you. </para></answer> </qandaentry> <qandaentry> <question><para> The audio/video gets totally out of sync when I run <application>MPlayer</application> as root on my notebook. It works normal when i run it as a user. </para></question> <answer><para> This is again a power management effect (see above). Plug the external power connector in <emphasis role="bold">before</emphasis> you power on your notebook or use the <option>-nortc</option> option. </para></answer> </qandaentry> <qandaentry> <question><para> While playing a movie it suddenly gets jerky and I get the following message: <screen>Badly interleaved AVI file detected - switching to -ni mode...</screen> </para></question> <answer><para> Badly interleaved files and <option>-cache</option> don't work well together. Try <option>-nocache</option>. </para></answer> </qandaentry> </qandadiv> <qandadiv id="faq-driver"> <title>Video/audio driver problems (vo/ao)</title> <qandaentry> <question><para> How can I use <application>dmix</application> with <application>MPlayer</application>? </para></question> <answer><para> After setting up your <ulink url="http://alsa.opensrc.org/index.php?page=DmixPlugin">asoundrc</ulink> you have to use <option>-ao alsa:device=dmix</option>. </para></answer> </qandaentry> <qandaentry> <question><para> I have no sound when playing a video and get error messages similar to this one: <screen> AO: [oss] 44100Hz 2ch Signed 16-bit (Little-Endian) audio_setup: Can't open audio device /dev/dsp: Device or resource busy couldn't open/init audio device -> NOSOUND Audio: no sound!!! Start playing... </screen> </para></question> <answer><para> Are you running KDE or GNOME with the ARTS or ESD sound daemon? Try disabling the sound daemon or use the <option>-ao arts</option> or <option>-ao esd</option> option to make <application>MPlayer</application> use ARTS or ESD. You might also be running ALSA without OSS emulation, try loading the ALSA OSS kernel modules or add <option>-ao alsa</option> to your command line to directly use the ALSA audio output driver. </para></answer> </qandaentry> </qandadiv> <qandadiv id="faq-dvd"> <title>DVD playback</title> <qandaentry> <question><para> What about DVD navigation/menus? </para></question> <answer><para> <application>MPlayer</application> does not support DVD menus due to serious architectural limitations that prevent proper handling of still images and interactive content. If you want to have fancy menus, you will have to use another player like <application>xine</application>, <application>vlc</application> or <application>Ogle</application>. If you want to see DVD navigation in <application>MPlayer</application> you will have to implement it yourself, but be aware that it is a major undertaking. </para></answer> </qandaentry> <qandaentry> <question><para> What about subtitles? Can <application>MPlayer</application> display them? </para></question> <answer><para> Yes. See the <link linkend="dvd">DVD chapter</link>. </para></answer> </qandaentry> <qandaentry> <question><para> How can I set the region code of my DVD-drive? I don't have Windows! </para></question> <answer><para> Use the <ulink url="http://linvdr.org/projects/regionset/">regionset tool</ulink>. </para></answer> </qandaentry> <qandaentry> <question><para> Do I need to be (setuid) root to be able to play a DVD? </para></question> <answer><para> No. However you must have the proper rights on the DVD device entry (in <filename class="directory">/dev/</filename>). </para></answer> </qandaentry> <qandaentry> <question><para> Is it possible to play/encode only selected chapters? </para></question> <answer><para> Yes, try the <option>-chapter</option> option. </para></answer> </qandaentry> <qandaentry> <question><para> My DVD playback is sluggish! </para></question> <answer><para> Use the <option>-cache</option> option (described in the man page) and try enabling DMA for the DVD drive with the <command>hdparm</command> tool (described in the <link linkend="drives">CD chapter</link>). </para></answer> </qandaentry> <qandaentry> <question><para> I copied a DVD using vobcopy. How do I play/encode it from my hard disk? </para></question> <answer><para> Use the <option>-dvd-device</option> option to refer to the directory that contains the files: <screen> mplayer dvd://1 -dvd-device /path/to/directory </screen> </para></answer> </qandaentry> </qandadiv> <qandadiv id="faq-features"> <title>Feature requests</title> <qandaentry> <question><para> If <application>MPlayer</application> is paused and I try to seek or press any key at all, <application>MPlayer</application> ceases to be paused. I would like to be able to seek in the paused movie. </para></question> <answer><para> This is very tricky to implement without losing A/V synchronization. All attempts have failed so far, but patches are welcome. </para></answer> </qandaentry> <qandaentry> <question><para> I'd like to seek +/- 1 frames instead of 10 seconds. </para></question> <answer><para> You can step forward one frame by pressing <keycap>.</keycap>. If the movie was not paused it will be paused afterwards (see the man page for details). Stepping backwards is unlikely to be implemented anytime soon. </para></answer> </qandaentry> <qandaentry> <question><para> How can I make <application>MPlayer</application> remember the options I use for a particular file, e.g. <filename>movie.avi</filename>? </para></question> <answer><para> Create a file named <filename>movie.avi.conf</filename> with the file-specific options in it and put it in <filename class="directory">~/.mplayer</filename> or in the same directory as the file. </para></answer> </qandaentry> </qandadiv> <qandadiv id="faq-encoding"> <title>Encoding</title> <qandaentry> <question><para> How can I encode? </para></question> <answer><para> Read the <link linkend="mencoder"><application>MEncoder</application></link> section. </para></answer> </qandaentry> <qandaentry> <question><para> How can I dump a full DVD title into a file? </para></question> <answer><para> Once you have selected your title, and made sure it plays fine with <application>MPlayer</application>, use the option <option>-dumpstream</option>. For example: <screen> mplayer -dumpstream dvd://5 -dumpfile <replaceable>dvd_dump.vob</replaceable> </screen> will dump the 5th title of the DVD into the file <replaceable>dvd_dump.vob</replaceable> </para></answer> </qandaentry> <qandaentry> <question><para> How can I create (S)VCDs automatically? </para></question> <answer><para> Try the <filename>mencvcd</filename> script from the <filename class="directory">TOOLS</filename> subdirectory. With it you can encode DVDs or other movies to VCD or SVCD format and even burn them directly to CD. </para></answer> </qandaentry> <qandaentry> <question><para> How can I create (S)VCDs? </para></question> <answer><para> Newer versions of <application>MEncoder</application> can directly generate MPEG-2 files that can be used as a base to create a VCD or SVCD and are likely to be playable out of the box on all platforms (for example, to share a video from a digital camcorder with your computer-illiterate friends). <screen> mencoder -of mpeg -oac toolame -toolameopts br=224 -srate 44100 \ -af-adv force=1 -ovc lavc -mpegopts format=xsvcd -vf harddup -ofps 25 \ -lavcopts vcodec=mpeg2video:mbd=2:keyint=25:vrc_buf_size=917:vrc_minrate=600:vbitrate=2500:vrc_maxrate=2500 \ <replaceable>in.avi</replaceable> -o <replaceable>xsvcd.mpg</replaceable> </screen> This will convert the input file <replaceable>in.avi</replaceable> into the output file <replaceable>xsvcd.mpg</replaceable>, converting the audio with <systemitem class="library">toolame</systemitem> at 224kbps and the video with <systemitem class="library">libavcodec</systemitem> at 2500kbps, making sure the bitrate never goes below 600 and never exceeds 2500kbps, in order to respect the (S)VCD norm and ensure an smooth playback. </para><para> Please note that in order to make the GOP structure SVCD compliant the <option>keyint</option> option should be 15 for PAL and 18 for NTSC, although very often files with much longer GOPs play correctly (25 should never lead to any problem). Also, even though leaving out <option>-ofps</option> should work in most cases (as your source is likely to have the appropriate framerate already), PAL requires <option>-ofps</option> 25 and NTSC requires <option>-ofps</option> 30000/1001. What's more, PAL SVCDs only support 480x576 and 352x288 resolutions, whereas NTSC only supports 480x480 and 352x240. If the source video has a different resolution, then you must rescale with the <option>scale</option> video filter, which will make your filter chain look like for example <option>-vf scale=480:480,harddup</option> for an NTSC SVCD or <option>-vf scale=352:288,harddup</option> for a PAL SVCD. </para><para> As far as the audio is concerned, SVCD only supports MPEG-1 layer II audio, therefore you have to use one of <systemitem class="library">toolame</systemitem>, <systemitem class="library">twolame</systemitem>, or as a last resort <systemitem class="library">libavcodec</systemitem>'s MPEG-1 layer II encoder (as its quality is far from being as good as the former two libraries). Both <systemitem class="library">toolame</systemitem> and <systemitem class="library">twolame</systemitem> follow the same syntax, so you depending on which one you managed to install, the example only requires a small change. If you do need to use <systemitem class="library">libavcodec</systemitem>'s MPEG-1 layer II encoder, replace <screen> -oac toolame -toolameopts br=224 </screen> if you use toolame or <screen> -oac twolame -twolameopts br=224 </screen> if you use twolame by: <screen> -oac lavc -lavcopts acodec=mp2:abitrate=224 </screen> </para><para> The resulting <replaceable>xsvcd.mpg</replaceable> is an extended SVCD (that is why it is called xsvcd), mainly because it does not contain scan offsets. If you need to generate an SVCD image out of it, you should pass it to <ulink url="http://www.gnu.org/software/vcdimager/vcdimager.html">vcdimager</ulink>. </para></answer> </qandaentry> <qandaentry> <question><para> How can I join two video files? </para></question> <answer><para> MPEG files can be concatenated into a single file with luck. For AVI files, you can use <application>MEncoder</application>'s multiple file support like this: <screen> mencoder -ovc copy -oac copy -o out.avi file1.avi file2.avi </screen> This will only work if the files are of the same resolution and codec. You can also try <ulink url="http://fixounet.free.fr/avidemux/">avidemux</ulink> and <application>avimerge</application> (part of the <ulink url="http://www.transcoding.org/">transcode</ulink> tool set). </para></answer> </qandaentry> <qandaentry> <question><para> How can I fix AVI files with broken index or interleaving? </para></question> <answer><para> Simply copy the video and audio streams into a new file, and <application>MEncoder</application> generates the index. Of course this cannot fix possible bugs in the video and/or audio streams. It also fixes files with broken interleaving, thus the <option>-ni</option> option will not be needed for them anymore. <screen> mencoder -idx <replaceable>input.avi</replaceable> -ovc copy -oac copy -o <replaceable>output.avi</replaceable> </screen> </para></answer> </qandaentry> <qandaentry> <question><para> How can I fix the aspect ration of an AVI file? </para></question> <answer><para> You can do such a thing thanks to <application>MEncoder</application>'s <option>-force-avi-aspect</option> option, which overrides the aspect stored in the AVI OpenDML vprp header option. For example: <screen> mencoder <replaceable>input.avi</replaceable> -ovc copy -oac copy -o <replaceable>output.avi</replaceable> -force-avi-aspect 4/3 </screen> </para></answer> </qandaentry> <qandaentry> <question><para> I can't encode DVD subtitles into the AVI! </para></question> <answer><para> You have to specify the <option>-sid</option> option correctly! </para></answer> </qandaentry> <qandaentry> <question><para> How can I encode only selected chapters from a DVD? </para></question> <answer><para> Use the <option>-chapter</option> option correctly, like: <option>-chapter 5-7</option> </para></answer> </qandaentry> <qandaentry> <question><para> I'm trying to work with 2GB+ files on a VFAT file system. Does it work? </para></question> <answer><para> No, VFAT doesn't support 2GB+ files. </para></answer> </qandaentry> <qandaentry> <question><para> Why is the recommended bitrate printed by <application>MEncoder</application> negative? </para></question> <answer><para> Because the bitrate you encoded the audio with is too large to fit the movie on any CD. Check if you have libmp3lame installed properly. </para></answer> </qandaentry> <qandaentry> <question><para> I can't encode an ASF file to AVI/MPEG-4 (DivX) because it uses 1000 fps. </para></question> <answer><para> Because ASF uses variable frame rate but AVI uses a fixed one, you have to set it by hand using <option>-ofps</option>. </para></answer> </qandaentry> <qandaentry> <question><para> How can I put subtitles in the output file? </para></question> <answer><para> Just pass the <option>-sub <filename></option> (or <option>-sid</option>, respectively) option to <application>MEncoder</application>. </para></answer> </qandaentry> <qandaentry> <question><para> How do I encode only sound from a music video? </para></question> <answer><para> It's not possible directly, but you can try this (note the <emphasis role="bold">&</emphasis> at the end of <command>mplayer</command> command): <screen> mkfifo encode mplayer -ao pcm -aofile encode dvd://1 & lame <replaceable>your_opts</replaceable> encode music.mp3 rm encode </screen> This allows you to use any encoder, not only <application>LAME</application>, just replace <command>lame</command> with your favorite audio encoder in the above command. </para></answer> </qandaentry> <qandaentry> <question><para> Why do third-party players fail to play MPEG-4 movies encoded by <application>MEncoder</application> versions later than 1.0pre7? </para></question> <answer><para> <systemitem class="library">libavcodec</systemitem>, the native MPEG-4 encoding library usually shipped with <application>MEncoder</application>, used to set the FourCC to 'DIVX' when encoding MPEG-4 videos (the FourCC is an AVI tag to identify the software used to encode and the intended software to use for decoding the video). This led many people to think that <systemitem class="library">libavcodec</systemitem> was a DivX encoding library, when in fact it is a completely different MPEG-4 encoding library which implements the MPEG-4 standard much better than DivX does. Therefore, the new default FourCC used by <systemitem class="library">libavcodec</systemitem> is 'FMP4', but you may override this behavior using <application>MEncoder</application>'s <option>-ffourcc</option> option. You may also change the FourCC of existing files in the same way: <screen> mencoder <replaceable>input.avi</replaceable> -o <replaceable>output.avi</replaceable> -ffourcc XVID </screen> Note that this will set the FourCC as XVID rather than as DIVX. This is recommended as DIVX FourCC means DivX4, which is a very basic MPEG-4 codec, whereas DX50 and XVID both mean full MPEG-4 (ASP). Therefore, if you change the FourCC to DIVX, some bad software or hardware players may choke on some advanced features that <systemitem class="library">libavcodec</systemitem> supports, but DivX doesn't; on the other hand <systemitem class="library">XviD</systemitem> is closer to <systemitem class="library">libavcodec</systemitem> in terms of functionality, and is supported by all decent players. </para></answer> </qandaentry> </qandadiv> </qandaset> </chapter>