From patchwork Wed Jan 24 08:16:59 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Khirnov X-Patchwork-Id: 45775 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:120f:b0:199:de12:6fa6 with SMTP id v15csp1130114pzf; Wed, 24 Jan 2024 00:20:09 -0800 (PST) X-Google-Smtp-Source: AGHT+IH2LFRX8PrzXPIJ8RWwIjU2opZIlo6Ldi53pFrxAvPk1tT8q4JG8F21CK88LbV57lCLioUm X-Received: by 2002:a2e:b555:0:b0:2cc:e9e6:e451 with SMTP id a21-20020a2eb555000000b002cce9e6e451mr320825ljn.86.1706084408813; Wed, 24 Jan 2024 00:20:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706084408; cv=none; d=google.com; s=arc-20160816; b=LW+tkBTDCuQieU30TB1I8HIQNSbTMkejXx61imaCtFYx42Bp9zYAB1aVMjUIqZcmBA ajCCFgHJBKigblXTpvhAYzxeugngbH+BLpvVTZOnoQsRQlVsizJI+RzTqtNsaofc9ieq fJN95zZF4JiJiey4GY5tOMA+11wl5XzhSiQU++7g4UiTMcQ7BipovuVkE9B8Rs74qB6I lf8qnAXFYLiEEGBzeds6R7R7skGdIE1FhG2/JP0T9JJ5/XgLnFGUftSXm9YSKi/Giih2 8H+Y6RzscwFyp0LJKfBLElJxTT9jIfFY3p926yynMqhs81S71KMw+J4nx8gV8IYHrFOv gIKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=eD/PMo8V8Gay9qHCNvX54PXCCYC+mp6h/s9XbY3Xj7s=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=Ue6T5RIlD6jVk26UFo1xTaHD+X/Kb6SP+SU3afPI0aS48XzUwIcnemZJ7oNy5+fS4C P7+WwFgQnQIEwIdFHMkoS3LeOkir/v8P5iHaHySUbXoe1inc6MxOUiOE9Zfh1HP8qDKQ rjbEJ0b2aonyb/RfwjieKm5lF0Ln2MA6kWIZJhYtj69jCjYgFjVVEWLoaNKWLs8u7V8I nwHxam4XQo0MHtrUXKKjMuyrsuTCnyM1x3Yt/nkKtOqesdWnFzUlFF6HHP4v4q5MJq6f U4BdJoqiJgTFeDSUmVpis8Tt6XaDgJRRBA6uDAcsyT+zTtaMnE2eeqs4T99IzqxZrVjX H4fQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@khirnov.net header.s=mail header.b=nqENtD6K; 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 10-20020a0564021f4a00b0055cc3b6314dsi485104edz.86.2024.01.24.00.20.08; Wed, 24 Jan 2024 00:20:08 -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=@khirnov.net header.s=mail header.b=nqENtD6K; 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 3FE2968D1A0; Wed, 24 Jan 2024 10:17:46 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail1.khirnov.net (quelana.khirnov.net [94.230.150.81]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 661C968D0EE for ; Wed, 24 Jan 2024 10:17:27 +0200 (EET) Authentication-Results: mail1.khirnov.net; dkim=pass (2048-bit key; unprotected) header.d=khirnov.net header.i=@khirnov.net header.a=rsa-sha256 header.s=mail header.b=nqENtD6K; dkim-atps=neutral Received: from localhost (mail1.khirnov.net [IPv6:::1]) by mail1.khirnov.net (Postfix) with ESMTP id BC4D01BB9 for ; Wed, 24 Jan 2024 09:17:25 +0100 (CET) Received: from mail1.khirnov.net ([IPv6:::1]) by localhost (mail1.khirnov.net [IPv6:::1]) (amavis, port 10024) with ESMTP id LrJOWA_b5y9Z for ; Wed, 24 Jan 2024 09:17:25 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=khirnov.net; s=mail; t=1706084240; bh=uzssWNzdBRKv6z7whmwLq2H7P2CdwIqYSsvpjCiRJvU=; h=From:To:Subject:Date:In-Reply-To:References:From; b=nqENtD6KeaXf19mAcEziJQXvZKt9NTiZWAew5eXTlmUzOfv1HNJWyXtnARbYOZq// rY2QCj/Pj0GV3wQebL29IGLI9LBcX8FyTBEB1eC2aqmQwpLgH1m6vAgo4Ng8Z8B/dD UZostJEdoC/YNIHxClWs1iL5DYao4e22wqAsLxxVYPsyAaYJ38FTz0EOAW8Nu7fSE1 Aue6+fLCHMkqnC2QmrZUGfUGopfIfIEDzHU/Y0MXatjkWoTTJBT4qJUGiONTIpLX4v pvFdkidxt4PnhsWLaKy93PsCSBXhlHK2Dpx9ctWPocF2h0IwhRbJ/4vBBfpzIINm76 OQbfkS5fhUNpQ== Received: from libav.khirnov.net (libav.khirnov.net [IPv6:2a00:c500:561:201::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "libav.khirnov.net", Issuer "smtp.khirnov.net SMTP CA" (verified OK)) by mail1.khirnov.net (Postfix) with ESMTPS id 7C1EE1C0F for ; Wed, 24 Jan 2024 09:17:20 +0100 (CET) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:::1]) by libav.khirnov.net (Postfix) with ESMTP id 708D13A0534 for ; Wed, 24 Jan 2024 09:17:20 +0100 (CET) From: Anton Khirnov To: ffmpeg-devel@ffmpeg.org Date: Wed, 24 Jan 2024 09:16:59 +0100 Message-ID: <20240124081702.4759-29-anton@khirnov.net> X-Mailer: git-send-email 2.42.0 In-Reply-To: <20240124081702.4759-1-anton@khirnov.net> References: <20240124081702.4759-1-anton@khirnov.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 29/31] fftools/ffmpeg: make InputStream.decoding_needed private to demuxer 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: MLUpE8oaXHT9 It is no longer used outside of ffmpeg_demux. --- fftools/ffmpeg.h | 3 --- fftools/ffmpeg_demux.c | 13 +++++++++---- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h index 4881174632..29d8ea4355 100644 --- a/fftools/ffmpeg.h +++ b/fftools/ffmpeg.h @@ -337,9 +337,6 @@ typedef struct InputStream { AVStream *st; int user_set_discard; - int decoding_needed; /* non zero if the packets must be decoded in 'raw_fifo', see DECODING_FOR_* */ -#define DECODING_FOR_OST 1 -#define DECODING_FOR_FILTER 2 /** * Codec parameters - to be used by the decoding/streamcopy code. diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c index 0ccb05b1d0..61a4a745b4 100644 --- a/fftools/ffmpeg_demux.c +++ b/fftools/ffmpeg_demux.c @@ -50,6 +50,11 @@ typedef struct DemuxStream { double ts_scale; + /* non zero if the packets must be decoded in 'raw_fifo', see DECODING_FOR_* */ + int decoding_needed; +#define DECODING_FOR_OST 1 +#define DECODING_FOR_FILTER 2 + /* true if stream data should be discarded */ int discard; @@ -796,7 +801,7 @@ static void demux_final_stats(Demuxer *d) av_log(f, AV_LOG_VERBOSE, "%"PRIu64" packets read (%"PRIu64" bytes); ", ds->nb_packets, ds->data_size); - if (ist->decoding_needed) { + if (ds->decoding_needed) { av_log(f, AV_LOG_VERBOSE, "%"PRIu64" frames decoded; %"PRIu64" decode errors", ist->decoder->frames_decoded, ist->decoder->decode_errors); @@ -889,7 +894,7 @@ static int ist_use(InputStream *ist, int decoding_needed) } ist->st->discard = ist->user_set_discard; - ist->decoding_needed |= decoding_needed; + ds->decoding_needed |= decoding_needed; ds->streamcopy_needed |= !decoding_needed; if (decoding_needed && ds->sch_idx_dec < 0) { @@ -910,9 +915,9 @@ static int ist_use(InputStream *ist, int decoding_needed) ds->dec_opts.framerate = ist->st->avg_frame_rate; if (ist->dec->id == AV_CODEC_ID_DVB_SUBTITLE && - (ist->decoding_needed & DECODING_FOR_OST)) { + (ds->decoding_needed & DECODING_FOR_OST)) { av_dict_set(&ist->decoder_opts, "compute_edt", "1", AV_DICT_DONT_OVERWRITE); - if (ist->decoding_needed & DECODING_FOR_FILTER) + if (ds->decoding_needed & DECODING_FOR_FILTER) av_log(ist, AV_LOG_WARNING, "Warning using DVB subtitles for filtering and output at the " "same time is not fully supported, also see -compute_edt [0|1]\n");