[MPlayer-cvslog] r31520 - in trunk: etc/codecs.conf libmpdemux/demux_ts.c

reimar subversion at mplayerhq.hu
Mon Jun 21 18:41:30 CEST 2010


Author: reimar
Date: Mon Jun 21 18:41:30 2010
New Revision: 31520

Log:
Make demux_ts detect LATM AAC as a separate type.

Modified:
   trunk/etc/codecs.conf
   trunk/libmpdemux/demux_ts.c

Modified: trunk/etc/codecs.conf
==============================================================================
--- trunk/etc/codecs.conf	Mon Jun 21 16:46:09 2010	(r31519)
+++ trunk/etc/codecs.conf	Mon Jun 21 18:41:30 2010	(r31520)
@@ -4016,7 +4016,7 @@ audiocodec ffnellymoser
 audiocodec faad
   info "FAAD AAC (MPEG-2/MPEG-4 Audio)"
   status working
-  fourcc mp4a,MP4A
+  fourcc mp4a,MP4A,MP4L
   fourcc "VLB " ; Used in NSV, not really working
   fourcc "AAC " ; Used in NSV
   fourcc "AACP" ; Used in NSV for AACPlus

Modified: trunk/libmpdemux/demux_ts.c
==============================================================================
--- trunk/libmpdemux/demux_ts.c	Mon Jun 21 16:46:09 2010	(r31519)
+++ trunk/libmpdemux/demux_ts.c	Mon Jun 21 18:41:30 2010	(r31520)
@@ -85,6 +85,7 @@ typedef enum
 	SL_PES_STREAM	= 0xD000000,
 	SL_SECTION	= 0xD100000,
 	MP4_OD		= 0xD200000,
+	AUDIO_AAC_LATM	= mmioFOURCC('M', 'P', '4', 'L'),
 } es_stream_type_t;
 
 typedef struct {
@@ -246,7 +247,7 @@ typedef struct {
 } TS_pids_t;
 
 
-#define IS_AUDIO(x) (((x) == AUDIO_MP2) || ((x) == AUDIO_A52) || ((x) == AUDIO_LPCM_BE) || ((x) == AUDIO_AAC) || ((x) == AUDIO_DTS) || ((x) == AUDIO_TRUEHD))
+#define IS_AUDIO(x) (((x) == AUDIO_MP2) || ((x) == AUDIO_A52) || ((x) == AUDIO_LPCM_BE) || ((x) == AUDIO_AAC) || ((x) == AUDIO_DTS) || ((x) == AUDIO_TRUEHD) || ((x) == AUDIO_AAC_LATM))
 #define IS_VIDEO(x) (((x) == VIDEO_MPEG1) || ((x) == VIDEO_MPEG2) || ((x) == VIDEO_MPEG4) || ((x) == VIDEO_H264) || ((x) == VIDEO_AVC)  || ((x) == VIDEO_DIRAC) || ((x) == VIDEO_VC1))
 #define IS_SUB(x) (((x) == SPU_DVD) || ((x) == SPU_DVB) || ((x) == SPU_TELETEXT))
 
@@ -875,6 +876,8 @@ static off_t ts_detect_streams(demuxer_t
 		mp_msg(MSGT_DEMUXER, MSGL_INFO, "AUDIO LPCM(pid=%d)", param->apid);
 	else if(param->atype == AUDIO_AAC)
 		mp_msg(MSGT_DEMUXER, MSGL_INFO, "AUDIO AAC(pid=%d)", param->apid);
+	else if(param->atype == AUDIO_AAC_LATM)
+		mp_msg(MSGT_DEMUXER, MSGL_INFO, "AUDIO AAC LATM(pid=%d)", param->apid);
 	else if(param->atype == AUDIO_TRUEHD)
 		mp_msg(MSGT_DEMUXER, MSGL_INFO, "AUDIO TRUEHD(pid=%d)", param->apid);
 	else
@@ -2508,9 +2511,11 @@ static int parse_pmt(ts_priv_t * priv, u
 				pmt->es[idx].type = VIDEO_MPEG4;
 				break;
 			case 0x0f:
-			case 0x11:
 				pmt->es[idx].type = AUDIO_AAC;
 				break;
+			case 0x11:
+				pmt->es[idx].type = AUDIO_AAC_LATM;
+				break;
 			case 0x1b:
 				pmt->es[idx].type = VIDEO_H264;
 				break;


More information about the MPlayer-cvslog mailing list