From patchwork Fri Jan 6 16:07:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 39895 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:bc95:b0:ad:ade2:bfd2 with SMTP id fx21csp965038pzb; Fri, 6 Jan 2023 00:07:24 -0800 (PST) X-Google-Smtp-Source: AMrXdXv7GxSwXf7zsBPMR+Jv2EfDWu3FKdnTN8gkdDNPATZcUXX6PMzkFS7/8USk/HbI2ICYlhj3 X-Received: by 2002:a05:6402:7d4:b0:467:f630:7927 with SMTP id u20-20020a05640207d400b00467f6307927mr48782185edy.15.1672992443856; Fri, 06 Jan 2023 00:07:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672992443; cv=none; d=google.com; s=arc-20160816; b=asU4LCog36iZ5Y6V9SBV4m0n5uW4Uus55OTxe6k6OdK708xv6cZ/9Dka7XLjAmK+dP kW88kaCxKNVlNPrln3fWUo1R+BmoxN9DM2U9W/SkgcdpTdKGNV2Z7IuNLMukRdc6rsWe pvXsSX37vUroFQR/AlSO6Uc1fbmp82ArpWkFk+lvK2o4XilTsq7O9vlVGA+zp6XnbvnS AKRc2BF+ZemH6H0VtMS4hosaYijQMUMBkuzTtCk3qX15ruMB04yttFaqM+QSlnXnm036 vE95viCEEqgXwuo3MozMHGumSKwVi93hVknDTd+zWjZSYqnGz16QckRcBynQZmk7hGNC pFuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to:date :to:from:message-id:dkim-signature:delivered-to; bh=jbfrbQ9lPTn8RPSV1afq6D8ffxFCY5CjBBImDVInzik=; b=FejFA/AvIQUiYDsLkD6ymIWZZ9MePhbBqAVmxL2qpNn6Mg5GHk7ztGRZFiUGbekeBL 3q9n/yBP9qsJwWSVrdO4BS3/tx4b55Ahe9LcIhX+Y+Yk4R/MthKtC2jA0NdjQEx2Fles Vri8UDowNPefzikwugoSeuJ7wg9ssmby1RgGNHLHafs6ooSGDifL0uf3nrK1VpT3ZNtI oExrTLv2sPcL5sAqJEg82LMdZbF1ftXlNUch4JkXMIhBVzspA5xP/jwAcsiCY2cGstgy KnxQ8WSQfTQp/lPVpoNNhTr3z/d40t6I45CQJiBtRJ3wzkgq7KNErsSfpUjIzH8r6jH4 M/NA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=gAb2SiSC; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id q10-20020a056402518a00b0046c0f2a94dbsi948986edd.353.2023.01.06.00.07.22; Fri, 06 Jan 2023 00:07:23 -0800 (PST) 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=@foxmail.com header.s=s201512 header.b=gAb2SiSC; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E658B68BC9A; Fri, 6 Jan 2023 10:07:19 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out162-62-57-210.mail.qq.com (out162-62-57-210.mail.qq.com [162.62.57.210]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9A44A68B9AC for ; Fri, 6 Jan 2023 10:07:11 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1672992427; bh=DlhJiSes51SnEdFSmxwJh/TcCt4CGn3JyX01LL24x/c=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=gAb2SiSCq+PjNtAk8VYL/Lghgd3tPw0GbZIJHjyCNo+wTZqpYin6bx39eHJUkOnJX RmDxZqjdF05mdGVNJPyjEMxhXiDjT733Hv9/h30qPZ7fKC9V8oHPflM+FmERvd5Kdt SLtZ6fZhfeXV0KiSJYwoxCZtdcfj0/fjLYWDF/wg= Received: from localhost.localdomain ([59.37.125.102]) by newxmesmtplogicsvrsza10-0.qq.com (NewEsmtp) with SMTP id 1C6A34AF; Fri, 06 Jan 2023 16:07:06 +0800 X-QQ-mid: xmsmtpt1672992426tbw60rb4l Message-ID: X-QQ-XMAILINFO: NUygYfydBsqcKqjvyccFtIqTdyw0hcpC8JgbMDOQs+oJo7IYPUdil05kVJKHGR hvb1lINgSFffggPCI7X10aeCawH7ZrhVQ5ppmrHGlXMXBx5ouQeeVsjfAaWxmzy7RAKVgllV46ba wo3epymiEbhe/bX2Wb8m190xYo0sHoLNnZguKzjVXmXgRsbh1zBIo//q+Pc0RmIlGb4wDsxuw7S2 wQdmD6TAS/0BpCENftPtcljEQ4s+of+mbnxrqrK6h/o3YChIvWXgxf2kOHUMIOYZi2I82g1uOfE7 zXLkoSycdTwTkSwe8QNiF9QptfKSppISzbpjZ6xeE464SgoSG8E+sFwE1GOl+RAs5ECNOIVwp8yl K1SrVHSLWVYYmYnQ3e1kXLF4al8wl+bDXsbvA0bH5hjEBeE4P9iL3kQoHlTJDG4RxfdoPwAI41it luEET9o98fsJHXDBuKh+xyMQelMkbZxMYI9powg2TR1JutuqXEaHKpz9deEVWzht7RXqRzxsEx6S /UAnQy/IbY3pvvJi6GwTZ81wLN7ah5oYsdEx0ATcweZ8hr4EW1tZ5EUzam5fE91PzrUmwBE/TndI 4gHCAX/le4BwdJCihNCAh06B1q/hkyyMwDZ0L4dZ+1wAlYnB5I8f9IwK49ANR3XYtsKaxc1zt9jf +tbn8aVCEZa0Gh6zVm0YxEiww1TA8OJOU+b5ZtjhlD1jxpp6XZaBKIhGUJCWKVttLQjOicvoBdXC Y1+2EM1U0n5ZbyLWBXAi2MVEKYeo1nZ16Jqydj9+lZDTXbpXa4uYxN1fLuZDTQe5gnylGRNcl+tX 14TA+qBIz4khwyZp+E5YAsqNVnWwrfQduzaD84rhCCiV0XbEL4EFY/GYHo5kSD1KqREdWbfQnyxz 1g5SR7bf8mGXzCruJ+hz6J8UPpM0m5E1QkWB9twqu8Ab/d2NFG/e41boflidiSaqyOLPNag4mTL7 rNmBBLWlshduwgNH49HG6QmKv6Z6SvqHkaOHJzPu3hzw4C6RWbwsdZM3j3tm0p From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Sat, 7 Jan 2023 00:07:05 +0800 X-OQ-MSGID: <20230106160705.488425-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <0ea865f45e5b9bb64c2881db752e728cdae777e4.camel@haerdin.se> References: <0ea865f45e5b9bb64c2881db752e728cdae777e4.camel@haerdin.se> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2] avcodec/mediacodecenc: enable B frames only with -strict experimental X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Cc: Zhao Zhili Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: YKM/EmFAJUyF From: Zhao Zhili Signed-off-by: Zhao Zhili --- v2: Enable -> Enabling libavcodec/mediacodecenc.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/libavcodec/mediacodecenc.c b/libavcodec/mediacodecenc.c index 4c1809093c..a92a8dc5a9 100644 --- a/libavcodec/mediacodecenc.c +++ b/libavcodec/mediacodecenc.c @@ -276,8 +276,16 @@ static av_cold int mediacodec_init(AVCodecContext *avctx) av_log(avctx, AV_LOG_DEBUG, "set level to 0x%x\n", s->level); ff_AMediaFormat_setInt32(format, "level", s->level); } - if (avctx->max_b_frames > 0) + if (avctx->max_b_frames > 0) { + if (avctx->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) { + av_log(avctx, AV_LOG_ERROR, + "Enabling B frames will produce packets with no DTS. " + "Use -strict experimental to use it anyway.\n"); + ret = AVERROR(EINVAL); + goto bailout; + } ff_AMediaFormat_setInt32(format, "max-bframes", avctx->max_b_frames); + } if (s->pts_as_dts == -1) s->pts_as_dts = avctx->max_b_frames <= 0;