Mercurial > mplayer.hg
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 — by about 40-60% in typical cases — |
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> |