Also support alsa channel reordering for u16 and u32 formats.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Wed, 13 Apr 2011 23:10:18 +0000 (01:10 +0200)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Thu, 14 Apr 2011 01:33:10 +0000 (03:33 +0200)
libavdevice/alsa-audio-common.c

index 0222729..a6f3899 100644 (file)
@@ -129,6 +129,7 @@ static av_cold ff_reorder_func find_reorder_func(int codec_id,
                                                  int out)
 {
     return
+    codec_id == CODEC_ID_PCM_U16LE || codec_id == CODEC_ID_PCM_U16BE ||
     codec_id == CODEC_ID_PCM_S16LE || codec_id == CODEC_ID_PCM_S16BE ?
         layout == AV_CH_LAYOUT_5POINT0_BACK || layout == AV_CH_LAYOUT_5POINT0 ?
             out ? alsa_reorder_int16_out_50 : NULL :
@@ -138,6 +139,7 @@ static av_cold ff_reorder_func find_reorder_func(int codec_id,
         layout == AV_CH_LAYOUT_7POINT1 ?
             out ? alsa_reorder_int16_out_71 : NULL :
             NULL :
+    codec_id == CODEC_ID_PCM_U32LE || codec_id == CODEC_ID_PCM_U32BE ||
     codec_id == CODEC_ID_PCM_S32LE || codec_id == CODEC_ID_PCM_S32BE ?
         layout == AV_CH_LAYOUT_5POINT0_BACK || layout == AV_CH_LAYOUT_5POINT0 ?
             out ? alsa_reorder_int32_out_50 : NULL :