psxstr: set channel layout
authorJustin Ruggles <justin.ruggles@gmail.com>
Sat, 7 Apr 2012 21:56:19 +0000 (17:56 -0400)
committerJustin Ruggles <justin.ruggles@gmail.com>
Mon, 12 Nov 2012 15:33:21 +0000 (10:33 -0500)
libavformat/psxstr.c

index 800d9cb..633d61d 100644 (file)
@@ -29,6 +29,7 @@
  * RIFF headers, followed by CD sectors.
  */
 
+#include "libavutil/channel_layout.h"
 #include "libavutil/intreadwrite.h"
 #include "avformat.h"
 #include "internal.h"
@@ -219,7 +220,13 @@ static int str_read_packet(AVFormatContext *s,
                 st->codec->codec_type  = AVMEDIA_TYPE_AUDIO;
                 st->codec->codec_id    = AV_CODEC_ID_ADPCM_XA;
                 st->codec->codec_tag   = 0;  /* no fourcc */
-                st->codec->channels    = (fmt&1)?2:1;
+                if (fmt & 1) {
+                    st->codec->channels       = 2;
+                    st->codec->channel_layout = AV_CH_LAYOUT_STEREO;
+                } else {
+                    st->codec->channels       = 1;
+                    st->codec->channel_layout = AV_CH_LAYOUT_MONO;
+                }
                 st->codec->sample_rate = (fmt&4)?18900:37800;
             //    st->codec->bit_rate = 0; //FIXME;
                 st->codec->block_align = 128;