diff options
author | Martin Storsjö <martin@martin.st> | 2012-02-28 01:08:31 +0200 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2012-03-01 16:08:30 +0200 |
commit | 442c1320e72a13d02c9c477aab7100ef910c33c7 (patch) | |
tree | d4627a94a9854a651c5821a66bc4e48a204546f2 /libavcodec/avpacket.c | |
parent | 5cd1337f5db49b4537d83ae2a8115a90d77e3a28 (diff) | |
download | ffmpeg-442c1320e72a13d02c9c477aab7100ef910c33c7.tar.gz |
avpacket: Add a function for shrinking already allocated side data
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavcodec/avpacket.c')
-rw-r--r-- | libavcodec/avpacket.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index e0e4df46f2..9b549e7190 100644 --- a/libavcodec/avpacket.c +++ b/libavcodec/avpacket.c @@ -196,3 +196,19 @@ uint8_t* av_packet_get_side_data(AVPacket *pkt, enum AVPacketSideDataType type, } return NULL; } + +int av_packet_shrink_side_data(AVPacket *pkt, enum AVPacketSideDataType type, + int size) +{ + int i; + + for (i = 0; i < pkt->side_data_elems; i++) { + if (pkt->side_data[i].type == type) { + if (size > pkt->side_data[i].size) + return AVERROR(ENOMEM); + pkt->side_data[i].size = size; + return 0; + } + } + return AVERROR(ENOENT); +} |