summaryrefslogtreecommitdiff
path: root/libavformat/rsodec.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2012-12-03 17:47:11 +0000
committerPaul B Mahol <onemda@gmail.com>2012-12-05 12:40:57 +0000
commit8ecf22ffb01e2fa721d7449e33ee9fb5a7937697 (patch)
tree3d7c058360c3e7374b0b78277193057445aabac9 /libavformat/rsodec.c
parentacac16b5c78366917d166d91ade01b713b9703e5 (diff)
rsodec: use ff_pcm_read_packet()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Diffstat (limited to 'libavformat/rsodec.c')
-rw-r--r--libavformat/rsodec.c19
1 files changed, 2 insertions, 17 deletions
diff --git a/libavformat/rsodec.c b/libavformat/rsodec.c
index 19c21e0291..d8ed695fdf 100644
--- a/libavformat/rsodec.c
+++ b/libavformat/rsodec.c
@@ -65,34 +65,19 @@ static int rso_read_header(AVFormatContext *s)
st->codec->channels = 1;
st->codec->channel_layout = AV_CH_LAYOUT_MONO;
st->codec->sample_rate = rate;
+ st->codec->block_align = 1;
avpriv_set_pts_info(st, 64, 1, rate);
return 0;
}
-#define BLOCK_SIZE 1024 /* in samples */
-
-static int rso_read_packet(AVFormatContext *s, AVPacket *pkt)
-{
- int bps = av_get_bits_per_sample(s->streams[0]->codec->codec_id);
- int ret = av_get_packet(s->pb, pkt, BLOCK_SIZE * bps >> 3);
-
- if (ret < 0)
- return ret;
-
- pkt->flags &= ~AV_PKT_FLAG_CORRUPT;
- pkt->stream_index = 0;
-
- return 0;
-}
-
AVInputFormat ff_rso_demuxer = {
.name = "rso",
.long_name = NULL_IF_CONFIG_SMALL("Lego Mindstorms RSO"),
.extensions = "rso",
.read_header = rso_read_header,
- .read_packet = rso_read_packet,
+ .read_packet = ff_pcm_read_packet,
.read_seek = ff_pcm_read_seek,
.codec_tag = (const AVCodecTag* const []){ff_codec_rso_tags, 0},
};