Mercurial > libavformat.hg
diff raw.c @ 775:c5077fdab490 libavformat
AVPacket.pos
author | michael |
---|---|
date | Thu, 26 May 2005 20:17:12 +0000 |
parents | 1a19a6add674 |
children | d06c348ca001 |
line wrap: on
line diff
--- a/raw.c Thu May 26 07:47:51 2005 +0000 +++ b/raw.c Thu May 26 20:17:12 2005 +0000 @@ -88,13 +88,10 @@ size= RAW_PACKET_SIZE; - if (av_new_packet(pkt, size) < 0) - return AVERROR_IO; + ret= av_get_packet(&s->pb, pkt, size); pkt->stream_index = 0; - ret = get_buffer(&s->pb, pkt->data, size); if (ret <= 0) { - av_free_packet(pkt); return AVERROR_IO; } /* note: we need to modify the packet size here to handle the last @@ -111,7 +108,8 @@ if (av_new_packet(pkt, size) < 0) return AVERROR_IO; - + + pkt->pos= url_ftell(&s->pb); pkt->stream_index = 0; ret = get_partial_buffer(&s->pb, pkt->data, size); if (ret <= 0) { @@ -618,18 +616,10 @@ if (packet_size < 0) return -1; - if (av_new_packet(pkt, packet_size) < 0) - return AVERROR_IO; + ret= av_get_packet(&s->pb, pkt, packet_size); pkt->stream_index = 0; -#if 0 - /* bypass buffered I/O */ - ret = url_read(url_fileno(&s->pb), pkt->data, pkt->size); -#else - ret = get_buffer(&s->pb, pkt->data, pkt->size); -#endif - if (ret != pkt->size) { - av_free_packet(pkt); + if (ret != packet_size) { return AVERROR_IO; } else { return 0;