From patchwork Sun May 10 21:19:47 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 19618 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 742DC4497E1 for ; Mon, 11 May 2020 00:48:56 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4756C680C0F; Mon, 11 May 2020 00:48:56 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qt1-f196.google.com (mail-qt1-f196.google.com [209.85.160.196]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AB8F56807A0 for ; Mon, 11 May 2020 00:48:49 +0300 (EEST) Received: by mail-qt1-f196.google.com with SMTP id p12so6381940qtn.13 for ; Sun, 10 May 2020 14:48:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=VX8ws3BMR+9V0cDptKaFGYIt0iALbirum2kRzp8qFnY=; b=JNws6q6XcBOR3A82+sqldpsw/yiGVA4Ubvx+FxvzQRROHLjlnZFhlQPx2L+xQKWw1F 8oW5R2+68+AdcqULhKxlVpxSgMGdB9wIoqJ3191CBnl2bgr1nl1FPEInPidjzaF1+Pt7 gIVV4WciJfF1oIuawtBr3hR1vK9q6AaEGrc+RofS4gQm//IOHC1D65qoHwty0lzoepVh I96zjXl6OjWj+UFFPPjR3NYbbz30VMzhmqpVZ2WgD0axoOhAF9bX7P4TutxRm2ORBkWd 9p4iBVI6GkivaGcYuZq0QfYKOVYWeaiz4hDdH2+tuoxKpiHAcbK/+qaVvNpDhRAZr9xf R6KQ== 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:mime-version:content-transfer-encoding; bh=VX8ws3BMR+9V0cDptKaFGYIt0iALbirum2kRzp8qFnY=; b=M+9Vw2AUXRahYXFczoP2lXpl18lsku/x3HfhNEpnXx3NYuqlyx7L7wOid4RNK+x5v+ QbmE8nHSVFDhOo7thbLhn+85LziIObv41IAxhcXUa06vEF9AG6TPlIYxG2fKMpFgJebd FzGXeQnQI071CFp5SG2o2ZL6OlsCCKX9VlmfQMdJqF9lPMXOawelaUvRfmafyEQrZBzB RXyRogyNpFDMZ58D+7AmnHkR6E8M92Fv7sz/qwbFbuChRAfXPSfiO7vmgJckvC+Ebs5E ayGs6NSLBZgwcwhI+f+SCnLeMQ0RhMUyB/yodmvKU5tmrQszE8xHxi0Yk5ldiMW6gmQI rCVA== X-Gm-Message-State: AGi0PuaINB5FQBPbXIHaXvupLYNnhcz5TKY7hXyI6/QVtzNKj6kEg07B 6Yeb2spt/aZpzO/elmwZU9OXBIWSMoI= X-Google-Smtp-Source: APiQypL8VSGzyeYI7ZogpOHhR2sTPl+E+gtcjFKzzSTHof6IxaOSmrItbCU0FS1+pBH3yoF4ovCSnA== X-Received: by 2002:ac8:4897:: with SMTP id i23mr13698029qtq.184.1589145620639; Sun, 10 May 2020 14:20:20 -0700 (PDT) Received: from localhost.localdomain ([181.23.75.91]) by smtp.gmail.com with ESMTPSA id a62sm6669547qkg.5.2020.05.10.14.20.19 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 10 May 2020 14:20:19 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Sun, 10 May 2020 18:19:47 -0300 Message-Id: <20200510211947.3247-2-jamrial@gmail.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200510211947.3247-1-jamrial@gmail.com> References: <20200510211947.3247-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/2] avformat/ivfenc: move bsf insertion to the init function 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: James Almer --- libavformat/ivfenc.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/libavformat/ivfenc.c b/libavformat/ivfenc.c index 0ce4a85171..0951f56c92 100644 --- a/libavformat/ivfenc.c +++ b/libavformat/ivfenc.c @@ -43,6 +43,16 @@ static int ivf_init(AVFormatContext *s) return AVERROR(EINVAL); } + if (par->codec_id == AV_CODEC_ID_VP9) { + int ret = ff_stream_add_bitstream_filter(s->streams[0], "vp9_superframe", NULL); + if (ret < 0) + return ret; + } else if (par->codec_id == AV_CODEC_ID_AV1) { + int ret = ff_stream_add_bitstream_filter(s->streams[0], "av1_metadata", "td=insert"); + if (ret < 0) + return ret; + } + return 0; } @@ -100,19 +110,6 @@ static int ivf_write_trailer(AVFormatContext *s) return 0; } -static int ivf_check_bitstream(struct AVFormatContext *s, const AVPacket *pkt) -{ - int ret = 1; - AVStream *st = s->streams[pkt->stream_index]; - - if (st->codecpar->codec_id == AV_CODEC_ID_VP9) - ret = ff_stream_add_bitstream_filter(st, "vp9_superframe", NULL); - else if (st->codecpar->codec_id == AV_CODEC_ID_AV1) - ret = ff_stream_add_bitstream_filter(st, "av1_metadata", "td=insert"); - - return ret; -} - static const AVCodecTag codec_ivf_tags[] = { { AV_CODEC_ID_VP8, MKTAG('V', 'P', '8', '0') }, { AV_CODEC_ID_VP9, MKTAG('V', 'P', '9', '0') }, @@ -131,6 +128,5 @@ AVOutputFormat ff_ivf_muxer = { .write_header = ivf_write_header, .write_packet = ivf_write_packet, .write_trailer = ivf_write_trailer, - .check_bitstream = ivf_check_bitstream, .codec_tag = (const AVCodecTag* const []){ codec_ivf_tags, 0 }, };