Signed-off-by: Andreas Rheinhardt <[email protected]>
---
The resulting side-data in this and the next two patches won't be padded
anymore. But the documentation doesn't require it and
av_packet_unpack_dictionary() doesn't rely on this anyway.
libavformat/concatdec.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c
index 2173911ce4..4b56b61404 100644
--- a/libavformat/concatdec.c
+++ b/libavformat/concatdec.c
@@ -626,17 +626,16 @@ static int concat_read_packet(AVFormatContext *avf,
AVPacket *pkt)
av_ts2str(pkt->pts), av_ts2timestr(pkt->pts, &st->time_base),
av_ts2str(pkt->dts), av_ts2timestr(pkt->dts, &st->time_base));
if (cat->cur_file->metadata) {
- uint8_t* metadata;
int metadata_len;
char* packed_metadata =
av_packet_pack_dictionary(cat->cur_file->metadata, &metadata_len);
if (!packed_metadata)
return AVERROR(ENOMEM);
- if (!(metadata = av_packet_new_side_data(pkt,
AV_PKT_DATA_STRINGS_METADATA, metadata_len))) {
+ ret = av_packet_add_side_data(pkt, AV_PKT_DATA_STRINGS_METADATA,
+ packed_metadata, metadata_len);
+ if (ret < 0) {
av_freep(&packed_metadata);
- return AVERROR(ENOMEM);
+ return ret;
}
- memcpy(metadata, packed_metadata, metadata_len);
- av_freep(&packed_metadata);
}
if (cat->cur_file->duration == AV_NOPTS_VALUE && st->cur_dts !=
AV_NOPTS_VALUE) {
@@ -647,7 +646,7 @@ static int concat_read_packet(AVFormatContext *avf,
AVPacket *pkt)
}
pkt->stream_index = cs->out_stream_index;
- return ret;
+ return 0;
}
static void rescale_interval(AVRational tb_in, AVRational tb_out,
--
2.20.1
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".