Index: libavformat/matroskadec.c |
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c |
index fd569be1874744038866b7a9b7865c210eb5add5..bc1ad3e9763fa6262e6ca2c717a8cb64e23c792b 100644 |
--- a/libavformat/matroskadec.c |
+++ b/libavformat/matroskadec.c |
@@ -1567,7 +1567,9 @@ static int matroska_read_header(AVFormatContext *s) |
} else if (codec_id == CODEC_ID_RA_144) { |
track->audio.out_samplerate = 8000; |
track->audio.channels = 1; |
- } else if (codec_id == CODEC_ID_RA_288 || codec_id == CODEC_ID_COOK || |
+ } |
+#if CONFIG_RA_288_DECODER || CONFIG_COOK_DECODER || CONFIG_ATRAC3_DECODER || CONFIG_SIPR_DECODER |
+ else if (codec_id == CODEC_ID_RA_288 || codec_id == CODEC_ID_COOK || |
codec_id == CODEC_ID_ATRAC3 || codec_id == CODEC_ID_SIPR) { |
int flavor; |
ffio_init_context(&b, track->codec_priv.data,track->codec_priv.size, |
@@ -1595,6 +1597,7 @@ static int matroska_read_header(AVFormatContext *s) |
extradata_offset = 78; |
} |
} |
+#endif |
track->codec_priv.size -= extradata_offset; |
if (codec_id == CODEC_ID_NONE) |
@@ -1912,6 +1915,7 @@ static int matroska_parse_block(MatroskaDemuxContext *matroska, uint8_t *data, |
if (res == 0) { |
for (n = 0; n < laces; n++) { |
+#if CONFIG_RA_288_DECODER || CONFIG_COOK_DECODER || CONFIG_ATRAC3_DECODER || CONFIG_SIPR_DECODER |
if ((st->codec->codec_id == CODEC_ID_RA_288 || |
st->codec->codec_id == CODEC_ID_COOK || |
st->codec->codec_id == CODEC_ID_SIPR || |
@@ -1958,7 +1962,9 @@ static int matroska_parse_block(MatroskaDemuxContext *matroska, uint8_t *data, |
pkt->stream_index = st->index; |
dynarray_add(&matroska->packets,&matroska->num_packets,pkt); |
} |
- } else { |
+ } else |
+#endif |
+ { |
MatroskaTrackEncoding *encodings = track->encodings.elem; |
int offset = 0, pkt_size = lace_size[n]; |
uint8_t *pkt_data = data; |