Tomas Härdin: > tis 2021-11-09 klockan 19:01 +0100 skrev Andreas Rheinhardt: >> Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com> >> --- >> libavformat/mxfenc.c | 10 +++------- >> 1 file changed, 3 insertions(+), 7 deletions(-) >> >> diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c >> index cf63340313..aa9857fcff 100644 >> --- a/libavformat/mxfenc.c >> +++ b/libavformat/mxfenc.c >> @@ -421,6 +421,7 @@ typedef struct MXFContext { >> int track_instance_count; // used to generate MXFTrack uuids >> int cbr_index; ///< use a constant bitrate index >> uint8_t unused_tags[MXF_NUM_TAGS]; ///< local tags that we know >> will not be used >> + MXFStreamContext timecode_track_priv; >> } MXFContext; >> >> static void mxf_write_uuid(AVIOContext *pb, enum MXFMetadataSetType >> type, int value) >> @@ -2712,9 +2713,7 @@ static int mxf_init(AVFormatContext *s) >> mxf->timecode_track = av_mallocz(sizeof(*mxf->timecode_track)); >> if (!mxf->timecode_track) >> return AVERROR(ENOMEM); >> - mxf->timecode_track->priv_data = >> av_mallocz(sizeof(MXFStreamContext)); >> - if (!mxf->timecode_track->priv_data) >> - return AVERROR(ENOMEM); >> + mxf->timecode_track->priv_data = &mxf->timecode_track_priv; >> mxf->timecode_track->index = -1; >> >> return 0; >> @@ -3087,10 +3086,7 @@ static void mxf_deinit(AVFormatContext *s) >> >> av_freep(&mxf->index_entries); >> av_freep(&mxf->body_partition_offset); >> - if (mxf->timecode_track) { >> - av_freep(&mxf->timecode_track->priv_data); >> - av_freep(&mxf->timecode_track); >> - } >> + av_freep(&mxf->timecode_track); >> } >> >> static int mxf_interleave_get_packet(AVFormatContext *s, AVPacket >> *out, int flush) > > Looks OK. We never have more than one timecode track. >
We also avoid the allocation of the extra AVStream, but somehow it feels even more of a hack to put it into the context than allocating it, although it actually isn't any more of a hack. - Andreas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".