diff options
-rw-r--r-- | libavformat/matroska.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libavformat/matroska.c b/libavformat/matroska.c index e4763f3..4917388 100644 --- a/libavformat/matroska.c +++ b/libavformat/matroska.c @@ -110,6 +110,8 @@ /* 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; @@ -1433,6 +1436,16 @@ matroska_add_stream (MatroskaDemuxContext *matroska) 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) + break; audiotrack->samplerate = num; break; } |