[FFmpeg-cvslog] r18045 - in trunk: doc/general.texi libavcodec/Makefile libavcodec/allcodecs.c libavcodec/avcodec.h libavcodec/mlp_parser.c libavcodec/mlpdec.c libavformat/mpeg.c

ramiro subversion
Thu Mar 19 22:23:39 CET 2009


Author: ramiro
Date: Thu Mar 19 22:23:39 2009
New Revision: 18045

Log:
Split TrueHD decoder from MLP

Modified:
   trunk/doc/general.texi
   trunk/libavcodec/Makefile
   trunk/libavcodec/allcodecs.c
   trunk/libavcodec/avcodec.h
   trunk/libavcodec/mlp_parser.c
   trunk/libavcodec/mlpdec.c
   trunk/libavformat/mpeg.c

Modified: trunk/doc/general.texi
==============================================================================
--- trunk/doc/general.texi	Thu Mar 19 19:13:42 2009	(r18044)
+++ trunk/doc/general.texi	Thu Mar 19 22:23:39 2009	(r18045)
@@ -544,8 +544,8 @@ following image formats are supported:
 @item IMC (Intel Music Coder)  @tab     @tab  X
 @item MACE (Macintosh Audio Compression/Expansion) 3:1  @tab     @tab  X
 @item MACE (Macintosh Audio Compression/Expansion) 6:1  @tab     @tab  X
- at item MLP(Meridian Lossless Packing)/TrueHD  @tab     @tab  X
-    @tab Used in DVD-Audio and Blu-Ray discs.
+ at item MLP (Meridian Lossless Packing)  @tab     @tab  X
+    @tab Used in DVD-Audio discs.
 @item Monkey's Audio         @tab     @tab  X
     @tab Only versions 3.97-3.99 are supported.
 @item MP1 (MPEG audio layer 1)  @tab     @tab IX
@@ -598,6 +598,8 @@ following image formats are supported:
 @item Speex                  @tab     @tab  E
     @tab supported through external library libspeex
 @item True Audio (TTA)       @tab     @tab  X
+ at item TrueHD                 @tab     @tab  X
+    @tab Used in HD-DVD and Blu-Ray discs.
 @item Vorbis                 @tab  E  @tab  X
     @ A native but very primitive encoder exists.
 @item WavPack                @tab     @tab  X

Modified: trunk/libavcodec/Makefile
==============================================================================
--- trunk/libavcodec/Makefile	Thu Mar 19 19:13:42 2009	(r18044)
+++ trunk/libavcodec/Makefile	Thu Mar 19 22:23:39 2009	(r18045)
@@ -211,6 +211,7 @@ OBJS-$(CONFIG_THP_DECODER)             +
 OBJS-$(CONFIG_TIERTEXSEQVIDEO_DECODER) += tiertexseqv.o
 OBJS-$(CONFIG_TIFF_DECODER)            += tiff.o lzw.o faxcompr.o
 OBJS-$(CONFIG_TIFF_ENCODER)            += tiffenc.o rle.o lzwenc.o
+OBJS-$(CONFIG_TRUEHD_DECODER)          += mlpdec.o mlp_parser.o mlp.o
 OBJS-$(CONFIG_TRUEMOTION1_DECODER)     += truemotion1.o
 OBJS-$(CONFIG_TRUEMOTION2_DECODER)     += truemotion2.o
 OBJS-$(CONFIG_TRUESPEECH_DECODER)      += truespeech.o

Modified: trunk/libavcodec/allcodecs.c
==============================================================================
--- trunk/libavcodec/allcodecs.c	Thu Mar 19 19:13:42 2009	(r18044)
+++ trunk/libavcodec/allcodecs.c	Thu Mar 19 22:23:39 2009	(r18045)
@@ -215,6 +215,7 @@ void avcodec_register_all(void)
     REGISTER_DECODER (SMACKAUD, smackaud);
     REGISTER_ENCDEC  (SONIC, sonic);
     REGISTER_ENCODER (SONIC_LS, sonic_ls);
+    REGISTER_DECODER (TRUEHD, truehd);
     REGISTER_DECODER (TRUESPEECH, truespeech);
     REGISTER_DECODER (TTA, tta);
     REGISTER_DECODER (VMDAUDIO, vmdaudio);

Modified: trunk/libavcodec/avcodec.h
==============================================================================
--- trunk/libavcodec/avcodec.h	Thu Mar 19 19:13:42 2009	(r18044)
+++ trunk/libavcodec/avcodec.h	Thu Mar 19 22:23:39 2009	(r18045)
@@ -30,7 +30,7 @@
 #include "libavutil/avutil.h"
 
 #define LIBAVCODEC_VERSION_MAJOR 52
-#define LIBAVCODEC_VERSION_MINOR 21
+#define LIBAVCODEC_VERSION_MINOR 22
 #define LIBAVCODEC_VERSION_MICRO  0
 
 #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
@@ -310,6 +310,7 @@ enum CodecID {
     CODEC_ID_SIPR,
     CODEC_ID_MP1,
     CODEC_ID_TWINVQ,
+    CODEC_ID_TRUEHD,
 
     /* subtitle codecs */
     CODEC_ID_DVD_SUBTITLE= 0x17000,

Modified: trunk/libavcodec/mlp_parser.c
==============================================================================
--- trunk/libavcodec/mlp_parser.c	Thu Mar 19 19:13:42 2009	(r18044)
+++ trunk/libavcodec/mlp_parser.c	Thu Mar 19 22:23:39 2009	(r18045)
@@ -287,7 +287,7 @@ lost_sync:
 }
 
 AVCodecParser mlp_parser = {
-    { CODEC_ID_MLP },
+    { CODEC_ID_MLP, CODEC_ID_TRUEHD },
     sizeof(MLPParseContext),
     mlp_init,
     mlp_parse,

Modified: trunk/libavcodec/mlpdec.c
==============================================================================
--- trunk/libavcodec/mlpdec.c	Thu Mar 19 19:13:42 2009	(r18044)
+++ trunk/libavcodec/mlpdec.c	Thu Mar 19 22:23:39 2009	(r18045)
@@ -1038,6 +1038,7 @@ error:
     return -1;
 }
 
+#if CONFIG_MLP_DECODER
 AVCodec mlp_decoder = {
     "mlp",
     CODEC_TYPE_AUDIO,
@@ -1047,6 +1048,20 @@ AVCodec mlp_decoder = {
     NULL,
     NULL,
     read_access_unit,
-    .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)/TrueHD"),
+    .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)"),
 };
+#endif /* CONFIG_MLP_DECODER */
 
+#if CONFIG_TRUEHD_DECODER
+AVCodec truehd_decoder = {
+    "truehd",
+    CODEC_TYPE_AUDIO,
+    CODEC_ID_TRUEHD,
+    sizeof(MLPDecodeContext),
+    mlp_decode_init,
+    NULL,
+    NULL,
+    read_access_unit,
+    .long_name = NULL_IF_CONFIG_SMALL("TrueHD"),
+};
+#endif /* CONFIG_TRUEHD_DECODER */

Modified: trunk/libavformat/mpeg.c
==============================================================================
--- trunk/libavformat/mpeg.c	Thu Mar 19 19:13:42 2009	(r18044)
+++ trunk/libavformat/mpeg.c	Thu Mar 19 22:23:39 2009	(r18045)
@@ -487,7 +487,7 @@ static int mpegps_read_packet(AVFormatCo
         codec_id = CODEC_ID_PCM_DVD;
     } else if (startcode >= 0xb0 && startcode <= 0xbf) {
         type = CODEC_TYPE_AUDIO;
-        codec_id = CODEC_ID_MLP;
+        codec_id = CODEC_ID_TRUEHD;
     } else if (startcode >= 0xc0 && startcode <= 0xcf) {
         /* Used for both AC-3 and E-AC-3 in EVOB files */
         type = CODEC_TYPE_AUDIO;




More information about the ffmpeg-cvslog mailing list