# HG changeset patch # User banan # Date 1222431145 0 # Node ID 4928ebaaf2bda508ce234c9f6678b8ba7b124b80 # Parent 7141e56c9f6912f94a221170055d70c3c1e005f1 add ok parts to the rm demuxer for SIPRO support diff -r 7141e56c9f69 -r 4928ebaaf2bd rmdec.c --- a/rmdec.c Fri Sep 26 10:59:42 2008 +0000 +++ b/rmdec.c Fri Sep 26 12:12:25 2008 +0000 @@ -127,7 +127,7 @@ } 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 @@ } 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 @@ } 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;