aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/avpacket.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2021-02-25 18:57:27 +0100
committerJames Almer <jamrial@gmail.com>2021-04-27 10:43:01 -0300
commite1597fe0cfe07e134ece8ea199ff520d3ac77aee (patch)
treeafde220f2af45e50d5faa4c67c297cc1add0d6f0 /libavcodec/avpacket.c
parent78ce00428fda34cdf8a1eba998aa3d2deafb8689 (diff)
downloadffmpeg-e1597fe0cfe07e134ece8ea199ff520d3ac77aee.tar.gz
avcodec: Remove deprecated API to split/merge side-data
Deprecated in d682ae70b4b3a53fb73ec30281f9f4cfbc531edd. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'libavcodec/avpacket.c')
-rw-r--r--libavcodec/avpacket.c87
1 files changed, 0 insertions, 87 deletions
diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c
index 4995a83bf8..622b50d5eb 100644
--- a/libavcodec/avpacket.c
+++ b/libavcodec/avpacket.c
@@ -297,93 +297,6 @@ const char *av_packet_side_data_name(enum AVPacketSideDataType type)
return NULL;
}
-#if FF_API_MERGE_SD_API
-
-#define FF_MERGE_MARKER 0x8c4d9d108e25e9feULL
-
-int av_packet_merge_side_data(AVPacket *pkt){
- if(pkt->side_data_elems){
- AVBufferRef *buf;
- int i;
- uint8_t *p;
- uint64_t size= pkt->size + 8LL + AV_INPUT_BUFFER_PADDING_SIZE;
- AVPacket old= *pkt;
- for (i=0; i<old.side_data_elems; i++) {
- size += old.side_data[i].size + 5LL;
- }
- if (size > INT_MAX)
- return AVERROR(EINVAL);
- buf = av_buffer_alloc(size);
- if (!buf)
- return AVERROR(ENOMEM);
- pkt->buf = buf;
- pkt->data = p = buf->data;
- pkt->size = size - AV_INPUT_BUFFER_PADDING_SIZE;
- bytestream_put_buffer(&p, old.data, old.size);
- for (i=old.side_data_elems-1; i>=0; i--) {
- bytestream_put_buffer(&p, old.side_data[i].data, old.side_data[i].size);
- bytestream_put_be32(&p, old.side_data[i].size);
- *p++ = old.side_data[i].type | ((i==old.side_data_elems-1)*128);
- }
- bytestream_put_be64(&p, FF_MERGE_MARKER);
- av_assert0(p-pkt->data == pkt->size);
- memset(p, 0, AV_INPUT_BUFFER_PADDING_SIZE);
- av_packet_unref(&old);
- pkt->side_data_elems = 0;
- pkt->side_data = NULL;
- return 1;
- }
- return 0;
-}
-
-int av_packet_split_side_data(AVPacket *pkt){
- if (!pkt->side_data_elems && pkt->size >12 && AV_RB64(pkt->data + pkt->size - 8) == FF_MERGE_MARKER){
- int i;
- unsigned int size;
- uint8_t *p;
-
- p = pkt->data + pkt->size - 8 - 5;
- for (i=1; ; i++){
- size = AV_RB32(p);
- if (size>INT_MAX - 5 || p - pkt->data < size)
- return 0;
- if (p[4]&128)
- break;
- if (p - pkt->data < size + 5)
- return 0;
- p-= size+5;
- }
-
- if (i > AV_PKT_DATA_NB)
- return AVERROR(ERANGE);
-
- pkt->side_data = av_malloc_array(i, sizeof(*pkt->side_data));
- if (!pkt->side_data)
- return AVERROR(ENOMEM);
-
- p= pkt->data + pkt->size - 8 - 5;
- for (i=0; ; i++){
- size= AV_RB32(p);
- av_assert0(size<=INT_MAX - 5 && p - pkt->data >= size);
- pkt->side_data[i].data = av_mallocz(size + AV_INPUT_BUFFER_PADDING_SIZE);
- pkt->side_data[i].size = size;
- pkt->side_data[i].type = p[4]&127;
- if (!pkt->side_data[i].data)
- return AVERROR(ENOMEM);
- memcpy(pkt->side_data[i].data, p-size, size);
- pkt->size -= size + 5;
- if(p[4]&128)
- break;
- p-= size+5;
- }
- pkt->size -= 8;
- pkt->side_data_elems = i+1;
- return 1;
- }
- return 0;
-}
-#endif
-
#if FF_API_BUFFER_SIZE_T
uint8_t *av_packet_pack_dictionary(AVDictionary *dict, int *size)
#else