uint32_t size, fsize;
c->has_sound = 1;
size = avio_rb32(pb);
- c->vidpos = url_ftell(pb) + size;
- avio_seek(pb, 16, SEEK_CUR);
+ c->vidpos = avio_tell(pb) + size;
+ avio_skip(pb, 16);
fsize = avio_rl32(pb);
ast = av_new_stream(s, 0);
return -1;
ff_get_wav_header(pb, ast->codec, fsize);
// find 'data' chunk
- while(url_ftell(pb) < c->vidpos && !url_feof(pb)){
+ while(avio_tell(pb) < c->vidpos && !pb->eof_reached){
tag = avio_rl32(pb);
fsize = avio_rl32(pb);
if(tag == MKTAG('d', 'a', 't', 'a')) break;
- avio_seek(pb, fsize, SEEK_CUR);
+ avio_skip(pb, fsize);
}
c->bpc = (fsize + c->frames - 1) / c->frames;
if(ast->codec->block_align)
c->bpc = ((c->bpc + ast->codec->block_align - 1) / ast->codec->block_align) * ast->codec->block_align;
c->bytes_left = fsize;
- c->wavpos = url_ftell(pb);
+ c->wavpos = avio_tell(pb);
avio_seek(pb, c->vidpos, SEEK_SET);
}
st->codec->height >>= 1;
}
c->readvid = !c->has_sound;
- c->vidpos = url_ftell(pb);
+ c->vidpos = avio_tell(pb);
s->start_time = 0;
s->duration = (int64_t)c->frames * AV_TIME_BASE * num / den;
av_log(s, AV_LOG_DEBUG, "%d frame(s)\n",c->frames);
if(ret != size)
return AVERROR(EIO);
c->bytes_left -= size;
- c->wavpos = url_ftell(s->pb);
+ c->wavpos = avio_tell(s->pb);
return 0;
}
avio_seek(s->pb, c->vidpos, SEEK_SET);
- while(!url_feof(s->pb) && c->frames){
+ while(!s->pb->eof_reached && c->frames){
avio_read(s->pb, buf, 4);
switch(AV_RL32(buf)){
case MKTAG('N', 'U', 'L', 'L'):
if(pal_size) memcpy(pkt->data, pal, pal_size);
memcpy(pkt->data + pal_size, buf, 4);
c->frames--;
- c->vidpos = url_ftell(s->pb);
+ c->vidpos = avio_tell(s->pb);
c->readvid = 0;
return 0;
case MKTAG('C', 'M', 'A', 'P'):
if(pal_size) memcpy(pkt->data, pal, pal_size);
pkt->stream_index = 0;
c->frames--;
- c->vidpos = url_ftell(s->pb);
+ c->vidpos = avio_tell(s->pb);
c->readvid = 0;
return 0;
default: