X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Ftmv.c;h=73b44bbc1dc8be92cc389763e4c70c1ddc0f73c2;hb=b89f8774f2778c5aad4633a98e3a12597344730a;hp=3fe9e65dccc349984bcac23639a54957a4814f78;hpb=b7effd4e8338f6ed5bda630ad7ed0809bf458648;p=ffmpeg diff --git a/libavformat/tmv.c b/libavformat/tmv.c index 3fe9e65dccc..73b44bbc1dc 100644 --- a/libavformat/tmv.c +++ b/libavformat/tmv.c @@ -2,32 +2,33 @@ * 8088flex TMV file demuxer * Copyright (c) 2009 Daniel Verkamp * - * This file is part of FFmpeg. + * This file is part of Libav. * - * FFmpeg is free software; you can redistribute it and/or + * Libav is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * - * FFmpeg is distributed in the hope that it will be useful, + * Libav is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software + * License along with Libav; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ /** - * 8088flex TMV file demuxer * @file + * 8088flex TMV file demuxer * @author Daniel Verkamp - * @sa http://www.oldskool.org/pc/8088_Corruption + * @see http://www.oldskool.org/pc/8088_Corruption */ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "internal.h" enum { TMV_PADDING = 0x01, @@ -73,10 +74,10 @@ static int tmv_read_header(AVFormatContext *s, AVFormatParameters *ap) if (avio_rl32(pb) != TMV_TAG) return -1; - if (!(vst = av_new_stream(s, 0))) + if (!(vst = avformat_new_stream(s, NULL))) return AVERROR(ENOMEM); - if (!(ast = av_new_stream(s, 0))) + if (!(ast = avformat_new_stream(s, NULL))) return AVERROR(ENOMEM); ast->codec->sample_rate = avio_rl16(pb); @@ -115,7 +116,7 @@ static int tmv_read_header(AVFormatContext *s, AVFormatParameters *ap) ast->codec->bits_per_coded_sample = 8; ast->codec->bit_rate = ast->codec->sample_rate * ast->codec->bits_per_coded_sample; - av_set_pts_info(ast, 32, 1, ast->codec->sample_rate); + avpriv_set_pts_info(ast, 32, 1, ast->codec->sample_rate); fps.num = ast->codec->sample_rate * ast->codec->channels; fps.den = tmv->audio_chunk_size; @@ -126,7 +127,7 @@ static int tmv_read_header(AVFormatContext *s, AVFormatParameters *ap) vst->codec->pix_fmt = PIX_FMT_PAL8; vst->codec->width = char_cols * 8; vst->codec->height = char_rows * 8; - av_set_pts_info(vst, 32, fps.den, fps.num); + avpriv_set_pts_info(vst, 32, fps.den, fps.num); if (features & TMV_PADDING) tmv->padding = @@ -146,13 +147,13 @@ static int tmv_read_packet(AVFormatContext *s, AVPacket *pkt) int ret, pkt_size = tmv->stream_index ? tmv->audio_chunk_size : tmv->video_chunk_size; - if (url_feof(pb)) + if (pb->eof_reached) return AVERROR_EOF; ret = av_get_packet(pb, pkt, pkt_size); if (tmv->stream_index) - url_fskip(pb, tmv->padding); + avio_skip(pb, tmv->padding); pkt->stream_index = tmv->stream_index; tmv->stream_index ^= 1; @@ -173,19 +174,18 @@ static int tmv_read_seek(AVFormatContext *s, int stream_index, pos = timestamp * (tmv->audio_chunk_size + tmv->video_chunk_size + tmv->padding); - url_fseek(s->pb, pos + TMV_HEADER_SIZE, SEEK_SET); + avio_seek(s->pb, pos + TMV_HEADER_SIZE, SEEK_SET); tmv->stream_index = 0; return 0; } AVInputFormat ff_tmv_demuxer = { - "tmv", - NULL_IF_CONFIG_SMALL("8088flex TMV"), - sizeof(TMVContext), - tmv_probe, - tmv_read_header, - tmv_read_packet, - NULL, - tmv_read_seek, + .name = "tmv", + .long_name = NULL_IF_CONFIG_SMALL("8088flex TMV"), + .priv_data_size = sizeof(TMVContext), + .read_probe = tmv_probe, + .read_header = tmv_read_header, + .read_packet = tmv_read_packet, + .read_seek = tmv_read_seek, .flags = AVFMT_GENERIC_INDEX, };