1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

avio: avio_ prefix for url_fsize

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 76aa876e69)
This commit is contained in:
Anton Khirnov 2011-03-04 19:57:36 +01:00 committed by Michael Niedermayer
parent 1447dc59de
commit db44ea960d
25 changed files with 37 additions and 32 deletions

View File

@ -1364,8 +1364,8 @@ static void print_report(AVFormatContext **output_files,
oc = output_files[0]; oc = output_files[0];
total_size = url_fsize(oc->pb); total_size = avio_size(oc->pb);
if(total_size<0) // FIXME improve url_fsize() so it works with non seekable output too if(total_size<0) // FIXME improve avio_size() so it works with non seekable output too
total_size= avio_tell(oc->pb); total_size= avio_tell(oc->pb);
buf[0] = '\0'; buf[0] = '\0';

View File

@ -2842,7 +2842,7 @@ static void event_loop(void)
} }
if (cur_stream) { if (cur_stream) {
if(seek_by_bytes || cur_stream->ic->duration<=0){ if(seek_by_bytes || cur_stream->ic->duration<=0){
uint64_t size= url_fsize(cur_stream->ic->pb); uint64_t size= avio_size(cur_stream->ic->pb);
stream_seek(cur_stream, size*x/cur_stream->width, 0, 1); stream_seek(cur_stream, size*x/cur_stream->width, 0, 1);
}else{ }else{
int64_t ts; int64_t ts;

View File

@ -66,7 +66,7 @@ static int ape_tag_read_field(AVFormatContext *s)
void ff_ape_parse_tag(AVFormatContext *s) void ff_ape_parse_tag(AVFormatContext *s)
{ {
AVIOContext *pb = s->pb; AVIOContext *pb = s->pb;
int file_size = url_fsize(pb); int file_size = avio_size(pb);
uint32_t val, fields, tag_bytes; uint32_t val, fields, tag_bytes;
uint8_t buf[8]; uint8_t buf[8];
int i; int i;

View File

@ -138,7 +138,7 @@ static int read_braindead_odml_indx(AVFormatContext *s, int frame_num){
AVIStream *ast; AVIStream *ast;
int i; int i;
int64_t last_pos= -1; int64_t last_pos= -1;
int64_t filesize= url_fsize(s->pb); int64_t filesize= avio_size(s->pb);
#ifdef DEBUG_SEEK #ifdef DEBUG_SEEK
av_log(s, AV_LOG_ERROR, "longs_pre_entry:%d index_type:%d entries_in_use:%d chunk_id:%X base:%16"PRIX64"\n", av_log(s, AV_LOG_ERROR, "longs_pre_entry:%d index_type:%d entries_in_use:%d chunk_id:%X base:%16"PRIX64"\n",
@ -351,7 +351,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
if (get_riff(s, pb) < 0) if (get_riff(s, pb) < 0)
return -1; return -1;
avi->fsize = url_fsize(pb); avi->fsize = avio_size(pb);
if(avi->fsize<=0) if(avi->fsize<=0)
avi->fsize= avi->riff_end == 8 ? INT64_MAX : avi->riff_end; avi->fsize= avi->riff_end == 8 ? INT64_MAX : avi->riff_end;
@ -378,7 +378,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
if (tag1 == MKTAG('m', 'o', 'v', 'i')) { if (tag1 == MKTAG('m', 'o', 'v', 'i')) {
avi->movi_list = avio_tell(pb) - 4; avi->movi_list = avio_tell(pb) - 4;
if(size) avi->movi_end = avi->movi_list + size + (size & 1); if(size) avi->movi_end = avi->movi_list + size + (size & 1);
else avi->movi_end = url_fsize(pb); else avi->movi_end = avio_size(pb);
av_dlog(NULL, "movi end=%"PRIx64"\n", avi->movi_end); av_dlog(NULL, "movi end=%"PRIx64"\n", avi->movi_end);
goto end_of_header; goto end_of_header;
} }
@ -705,7 +705,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
av_log(s, AV_LOG_ERROR, "Something went wrong during header parsing, " av_log(s, AV_LOG_ERROR, "Something went wrong during header parsing, "
"I will ignore it and try to continue anyway.\n"); "I will ignore it and try to continue anyway.\n");
avi->movi_list = avio_tell(pb) - 4; avi->movi_list = avio_tell(pb) - 4;
avi->movi_end = url_fsize(pb); avi->movi_end = avio_size(pb);
goto end_of_header; goto end_of_header;
} }
/* skip tag */ /* skip tag */

View File

@ -426,6 +426,7 @@ attribute_deprecated int url_fclose(AVIOContext *s);
attribute_deprecated int64_t url_fseek(AVIOContext *s, int64_t offset, int whence); attribute_deprecated int64_t url_fseek(AVIOContext *s, int64_t offset, int whence);
attribute_deprecated int url_fskip(AVIOContext *s, int64_t offset); attribute_deprecated int url_fskip(AVIOContext *s, int64_t offset);
attribute_deprecated int64_t url_ftell(AVIOContext *s); attribute_deprecated int64_t url_ftell(AVIOContext *s);
attribute_deprecated int64_t url_fsize(AVIOContext *s);
#define URL_EOF (-1) #define URL_EOF (-1)
attribute_deprecated int url_fgetc(AVIOContext *s); attribute_deprecated int url_fgetc(AVIOContext *s);
/** /**
@ -485,7 +486,7 @@ int64_t avio_seek(AVIOContext *s, int64_t offset, int whence);
* Get the filesize. * Get the filesize.
* @return filesize or AVERROR * @return filesize or AVERROR
*/ */
int64_t url_fsize(AVIOContext *s); int64_t avio_size(AVIOContext *s);
/** /**
* feof() equivalent for AVIOContext. * feof() equivalent for AVIOContext.

View File

@ -246,7 +246,7 @@ int64_t url_ftell(AVIOContext *s)
} }
#endif #endif
int64_t url_fsize(AVIOContext *s) int64_t avio_size(AVIOContext *s)
{ {
int64_t size; int64_t size;
@ -371,6 +371,10 @@ int64_t url_fseek(AVIOContext *s, int64_t offset, int whence)
{ {
return avio_seek(s, offset, whence); return avio_seek(s, offset, whence);
} }
int64_t url_fsize(AVIOContext *s)
{
return avio_size(s);
}
#endif #endif
int avio_put_str(AVIOContext *s, const char *str) int avio_put_str(AVIOContext *s, const char *str)

View File

@ -284,7 +284,7 @@ static int read_header(AVFormatContext *s,
"block size or frame size are variable.\n"); "block size or frame size are variable.\n");
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
s->file_size = url_fsize(pb); s->file_size = avio_size(pb);
s->file_size = FFMAX(0, s->file_size); s->file_size = FFMAX(0, s->file_size);
av_set_pts_info(st, 64, 1, st->codec->sample_rate); av_set_pts_info(st, 64, 1, st->codec->sample_rate);

View File

@ -38,7 +38,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
/// 75 sectors/sec * 4 packets/sector = 300 packets/sec /// 75 sectors/sec * 4 packets/sector = 300 packets/sec
av_set_pts_info(vst, 32, 1, 300); av_set_pts_info(vst, 32, 1, 300);
ret = url_fsize(s->pb); ret = avio_size(s->pb);
if (ret > 0) if (ret > 0)
vst->duration = (ret * vst->time_base.den) / (CDG_PACKET_SIZE * 300); vst->duration = (ret * vst->time_base.den) / (CDG_PACKET_SIZE * 300);

View File

@ -370,7 +370,7 @@ static int64_t dv_frame_offset(AVFormatContext *s, DVDemuxContext *c,
// FIXME: sys may be wrong if last dv_read_packet() failed (buffer is junk) // FIXME: sys may be wrong if last dv_read_packet() failed (buffer is junk)
const DVprofile* sys = ff_dv_codec_profile(c->vst->codec); const DVprofile* sys = ff_dv_codec_profile(c->vst->codec);
int64_t offset; int64_t offset;
int64_t size = url_fsize(s->pb) - s->data_offset; int64_t size = avio_size(s->pb) - s->data_offset;
int64_t max_offset = ((size-1) / sys->frame_size) * sys->frame_size; int64_t max_offset = ((size-1) / sys->frame_size) * sys->frame_size;
offset = sys->frame_size * timestamp; offset = sys->frame_size * timestamp;

View File

@ -282,7 +282,7 @@ static int ffm_read_header(AVFormatContext *s, AVFormatParameters *ap)
ffm->write_index = avio_rb64(pb); ffm->write_index = avio_rb64(pb);
/* get also filesize */ /* get also filesize */
if (!url_is_streamed(pb)) { if (!url_is_streamed(pb)) {
ffm->file_size = url_fsize(pb); ffm->file_size = avio_size(pb);
if (ffm->write_index) if (ffm->write_index)
adjust_write_index(s); adjust_write_index(s);
} else { } else {

View File

@ -43,7 +43,7 @@ static int read_header(AVFormatContext *s,
if (url_is_streamed(s->pb)) if (url_is_streamed(s->pb))
return AVERROR(EIO); return AVERROR(EIO);
avio_seek(pb, url_fsize(pb) - 36, SEEK_SET); avio_seek(pb, avio_size(pb) - 36, SEEK_SET);
if (avio_rb32(pb) != RAND_TAG) { if (avio_rb32(pb) != RAND_TAG) {
av_log(s, AV_LOG_ERROR, "magic number not found"); av_log(s, AV_LOG_ERROR, "magic number not found");
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;

View File

@ -373,7 +373,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
if(!url_is_streamed(s->pb) && (!s->duration || s->duration==AV_NOPTS_VALUE)){ if(!url_is_streamed(s->pb) && (!s->duration || s->duration==AV_NOPTS_VALUE)){
int size; int size;
const int64_t pos= avio_tell(s->pb); const int64_t pos= avio_tell(s->pb);
const int64_t fsize= url_fsize(s->pb); const int64_t fsize= avio_size(s->pb);
avio_seek(s->pb, fsize-4, SEEK_SET); avio_seek(s->pb, fsize-4, SEEK_SET);
size= avio_rb32(s->pb); size= avio_rb32(s->pb);
avio_seek(s->pb, fsize-3-size, SEEK_SET); avio_seek(s->pb, fsize-3-size, SEEK_SET);

View File

@ -310,7 +310,7 @@ static int gxf_write_material_data_section(AVFormatContext *s)
/* estimated size */ /* estimated size */
avio_w8(pb, MAT_SIZE); avio_w8(pb, MAT_SIZE);
avio_w8(pb, 4); avio_w8(pb, 4);
avio_wb32(pb, url_fsize(pb) / 1024); avio_wb32(pb, avio_size(pb) / 1024);
return updateSize(pb, pos); return updateSize(pb, pos);
} }

View File

@ -231,7 +231,7 @@ void ff_id3v1_read(AVFormatContext *s)
if (!url_is_streamed(s->pb)) { if (!url_is_streamed(s->pb)) {
/* XXX: change that */ /* XXX: change that */
filesize = url_fsize(s->pb); filesize = avio_size(s->pb);
if (filesize > 128) { if (filesize > 128) {
avio_seek(s->pb, filesize - 128, SEEK_SET); avio_seek(s->pb, filesize - 128, SEEK_SET);
ret = avio_read(s->pb, buf, ID3v1_TAG_SIZE); ret = avio_read(s->pb, buf, ID3v1_TAG_SIZE);

View File

@ -276,7 +276,7 @@ static int read_packet(AVFormatContext *s1, AVPacket *pkt)
av_log(s1, AV_LOG_ERROR, "Could not open file : %s\n",filename); av_log(s1, AV_LOG_ERROR, "Could not open file : %s\n",filename);
return AVERROR(EIO); return AVERROR(EIO);
} }
size[i]= url_fsize(f[i]); size[i]= avio_size(f[i]);
if(codec->codec_id != CODEC_ID_RAWVIDEO) if(codec->codec_id != CODEC_ID_RAWVIDEO)
break; break;

View File

@ -179,7 +179,7 @@ static size_t av_read(void * h, size_t len, uint8_t * buf) {
static off_t av_seek(void * h, long long pos, int whence) { static off_t av_seek(void * h, long long pos, int whence) {
AVIOContext * bc = h; AVIOContext * bc = h;
if (whence == SEEK_END) { if (whence == SEEK_END) {
pos = url_fsize(bc) + pos; pos = avio_size(bc) + pos;
whence = SEEK_SET; whence = SEEK_SET;
} }
return avio_seek(bc, pos, whence); return avio_seek(bc, pos, whence);

View File

@ -304,7 +304,7 @@ static int mov_read_default(MOVContext *c, AVIOContext *pb, MOVAtom atom)
if (err < 0) if (err < 0)
return err; return err;
if (c->found_moov && c->found_mdat && if (c->found_moov && c->found_mdat &&
(url_is_streamed(pb) || start_pos + a.size == url_fsize(pb))) (url_is_streamed(pb) || start_pos + a.size == avio_size(pb)))
return 0; return 0;
left = a.size - avio_tell(pb) + start_pos; left = a.size - avio_tell(pb) + start_pos;
if (left > 0) /* skip garbage at atom end */ if (left > 0) /* skip garbage at atom end */
@ -2351,7 +2351,7 @@ static int mov_read_header(AVFormatContext *s, AVFormatParameters *ap)
mov->fc = s; mov->fc = s;
/* .mov and .mp4 aren't streamable anyway (only progressive download if moov is before mdat) */ /* .mov and .mp4 aren't streamable anyway (only progressive download if moov is before mdat) */
if(!url_is_streamed(pb)) if(!url_is_streamed(pb))
atom.size = url_fsize(pb); atom.size = avio_size(pb);
else else
atom.size = INT64_MAX; atom.size = INT64_MAX;

View File

@ -508,7 +508,7 @@ static int find_and_decode_index(NUTContext *nut){
AVIOContext *bc = s->pb; AVIOContext *bc = s->pb;
uint64_t tmp, end; uint64_t tmp, end;
int i, j, syncpoint_count; int i, j, syncpoint_count;
int64_t filesize= url_fsize(bc); int64_t filesize= avio_size(bc);
int64_t *syncpoints; int64_t *syncpoints;
int8_t *has_keyframe; int8_t *has_keyframe;
int ret= -1; int ret= -1;

View File

@ -462,7 +462,7 @@ ogg_get_length (AVFormatContext * s)
if (s->duration != AV_NOPTS_VALUE) if (s->duration != AV_NOPTS_VALUE)
return 0; return 0;
size = url_fsize(s->pb); size = avio_size(s->pb);
if(size < 0) if(size < 0)
return 0; return 0;
end = size > MAX_PAGE_SIZE? size - MAX_PAGE_SIZE: 0; end = size > MAX_PAGE_SIZE? size - MAX_PAGE_SIZE: 0;

View File

@ -180,7 +180,7 @@ static int r3d_read_header(AVFormatContext *s, AVFormatParameters *ap)
if (url_is_streamed(s->pb)) if (url_is_streamed(s->pb))
return 0; return 0;
// find REOB/REOF/REOS to load index // find REOB/REOF/REOS to load index
avio_seek(s->pb, url_fsize(s->pb)-48-8, SEEK_SET); avio_seek(s->pb, avio_size(s->pb)-48-8, SEEK_SET);
if (read_atom(s, &atom) < 0) if (read_atom(s, &atom) < 0)
av_log(s, AV_LOG_ERROR, "error reading end atom\n"); av_log(s, AV_LOG_ERROR, "error reading end atom\n");

View File

@ -33,7 +33,7 @@ int ff_sauce_read(AVFormatContext *avctx, uint64_t *fsize, int *got_width, int g
AVIOContext *pb = avctx->pb; AVIOContext *pb = avctx->pb;
char buf[36]; char buf[36];
int datatype, filetype, t1, t2, nb_comments, flags; int datatype, filetype, t1, t2, nb_comments, flags;
uint64_t start_pos = url_fsize(pb) - 128; uint64_t start_pos = avio_size(pb) - 128;
avio_seek(pb, start_pos, SEEK_SET); avio_seek(pb, start_pos, SEEK_SET);
if (avio_read(pb, buf, 7) != 7) if (avio_read(pb, buf, 7) != 7)

View File

@ -89,7 +89,7 @@ static int read_header(AVFormatContext *avctx,
s->chars_per_frame = FFMAX(av_q2d(st->time_base) * (ap->sample_rate ? ap->sample_rate : LINE_RATE), 1); s->chars_per_frame = FFMAX(av_q2d(st->time_base) * (ap->sample_rate ? ap->sample_rate : LINE_RATE), 1);
if (!url_is_streamed(avctx->pb)) { if (!url_is_streamed(avctx->pb)) {
s->fsize = url_fsize(avctx->pb); s->fsize = avio_size(avctx->pb);
st->duration = (s->fsize + s->chars_per_frame - 1) / s->chars_per_frame; st->duration = (s->fsize + s->chars_per_frame - 1) / s->chars_per_frame;
if (ff_sauce_read(avctx, &s->fsize, 0, 0) < 0) if (ff_sauce_read(avctx, &s->fsize, 0, 0) < 0)

View File

@ -1557,7 +1557,7 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index, int64_t target_ts, i
if(ts_max == AV_NOPTS_VALUE){ if(ts_max == AV_NOPTS_VALUE){
int step= 1024; int step= 1024;
filesize = url_fsize(s->pb); filesize = avio_size(s->pb);
pos_max = filesize - 1; pos_max = filesize - 1;
do{ do{
pos_max -= step; pos_max -= step;
@ -1666,7 +1666,7 @@ static int av_seek_frame_byte(AVFormatContext *s, int stream_index, int64_t pos,
#endif #endif
pos_min = s->data_offset; pos_min = s->data_offset;
pos_max = url_fsize(s->pb) - 1; pos_max = avio_size(s->pb) - 1;
if (pos < pos_min) pos= pos_min; if (pos < pos_min) pos= pos_min;
else if(pos > pos_max) pos= pos_max; else if(pos > pos_max) pos= pos_max;
@ -2007,7 +2007,7 @@ static void av_estimate_timings(AVFormatContext *ic, int64_t old_offset)
if (ic->iformat->flags & AVFMT_NOFILE) { if (ic->iformat->flags & AVFMT_NOFILE) {
file_size = 0; file_size = 0;
} else { } else {
file_size = url_fsize(ic->pb); file_size = avio_size(ic->pb);
if (file_size < 0) if (file_size < 0)
file_size = 0; file_size = 0;
} }

View File

@ -80,7 +80,7 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size)
if (!voc->remaining_size) { if (!voc->remaining_size) {
if (url_is_streamed(s->pb)) if (url_is_streamed(s->pb))
return AVERROR(EIO); return AVERROR(EIO);
voc->remaining_size = url_fsize(pb) - avio_tell(pb); voc->remaining_size = avio_size(pb) - avio_tell(pb);
} }
max_size -= 4; max_size -= 4;

View File

@ -190,7 +190,7 @@ static int yop_read_seek(AVFormatContext *s, int stream_index,
return -1; return -1;
pos_min = s->data_offset; pos_min = s->data_offset;
pos_max = url_fsize(s->pb) - yop->frame_size; pos_max = avio_size(s->pb) - yop->frame_size;
frame_count = (pos_max - pos_min) / yop->frame_size; frame_count = (pos_max - pos_min) / yop->frame_size;
timestamp = FFMAX(0, FFMIN(frame_count, timestamp)); timestamp = FFMAX(0, FFMIN(frame_count, timestamp));