[MPlayer-cvslog] r27732 - in trunk: libaf/reorder_ch.c libaf/reorder_ch.h libmpcodecs/ad_ffmpeg.c

ulion subversion at mplayerhq.hu
Thu Oct 9 09:46:20 CEST 2008


Author: ulion
Date: Thu Oct  9 09:46:20 2008
New Revision: 27732

Log:
Fix channel order for ffmpeg flac codec.
This patch comes from Andrew de Quincey <adq_dvb at lidskialf dot net>.


Modified:
   trunk/libaf/reorder_ch.c
   trunk/libaf/reorder_ch.h
   trunk/libmpcodecs/ad_ffmpeg.c

Modified: trunk/libaf/reorder_ch.c
==============================================================================
--- trunk/libaf/reorder_ch.c	(original)
+++ trunk/libaf/reorder_ch.c	Thu Oct  9 09:46:20 2008
@@ -1109,6 +1109,7 @@ static int channel_layout_mapping_5ch[AF
     AF_CHANNEL_LAYOUT_LAVC_LIBA52_5CH_DEFAULT,
     AF_CHANNEL_LAYOUT_LAVC_DCA_5CH_DEFAULT,
     AF_CHANNEL_LAYOUT_VORBIS_5CH_DEFAULT,
+    AF_CHANNEL_LAYOUT_FLAC_5CH_DEFAULT,
 };
 
 static int channel_layout_mapping_6ch[AF_CHANNEL_LAYOUT_SOURCE_NUM] = {
@@ -1119,6 +1120,7 @@ static int channel_layout_mapping_6ch[AF
     AF_CHANNEL_LAYOUT_LAVC_LIBA52_6CH_DEFAULT,
     AF_CHANNEL_LAYOUT_LAVC_DCA_6CH_DEFAULT,
     AF_CHANNEL_LAYOUT_VORBIS_6CH_DEFAULT,
+    AF_CHANNEL_LAYOUT_FLAC_6CH_DEFAULT,
 };
 
 void reorder_channel_copy_nch(void *src,

Modified: trunk/libaf/reorder_ch.h
==============================================================================
--- trunk/libaf/reorder_ch.h	(original)
+++ trunk/libaf/reorder_ch.h	Thu Oct  9 09:46:20 2008
@@ -73,6 +73,8 @@
 #define AF_CHANNEL_LAYOUT_LAVC_DCA_6CH_DEFAULT AF_CHANNEL_LAYOUT_5_1_D
 #define AF_CHANNEL_LAYOUT_VORBIS_5CH_DEFAULT AF_CHANNEL_LAYOUT_5_0_C
 #define AF_CHANNEL_LAYOUT_VORBIS_6CH_DEFAULT AF_CHANNEL_LAYOUT_5_1_C
+#define AF_CHANNEL_LAYOUT_FLAC_5CH_DEFAULT AF_CHANNEL_LAYOUT_5_0_A
+#define AF_CHANNEL_LAYOUT_FLAC_6CH_DEFAULT AF_CHANNEL_LAYOUT_5_1_A
 
 #define AF_CHANNEL_MASK  0xFF
 #define AF_GET_CH_NUM(A) ((A)&0x7F)
@@ -105,7 +107,8 @@ void reorder_channel(void *buf,
 #define AF_CHANNEL_LAYOUT_LAVC_LIBA52_DEFAULT 4
 #define AF_CHANNEL_LAYOUT_LAVC_DCA_DEFAULT    5
 #define AF_CHANNEL_LAYOUT_VORBIS_DEFAULT      6
-#define AF_CHANNEL_LAYOUT_SOURCE_NUM          7
+#define AF_CHANNEL_LAYOUT_FLAC_DEFAULT        7
+#define AF_CHANNEL_LAYOUT_SOURCE_NUM          8
 #define AF_CHANNEL_LAYOUT_MPLAYER_DEFAULT AF_CHANNEL_LAYOUT_ALSA_DEFAULT
 
 /// Optimized channel reorder between different audio sources and targets.

Modified: trunk/libmpcodecs/ad_ffmpeg.c
==============================================================================
--- trunk/libmpcodecs/ad_ffmpeg.c	(original)
+++ trunk/libmpcodecs/ad_ffmpeg.c	Thu Oct  9 09:46:20 2008
@@ -177,6 +177,8 @@ static int decode_audio(sh_audio_t *sh_a
               src_ch_layout = AF_CHANNEL_LAYOUT_LAVC_LIBA52_DEFAULT;
             else if (!strcasecmp(codec, "vorbis"))
               src_ch_layout = AF_CHANNEL_LAYOUT_VORBIS_DEFAULT;
+            else if (!strcasecmp(codec, "flac"))
+              src_ch_layout = AF_CHANNEL_LAYOUT_FLAC_DEFAULT;
             else
               src_ch_layout = AF_CHANNEL_LAYOUT_MPLAYER_DEFAULT;
             reorder_channel_nch(buf, src_ch_layout,



More information about the MPlayer-cvslog mailing list