aboutsummaryrefslogtreecommitdiff
path: root/libavformat/rmdec.c
diff options
context:
space:
mode:
authorBenjamin Larsson2008-09-26 12:12:25 +0000
committerBenjamin Larsson2008-09-26 12:12:25 +0000
commit2426bb960ab71afb21dcf55f7753f3a441694054 (patch)
tree089c861ad61af1fb25be522831230f51bac6d522 /libavformat/rmdec.c
parentfaeedbbb062d536a2c70659bc30142948070ddd2 (diff)
add ok parts to the rm demuxer for SIPRO support
Originally committed as revision 15426 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/rmdec.c')
-rw-r--r--libavformat/rmdec.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c
index 07daa9d4d3..8442957400 100644
--- a/libavformat/rmdec.c
+++ b/libavformat/rmdec.c
@@ -127,7 +127,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVStream *st,
}
rm->audiobuf = av_malloc(rm->audio_framesize * sub_packet_h);
- } else if ((!strcmp(buf, "cook")) || (!strcmp(buf, "atrc"))) {
+ } else if ((!strcmp(buf, "cook")) || (!strcmp(buf, "atrc")) || (!strcmp(buf, "sipr"))) {
int codecdata_length, i;
get_be16(pb); get_byte(pb);
if (((version >> 16) & 0xff) == 5)
@@ -139,6 +139,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVStream *st,
}
if (!strcmp(buf, "cook")) st->codec->codec_id = CODEC_ID_COOK;
+ else if (!strcmp(buf, "sipr")) st->codec->codec_id = CODEC_ID_SIPR;
else st->codec->codec_id = CODEC_ID_ATRAC3;
st->codec->extradata_size= codecdata_length;
st->codec->extradata= av_mallocz(st->codec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE);
@@ -557,7 +558,8 @@ ff_rm_parse_packet (AVFormatContext *s, AVStream *st, int len, AVPacket *pkt,
} else if (st->codec->codec_type == CODEC_TYPE_AUDIO) {
if ((st->codec->codec_id == CODEC_ID_RA_288) ||
(st->codec->codec_id == CODEC_ID_COOK) ||
- (st->codec->codec_id == CODEC_ID_ATRAC3)) {
+ (st->codec->codec_id == CODEC_ID_ATRAC3) ||
+ (st->codec->codec_id == CODEC_ID_SIPR)) {
int x;
int sps = rm->sub_packet_size;
int cfs = rm->coded_framesize;