[FFmpeg-devel] [PATCH] ffmpeg: use av_stream_new_side_data()
James Almer
jamrial at gmail.com
Fri Apr 7 22:49:55 EEST 2017
On 12/26/2016 6:36 PM, James Almer wrote:
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
> ffmpeg.c | 17 ++++-------------
> 1 file changed, 4 insertions(+), 13 deletions(-)
>
> diff --git a/ffmpeg.c b/ffmpeg.c
> index ec9da3e..a1c02ca 100644
> --- a/ffmpeg.c
> +++ b/ffmpeg.c
> @@ -2916,26 +2916,17 @@ static int init_output_stream_streamcopy(OutputStream *ost)
> ost->st->disposition = ist->st->disposition;
>
> if (ist->st->nb_side_data) {
> - ost->st->side_data = av_realloc_array(NULL, ist->st->nb_side_data,
> - sizeof(*ist->st->side_data));
> - if (!ost->st->side_data)
> - return AVERROR(ENOMEM);
> -
> - ost->st->nb_side_data = 0;
> for (i = 0; i < ist->st->nb_side_data; i++) {
> const AVPacketSideData *sd_src = &ist->st->side_data[i];
> - AVPacketSideData *sd_dst = &ost->st->side_data[ost->st->nb_side_data];
> + uint8_t *dst_data;
>
> if (ost->rotate_overridden && sd_src->type == AV_PKT_DATA_DISPLAYMATRIX)
> continue;
>
> - sd_dst->data = av_malloc(sd_src->size);
> - if (!sd_dst->data)
> + dst_data = av_stream_new_side_data(ost->st, sd_src->type, sd_src->size);
> + if (!dst_data)
> return AVERROR(ENOMEM);
> - memcpy(sd_dst->data, sd_src->data, sd_src->size);
> - sd_dst->size = sd_src->size;
> - sd_dst->type = sd_src->type;
> - ost->st->nb_side_data++;
> + memcpy(dst_data, sd_src->data, sd_src->size);
> }
> }
Pushed.
More information about the ffmpeg-devel
mailing list