Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>tags/n0.8
@@ -385,6 +385,7 @@ attribute_deprecated AVIOContext *av_alloc_put_byte( | |||||
* @{ | * @{ | ||||
*/ | */ | ||||
attribute_deprecated int get_buffer(AVIOContext *s, unsigned char *buf, int size); | attribute_deprecated int get_buffer(AVIOContext *s, unsigned char *buf, int size); | ||||
attribute_deprecated int get_partial_buffer(AVIOContext *s, unsigned char *buf, int size); | |||||
attribute_deprecated int get_byte(AVIOContext *s); | attribute_deprecated int get_byte(AVIOContext *s); | ||||
attribute_deprecated unsigned int get_le16(AVIOContext *s); | attribute_deprecated unsigned int get_le16(AVIOContext *s); | ||||
attribute_deprecated unsigned int get_le24(AVIOContext *s); | attribute_deprecated unsigned int get_le24(AVIOContext *s); | ||||
@@ -498,14 +499,6 @@ void put_flush_packet(AVIOContext *s); | |||||
*/ | */ | ||||
int avio_read(AVIOContext *s, unsigned char *buf, int size); | int avio_read(AVIOContext *s, unsigned char *buf, int size); | ||||
/** | |||||
* Read size bytes from AVIOContext into buf. | |||||
* This reads at most 1 packet. If that is not enough fewer bytes will be | |||||
* returned. | |||||
* @return number of bytes read or AVERROR | |||||
*/ | |||||
int get_partial_buffer(AVIOContext *s, unsigned char *buf, int size); | |||||
/** @note return 0 if EOF, so you cannot use it if EOF handling is | /** @note return 0 if EOF, so you cannot use it if EOF handling is | ||||
necessary */ | necessary */ | ||||
int avio_r8 (AVIOContext *s); | int avio_r8 (AVIOContext *s); | ||||
@@ -32,4 +32,12 @@ int ffio_init_context(AVIOContext *s, | |||||
int64_t (*seek)(void *opaque, int64_t offset, int whence)); | int64_t (*seek)(void *opaque, int64_t offset, int whence)); | ||||
/** | |||||
* Read size bytes from AVIOContext into buf. | |||||
* This reads at most 1 packet. If that is not enough fewer bytes will be | |||||
* returned. | |||||
* @return number of bytes read or AVERROR | |||||
*/ | |||||
int ffio_read_partial(AVIOContext *s, unsigned char *buf, int size); | |||||
#endif // AVFORMAT_AVIO_INTERNAL_H | #endif // AVFORMAT_AVIO_INTERNAL_H |
@@ -324,6 +324,10 @@ int get_buffer(AVIOContext *s, unsigned char *buf, int size) | |||||
{ | { | ||||
return avio_read(s, buf, size); | return avio_read(s, buf, size); | ||||
} | } | ||||
int get_partial_buffer(AVIOContext *s, unsigned char *buf, int size) | |||||
{ | |||||
return ffio_read_partial(s, buf, size); | |||||
} | |||||
#endif | #endif | ||||
int avio_put_str(AVIOContext *s, const char *str) | int avio_put_str(AVIOContext *s, const char *str) | ||||
@@ -548,7 +552,7 @@ int avio_read(AVIOContext *s, unsigned char *buf, int size) | |||||
return size1 - size; | return size1 - size; | ||||
} | } | ||||
int get_partial_buffer(AVIOContext *s, unsigned char *buf, int size) | |||||
int ffio_read_partial(AVIOContext *s, unsigned char *buf, int size) | |||||
{ | { | ||||
int len; | int len; | ||||
@@ -21,6 +21,7 @@ | |||||
*/ | */ | ||||
#include "avformat.h" | #include "avformat.h" | ||||
#include "avio_internal.h" | |||||
#include "rawdec.h" | #include "rawdec.h" | ||||
/* raw input */ | /* raw input */ | ||||
@@ -81,7 +82,7 @@ int ff_raw_read_partial_packet(AVFormatContext *s, AVPacket *pkt) | |||||
pkt->pos= url_ftell(s->pb); | pkt->pos= url_ftell(s->pb); | ||||
pkt->stream_index = 0; | pkt->stream_index = 0; | ||||
ret = get_partial_buffer(s->pb, pkt->data, size); | |||||
ret = ffio_read_partial(s->pb, pkt->data, size); | |||||
if (ret < 0) { | if (ret < 0) { | ||||
av_free_packet(pkt); | av_free_packet(pkt); | ||||
return ret; | return ret; | ||||