comparison DOCS/xml/en/encoding-guide.xml @ 17755:7d2a7df681e6

various improvements of the section "Choosing the video codec"
author gpoirier
date Mon, 06 Mar 2006 07:19:00 +0000
parents 21af02625f12
children 9376e7b470d6
comparison
equal deleted inserted replaced
17754:a84008150411 17755:7d2a7df681e6
1354 1354
1355 <sect2 id="menc-feat-dvd-mpeg4-codec"> 1355 <sect2 id="menc-feat-dvd-mpeg4-codec">
1356 <title>Choosing the video codec</title> 1356 <title>Choosing the video codec</title>
1357 1357
1358 <para> 1358 <para>
1359 Choosing the video codec to use depends on several factors, some of 1359 Which video codec is best to choose depends on several factors,
1360 like size, quality, streamability, usability and popularity, some of
1360 which widely depend on personal taste and technical constraints. 1361 which widely depend on personal taste and technical constraints.
1361 </para> 1362 </para>
1362 <itemizedlist> 1363 <itemizedlist>
1363 <listitem><para> 1364 <listitem><para>
1364 <emphasis role="bold">Compression efficiency</emphasis>: 1365 <emphasis role="bold">Compression efficiency</emphasis>:
1365 It is quite easy to understand that newer-generation codecs are made 1366 It is quite easy to understand that most newer-generation codecs are
1366 to yield better picture quality than previous generations. 1367 made to increase quality and compression.
1367 Therefore, you cannot go wrong 1368 Therefore, the authors of this guide and many other people suggest that
1369 you cannot go wrong
1368 <footnote id='fn-menc-feat-dvd-mpeg4-codec-cpu'> 1370 <footnote id='fn-menc-feat-dvd-mpeg4-codec-cpu'>
1369 <para>Be careful, however: Decoding DVD-resolution MPEG-4 AVC videos 1371 <para>Be careful, however: Decoding DVD-resolution MPEG-4 AVC videos
1370 requires a fast machine (i.e. a Pentium 4 over 1.5Ghz or a Pentium M 1372 requires a fast machine (i.e. a Pentium 4 over 1.5Ghz or a Pentium M
1371 over 1Ghz). 1373 over 1Ghz).
1372 </para></footnote> 1374 </para></footnote>
1373 when choosing MPEG-4 AVC codecs like 1375 when choosing MPEG-4 AVC codecs like
1374 <systemitem class="library">x264</systemitem> instead of MPEG-4 ASP codecs 1376 <systemitem class="library">x264</systemitem> instead of MPEG-4 ASP codecs
1375 such as <systemitem class="library">libavcodec</systemitem> MPEG-4 or 1377 such as <systemitem class="library">libavcodec</systemitem> MPEG-4 or
1376 <systemitem class="library">XviD</systemitem>. 1378 <systemitem class="library">XviD</systemitem>.
1377 (To get a better grasp of what the fundamental differences between 1379 (Advanced codec developers may be interested in reading Michael
1378 MPEG-4 ASP and MPEG-4 AVC are, you would be well advised to read the entry 1380 Niedermayer's opinion on
1379 "<ulink url="http://guru.multimedia.cx/?p=10">15 reasons why MPEG4 sucks</ulink>" 1381 "<ulink url="http://guru.multimedia.cx/?p=10">why MPEG4-ASP sucks</ulink>".)
1380 from Michael Niedermayer's blog.) 1382 Likewise, you should get better quality using MPEG-4 ASP than you
1381 Likewise, you should get better quality using MPEG-4 ASP instead 1383 would with MPEG-2 codecs.
1382 of MPEG-2 codecs.
1383 </para> 1384 </para>
1384 <para> 1385 <para>
1385 However, newer codecs which are in heavy development can suffer from 1386 However, newer codecs which are in heavy development can suffer from
1386 bugs which have not yet been noticed and which can ruin an encode. 1387 bugs which have not yet been noticed and which can ruin an encode.
1387 This is simply the tradeoff for using bleeding-edge technology. 1388 This is simply the tradeoff for using bleeding-edge technology.
1415 However, they may have some very advanced options that, if enabled, 1416 However, they may have some very advanced options that, if enabled,
1416 will make the encode really slow for marginal gains. 1417 will make the encode really slow for marginal gains.
1417 </para> 1418 </para>
1418 <para> 1419 <para>
1419 If you are after blazing speed you should stick around the default 1420 If you are after blazing speed you should stick around the default
1420 settings of the video codec (which does not mean you should not experiment 1421 settings of the video codec (although you should still try the other
1421 with some of the options which are mentioned in other sections 1422 options which are mentioned in other sections of this guide).
1422 of this guide).
1423 </para> 1423 </para>
1424 <para> 1424 <para>
1425 You may also consider choosing a codec which can do multi-threaded 1425 You may also consider choosing a codec which can do multi-threaded
1426 processing. 1426 processing, though this is only useful for users of machines with
1427 several CPUs.
1427 <systemitem class="library">libavcodec</systemitem> MPEG-4 does 1428 <systemitem class="library">libavcodec</systemitem> MPEG-4 does
1428 allow that, resulting in small speed gains at the price of lower 1429 allow that, but speed gains are limited, and there is a slight
1429 picture quality. 1430 negative effect on picture quality.
1430 <systemitem class="library">XviD</systemitem> has some experimental 1431 <systemitem class="library">XviD</systemitem>'s multi-threaded encoding,
1431 patches available to boost encoding speed, by about 40-60% in typical 1432 activated by the <options>threads</option> option, can be used to
1432 cases, with low picture degradation. 1433 boost encoding speed &mdash; by about 40-60% in typical cases &mdash;
1434 with little if any picture degradation.
1433 <systemitem class="library">x264</systemitem> also allows multi-threaded 1435 <systemitem class="library">x264</systemitem> also allows multi-threaded
1434 encoding, which currently speeds-up encoding by 15-30% while lowering 1436 encoding, which currently speeds up encoding by 15-30% (depending on
1435 PSNR by about 0.05dB. 1437 the encoding settings) while lowering PSNR by about 0.05dB.
1436 </para></listitem> 1438 </para></listitem>
1437 1439
1438 <listitem><para> 1440 <listitem><para>
1439 <emphasis role="bold">Personal taste</emphasis>: 1441 <emphasis role="bold">Personal taste</emphasis>:
1440 This is where it gets almost irrational: For the same reason that some 1442 This is where it gets almost irrational: For the same reason that some
1442 some folks will prefer <systemitem class="library">XviD</systemitem> 1444 some folks will prefer <systemitem class="library">XviD</systemitem>
1443 or <systemitem class="library">libavcodec</systemitem> MPEG-4 over 1445 or <systemitem class="library">libavcodec</systemitem> MPEG-4 over
1444 <systemitem class="library">x264</systemitem>. 1446 <systemitem class="library">x264</systemitem>.
1445 </para> 1447 </para>
1446 <para> 1448 <para>
1447 Make your own judgment, and do not always listen to what some people will 1449 You should make your own judgement; do not take advice from people who
1448 tell you to do or think: The best codec is the one you master the best, 1450 swear by one codec.
1449 and the one that looks best to your eyes on your display 1451 Take a few sample clips from raw sources and compare different
1452 encoding options and codecs to find one that suits you best.
1453 The best codec is the one you master, and the one that looks
1454 best to your eyes on your display
1450 <footnote id='fn-menc-feat-dvd-mpeg4-codec-playback'> 1455 <footnote id='fn-menc-feat-dvd-mpeg4-codec-playback'>
1451 <para>The same encode may not look the same on someone else's monitor or 1456 <para>The same encode may not look the same on someone else's monitor or
1452 when played back by a different decoder, so future-proof your encodes by 1457 when played back by a different decoder, so future-proof your encodes by
1453 playing them back on different setups.</para></footnote>! 1458 playing them back on different setups.</para></footnote>!
1454 </para></listitem> 1459 </para></listitem>