X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fvocdec.c;h=8ad690929a87135851218ac434ec809b6c2d9596;hb=541e8f3beccbe806599e9af4902d1e68b4367b80;hp=02a038a9ec68658e64ba46972a65075ab0f247b4;hpb=eb67342fdc066f08c3722894f81e5293cf6f1dab;p=ffmpeg diff --git a/libavformat/vocdec.c b/libavformat/vocdec.c index 02a038a9ec6..8ad690929a8 100644 --- a/libavformat/vocdec.c +++ b/libavformat/vocdec.c @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU Lesser General Public * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include "voc.h" @@ -26,7 +26,7 @@ static int voc_probe(AVProbeData *p) { int version, check; - if (memcmp(p->buf, voc_magic, sizeof(voc_magic) - 1)) + if (memcmp(p->buf, ff_voc_magic, sizeof(ff_voc_magic) - 1)) return 0; version = AV_RL16(p->buf + 22); check = AV_RL16(p->buf + 24); @@ -38,8 +38,8 @@ static int voc_probe(AVProbeData *p) static int voc_read_header(AVFormatContext *s, AVFormatParameters *ap) { - voc_dec_context_t *voc = s->priv_data; - ByteIOContext *pb = &s->pb; + VocDecContext *voc = s->priv_data; + ByteIOContext *pb = s->pb; int header_size; AVStream *st; @@ -47,12 +47,12 @@ static int voc_read_header(AVFormatContext *s, AVFormatParameters *ap) header_size = get_le16(pb) - 22; if (header_size != 4) { av_log(s, AV_LOG_ERROR, "unknown header size: %d\n", header_size); - return AVERROR_NOTSUPP; + return AVERROR(ENOSYS); } url_fskip(pb, header_size); st = av_new_stream(s, 0); if (!st) - return AVERROR_NOMEM; + return AVERROR(ENOMEM); st->codec->codec_type = CODEC_TYPE_AUDIO; voc->remaining_size = 0; @@ -62,10 +62,10 @@ static int voc_read_header(AVFormatContext *s, AVFormatParameters *ap) int voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) { - voc_dec_context_t *voc = s->priv_data; + VocDecContext *voc = s->priv_data; AVCodecContext *dec = st->codec; - ByteIOContext *pb = &s->pb; - voc_type_t type; + ByteIOContext *pb = s->pb; + VocType type; int size; int sample_rate = 0; int channels = 1; @@ -73,7 +73,7 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) while (!voc->remaining_size) { type = get_byte(pb); if (type == VOC_TYPE_EOF) - return AVERROR_IO; + return AVERROR(EIO); voc->remaining_size = get_le24(pb); max_size -= 4; @@ -83,8 +83,8 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) if (sample_rate) dec->sample_rate = sample_rate; dec->channels = channels; - dec->codec_id = codec_get_id(voc_codec_tags, get_byte(pb)); - dec->bits_per_sample = av_get_bits_per_sample(dec->codec_id); + dec->codec_id = codec_get_id(ff_voc_codec_tags, get_byte(pb)); + dec->bits_per_coded_sample = av_get_bits_per_sample(dec->codec_id); voc->remaining_size -= 2; max_size -= 2; channels = 1; @@ -104,9 +104,9 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) case VOC_TYPE_NEW_VOICE_DATA: dec->sample_rate = get_le32(pb); - dec->bits_per_sample = get_byte(pb); + dec->bits_per_coded_sample = get_byte(pb); dec->channels = get_byte(pb); - dec->codec_id = codec_get_id(voc_codec_tags, get_le16(pb)); + dec->codec_id = codec_get_id(ff_voc_codec_tags, get_le16(pb)); url_fskip(pb, 4); voc->remaining_size -= 12; max_size -= 12; @@ -120,7 +120,7 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) } } - dec->bit_rate = dec->sample_rate * dec->bits_per_sample; + dec->bit_rate = dec->sample_rate * dec->bits_per_coded_sample; if (max_size <= 0) max_size = 2048; @@ -134,18 +134,12 @@ static int voc_read_packet(AVFormatContext *s, AVPacket *pkt) return voc_get_packet(s, pkt, s->streams[0], 0); } -static int voc_read_close(AVFormatContext *s) -{ - return 0; -} - AVInputFormat voc_demuxer = { "voc", - "Creative Voice File format", - sizeof(voc_dec_context_t), + NULL_IF_CONFIG_SMALL("Creative Voice file format"), + sizeof(VocDecContext), voc_probe, voc_read_header, voc_read_packet, - voc_read_close, - .codec_tag=(const AVCodecTag*[]){voc_codec_tags, 0}, + .codec_tag=(const AVCodecTag* const []){ff_voc_codec_tags, 0}, };