From patchwork Mon May 7 23:11:28 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Thompson X-Patchwork-Id: 8852 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:155:0:0:0:0:0 with SMTP id c82-v6csp3385181jad; Mon, 7 May 2018 16:12:02 -0700 (PDT) X-Google-Smtp-Source: AB8JxZp4T5BqcqLRWxWpu2dTDRp6o8OEWf89e2YSRvA1xPgctymFKsS0XkFTUDGIDH7FVUP81gzB X-Received: by 10.28.147.131 with SMTP id v125mr1922536wmd.58.1525734722803; Mon, 07 May 2018 16:12:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525734722; cv=none; d=google.com; s=arc-20160816; b=iiJvz5ir2yVX3IrmJQGzdK4zyzzuySYBHvrCDOXcixTJ/EaXJGN7bGtVjsRiSb99PC l4ecDzeBnjFCpK0Kn0LIfCSccS2oG2Bnrg3zVdhO75Lei/APUapV4IsmIoQtjxcaUYfZ hothG62Sc0oF5oT67NhGH439jh5er2UzHrd0g/5tpwfOwiQf2e18lFmSGK7h7sNrHLqy 4OJVYAas/T9kUDnliL7s6rsVKLTLUPlPltvoRFkJR+uL4ApjdgqCrlnULGS5Nmqq6Bwf aR8XwUDb8IHNIOpWYREka030QTO1a2VUvqj5kz4x/eqcCNFthAeq5gn3vXH3ctBMAliT 62KQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=wNtRDWK5+TwHuSRua3nj//N9DmVddmlPIrNn33Ctphc=; b=PeNplfHDkTqgeN4Gel3LXMOpgF0MtJPWw16JEb23ll1tm46zImqS4pPJhkAjs76H/X sOTdY2y4d6Osw9qVeiBdoHf6j0vptCGVHD/giLx8zoJOq8Ez8/kUciqm/31IQkd81M0m 2AIiENqe+uUB/RboCJ6i4p7XGiCvOd6bJZNsBEWRKnaTeUBvQuPPuyukZgnxQwLO6Aft mhswFNhysDsYzU3k8Dm5OUcxAdDXKUUccU5wRDrareOME8x0Q2C9rKUI5TyMCz8SXLK9 jporTohjqU73m3SJKIbJMcl6PqRT5NC/+sCJIp7YDspBcP0qWGrtKdaAKYrTwrqcE7nM 74Tw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@jkqxz-net.20150623.gappssmtp.com header.s=20150623 header.b=JD1nsXp/; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id w21-v6si20364323wrb.351.2018.05.07.16.12.02; Mon, 07 May 2018 16:12:02 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@jkqxz-net.20150623.gappssmtp.com header.s=20150623 header.b=JD1nsXp/; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0D25E68A4CB; Tue, 8 May 2018 02:11:12 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr0-f196.google.com (mail-wr0-f196.google.com [209.85.128.196]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 84FC468A50D for ; Tue, 8 May 2018 02:11:04 +0300 (EEST) Received: by mail-wr0-f196.google.com with SMTP id 94-v6so29049865wrf.5 for ; Mon, 07 May 2018 16:11:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jkqxz-net.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=+ecX3baFNEcSmH4qZ/lEN2widUvJevmlAAkL/TTeMAs=; b=JD1nsXp/if246nLoOpyCyg0sRo8+nFFzjTg7V9GlNpDmRW3dwXDr1uHWXqtxc1EvyQ vDy4BKxcuyyy5KKOOi0jXjzglxvPWFq/0jxIWjg+dhArT1RehAl8ooOVL4tINb6wjpKv bSr8yrymw4OApTd6KZg0+AiCugopYvIGDyXChCzGGpYbWZyLI+8Xcf43gb0boHhUIP0Y xQ8EdCzXCt+AiKA1UTQCf/Vw/pemp8VWO8HMW4cyLKea0y7kFC5lwOcgGQ+89Ivz6j7i yT3854YKkOmq14dAZhiMtCV+cSd0gNEwHut3c0JSvH7Z/qbE2dX02dz2DTfdxwvHye1S I+UA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=+ecX3baFNEcSmH4qZ/lEN2widUvJevmlAAkL/TTeMAs=; b=jejSiwDJ+DB6i6cGd55QDvZYfPZJ2hNutw53Fp7Blz/egjSAyzgpCpB5tueDJi5Nel KFEguDWnVs0WrEwZiYh520V2zX4VkMnc64mn7EICiw1YLWV6EYPikpoJ0it6R+4F7AWH uG4AUzYzdvcAfi1I3oqZLCCI+nlkSV5RK+UK1PAovmb5/33ZdqCUBivL3kLKIosRQ+z2 V8UyBs2ACsJ4fKG7pG6lWoevJ44tj5bDl4RpokEsToQgv+Er+bBfa/BHAYl7WC67a7BW cb0ZN1dgPouSFZGLlBFTjftRRKpbdCm9rKNKdfBPQcpFL4fFjp5p50Y46Omflb0cQcEH Jg9w== X-Gm-Message-State: ALQs6tC3CENKUFUp++KJi6JthA7OOD+gEmYOE68TvZxbiVrSdqzT73bl 34BnGDuccLXZzd+sxA/0F83Xc5Ev X-Received: by 2002:adf:9986:: with SMTP id y6-v6mr32194599wrb.40.1525734699103; Mon, 07 May 2018 16:11:39 -0700 (PDT) Received: from rywe.jkqxz.net (cpc91242-cmbg18-2-0-cust650.5-4.cable.virginm.net. [82.8.130.139]) by smtp.gmail.com with ESMTPSA id h133sm10179527wmf.47.2018.05.07.16.11.38 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 07 May 2018 16:11:38 -0700 (PDT) From: Mark Thompson To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 May 2018 00:11:28 +0100 Message-Id: <20180507231131.29840-3-sw@jkqxz.net> X-Mailer: git-send-email 2.16.3 In-Reply-To: <20180507231131.29840-1-sw@jkqxz.net> References: <20180507231131.29840-1-sw@jkqxz.net> Subject: [FFmpeg-devel] [PATCH 3/6] h264_metadata: Fix AUD writing X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" The aud structure exists on the stack, so the variable was previously out-of-scope when the unit is written. --- Something of a "how did this ever work", though apparently no compiler barfs on it until I was add more stuff after. libavcodec/h264_metadata_bsf.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libavcodec/h264_metadata_bsf.c b/libavcodec/h264_metadata_bsf.c index 1fbc5e3282..90ad4aad98 100644 --- a/libavcodec/h264_metadata_bsf.c +++ b/libavcodec/h264_metadata_bsf.c @@ -220,6 +220,7 @@ static int h264_metadata_filter(AVBSFContext *bsf, AVPacket *out) AVPacket *in = NULL; CodedBitstreamFragment *au = &ctx->access_unit; int err, i, j, has_sps; + H264RawAUD aud; uint8_t *displaymatrix_side_data = NULL; size_t displaymatrix_side_data_size = 0; @@ -256,9 +257,6 @@ static int h264_metadata_filter(AVBSFContext *bsf, AVPacket *out) 0x3ff, // 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int primary_pic_type_mask = 0xff; - H264RawAUD aud = { - .nal_unit_header.nal_unit_type = H264_NAL_AUD, - }; for (i = 0; i < au->nb_units; i++) { if (au->units[i].type == H264_NAL_SLICE || @@ -281,7 +279,10 @@ static int h264_metadata_filter(AVBSFContext *bsf, AVPacket *out) goto fail; } - aud.primary_pic_type = j; + aud = (H264RawAUD) { + .nal_unit_header.nal_unit_type = H264_NAL_AUD, + .primary_pic_type = j, + }; err = ff_cbs_insert_unit_content(ctx->cbc, au, 0, H264_NAL_AUD, &aud, NULL);