add audio output sampling freqency reading in matroska
authorAurelien Jacobs <aurel@gnuage.org>
Wed, 8 Nov 2006 20:09:56 +0000 (20:09 +0000)
committerAurelien Jacobs <aurel@gnuage.org>
Wed, 8 Nov 2006 20:09:56 +0000 (20:09 +0000)
Originally committed as revision 6946 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/matroska.c

index e4763f3848339bad6d1ec2a51c8ab4780d59954a..4917388a1c8bade6aad8483b90936561c51a77fa 100644 (file)
 
 /* IDs in the trackaudio master */
 #define MATROSKA_ID_AUDIOSAMPLINGFREQ 0xB5
+#define MATROSKA_ID_AUDIOOUTSAMPLINGFREQ 0x78B5
+
 #define MATROSKA_ID_AUDIOBITDEPTH 0x6264
 #define MATROSKA_ID_AUDIOCHANNELS 0x9F
 
@@ -273,6 +275,7 @@ typedef struct MatroskaAudioTrack {
 
     int channels,
         bitdepth,
+        internal_samplerate,
         samplerate;
     //..
 } MatroskaAudioTrack;
@@ -1429,6 +1432,16 @@ matroska_add_stream (MatroskaDemuxContext *matroska)
                     switch (id) {
                         /* samplerate */
                         case MATROSKA_ID_AUDIOSAMPLINGFREQ: {
+                            double num;
+                            if ((res = ebml_read_float(matroska, &id,
+                                                       &num)) < 0)
+                                break;
+                            audiotrack->internal_samplerate =
+                            audiotrack->samplerate = num;
+                            break;
+                        }
+
+                        case MATROSKA_ID_AUDIOOUTSAMPLINGFREQ: {
                             double num;
                             if ((res = ebml_read_float(matroska, &id,
                                                        &num)) < 0)