From patchwork Thu Jan 25 13:43:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45811 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp80467pzf; Thu, 25 Jan 2024 05:44:56 -0800 (PST) X-Google-Smtp-Source: AGHT+IHvKlnQNMQre756R/VS4PGZg+aE1rocbzjkk7W+tLbFVSY2BLhRFmxPfY35wJhugux3ukp+ X-Received: by 2002:aa7:c912:0:b0:55c:ed57:c10e with SMTP id b18-20020aa7c912000000b0055ced57c10emr1307482edt.4.1706190296072; Thu, 25 Jan 2024 05:44:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190296; cv=none; d=google.com; s=arc-20160816; b=HzY5fYv5u1onmk+6wzU6+ARJ9eH311Got/7m/AwYjFdkc3ggIEnzwz1NE8+iTO2EcT nWuLikG5kBhEz2hdCkogK8GN4Yi4nogAhPA8n1j8Y4x1oPddTm+O73b1Cv3K6cA7tKdK SYDckEBlc0X9ylFwN6oSD1SZFcJQ/k48ZoSb4AUBmRTuOgLxfrJ+W0G3vszowdknP0Fo iORpJ97ocXdrHYtbXfevlGsuZLQRF4NF+r4O0WLLkOKkgXI3ENytcUmhdb22zVWEpqCo xbO+735EusgKRj8GI3vL63A4J+1MrKzJ2d6tWcZs5H/O7U6uBydz8klUJ4/kQrMBTzBy Q6dw== 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=vLkYj6umCQRBiupeg54cTavrgY4llT6ZbFcQVt4Z+j4=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=PDvX1Pd7zrKUAsM60ARWbgY+jm1jn4szL8Zw+gXDDwwfLAlQc3vbh5o5sFvMYLvOEr VmmxSRuwUBMmkW9JHduFBrwlzltFOaNmRtWS+sBzdLPcxB35Qg/4z7Z7CysoEhckAaGI wIsv4Q30zmsuWYWS4HstQZjNJJ9iFFSrH55Uwg0M4iVCn7mZNxnG3iYpbvzd4o8dnJ+0 tyfhkiW29gIoxOxzXtFGw9tj4To5oXmDQ4FKIYlWPlzKelvtl9i1aEKnTIWJa0eRG1kq 5urYC0G3lIywPpYCxNhJJEQvI7A4meAOJ9iHm58oSWBpXPBX8h5RJc6N7Aiqm95XX805 FxJw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=Tpbayqih; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id j3-20020a508a83000000b0055c1900d7b5si5285185edj.278.2024.01.25.05.44.55; Thu, 25 Jan 2024 05:44:56 -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=@gmail.com header.s=20230601 header.b=Tpbayqih; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0F82568D0D2; Thu, 25 Jan 2024 15:44:42 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AA38D68C327 for ; Thu, 25 Jan 2024 15:44:34 +0200 (EET) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-1d780a392fdso17063605ad.3 for ; Thu, 25 Jan 2024 05:44:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190272; x=1706795072; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=I4T3TfTDl+XVUPU8q77NSncJcOI855SwN479paAj3Lc=; b=Tpbayqiht9ul46XRUjwQzuooNceN6UR6rop5aG2LDD5FvHhZjVG5Cnqjd9HB5/EVW5 21WdpJfMjAJ/xX6R/Vi/eIdQwv9GurCsXX48POR3e9L/PUGvNihHZDkhy2qY92R1v3s3 DmLtqycSRR/Rjpd0RuX33HiKzzchSLGvZ0kc1frhfvGyfmsMZf+UDqQB9dz9a6r+c7uG vZpdNip5Pslb/0e+B5P51KXz0g0lmGcpSl8fX02DFQptCuB8Phbs8tKuXtEV4GolGFwE IVVVEoQaf2aWqHm0+gpu2BFwL2UOcoxlA9112OXss6zRQkYY7/8kB3pexGz+5B1xrKkL /I2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190272; x=1706795072; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=I4T3TfTDl+XVUPU8q77NSncJcOI855SwN479paAj3Lc=; b=pt2SAIT+i0k69CoDhv2xMbxS9KcA9JIGjHx+brqcJTiFTqdPn9tAM/2LIyKuDbU7Mm hjCBlMuL38F28/C4d/vmNsfmXLwNVO/bULJXmgR5pqKOshqRea/pSZCmIzakyIdhPT88 9MUm97MBfQdltr1vK+Uf1bj44C+afctb7hD7rIq7rFcwoRUVtElVCv2tYzrYtWeC6CqU BmiDKuyPBAtc4TBu9SgDaGmJ8nSrKxQpdyI62SXcCmS/ugyNIbVzP7aKQZYIJJf0xlWw LjFd5Si35yzzzBjBXucmCrgiBxp4u9SAvV8FUUDtuUonLbz/qN/0oo11yjXO54BMJTZP YA4w== X-Gm-Message-State: AOJu0YzHxXt2mM7+9wh7mdVuESiHOmqv8A2LN46MBhc6a4yac8MPArn1 VtnZKfgjknUTr6az6wifa5x6UfToH5kA43tVO/XP/jEP5O9txJjiaVV3BubR X-Received: by 2002:a17:902:ecc1:b0:1d7:4ae4:9180 with SMTP id a1-20020a170902ecc100b001d74ae49180mr1246538plh.15.1706190272165; Thu, 25 Jan 2024 05:44:32 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.30 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:31 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:24 -0300 Message-ID: <20240125134425.374-2-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 01/24] avcodec: remove deprecated FF_API_IDCT_NONE 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: NIc6Vtt+XxL2 Signed-off-by: James Almer --- libavcodec/avcodec.h | 4 ---- libavcodec/version_major.h | 1 - 2 files changed, 5 deletions(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 7fb44e28f4..4b2ef4fdf7 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1496,10 +1496,6 @@ typedef struct AVCodecContext { #define FF_IDCT_SIMPLEARMV6 17 #define FF_IDCT_FAAN 20 #define FF_IDCT_SIMPLENEON 22 -#if FF_API_IDCT_NONE -// formerly used by xvmc -#define FF_IDCT_NONE 24 -#endif #define FF_IDCT_SIMPLEAUTO 128 /** diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index b9164fe5c6..dc1938888c 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_IDCT_NONE (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_SVTAV1_OPTS (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AYUV_CODECID (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_VT_OUTPUT_CALLBACK (LIBAVCODEC_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45812 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp80595pzf; Thu, 25 Jan 2024 05:45:07 -0800 (PST) X-Google-Smtp-Source: AGHT+IE/3A7s0Cf9KIaRMzL3B5O+byPsk43AAcS+gZ+N/UJbEMfuguP2VEPZE5K7aC+GEgGr3c4j X-Received: by 2002:a17:906:2012:b0:a30:bfb1:f895 with SMTP id 18-20020a170906201200b00a30bfb1f895mr997207ejo.10.1706190307392; Thu, 25 Jan 2024 05:45:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190307; cv=none; d=google.com; s=arc-20160816; b=zznDZjlzU0GxjqkWFlbPLtXxwfY9D8sqL76RYDUaxEmxFdKwRNrRawbaitfP2oIH/s JxHUTh1Jmmmcng3SXenONSz0mNar37R9sUKcTi4rMDxMpciat/XTiRP41sbZU4Fb3X7u jbBqIVW3XhyB1EtWQB8cboajkn7gC0KHYU1bcoNClQ0wjZyI2TnQqjmcFM0Jle3FJRvT IjpUNHtVgW1Tuqj7AHZvumKSERR5gnLzIl2UEOF7yywa1xLOegH65Hnlrlwvu28OjGCR rxy5E91C3pMmyi4t6H1drcrm1RBoA3PjL6wpfV19YzGYp2lrfcYpPJN7K5o2EWcRtUKb UDlA== 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=CDaMYghRgJQYZA/0y3yttjD6u/MpEEun5drryaua4ys=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=l762hkTlPjxHWxeBNzS+rtPr8050ReH4SX6BCeDUhzcUTYVEjsDLdVFcHQVAQU566A YUG+ejkc75Al43xN1cAYXhlS2ZcHeFJFgjejQdpSxmiL/9VJKbrKUNoSygdNWUXfEV0C F46JuLTgCEr9uIKIV0CyqqUpTCQFZ9R1oQQY8uOu/8r854c7/qxOyUJ6SEba7OGM0cCi 0EWozWNVSgK0Y9mkZWwrFwQOYcaS/rWy4lHXwFmV1mWym5WSKWzE7m6Unq5VOVrZqxJO iDL6ICMbaB7QHaaJEWdX8BN2HHxJ+2FdJ9U0R9khaxj+OgmhCOV4tzgUwjtmmuNnYOMM yK6w== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=ljYHj7h0; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id g17-20020a170906199100b00a315c3010e9si873429ejd.342.2024.01.25.05.45.06; Thu, 25 Jan 2024 05:45:07 -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=@gmail.com header.s=20230601 header.b=ljYHj7h0; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 25D7068D0EA; Thu, 25 Jan 2024 15:44:43 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pg1-f177.google.com (mail-pg1-f177.google.com [209.85.215.177]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C611668D0CE for ; Thu, 25 Jan 2024 15:44:35 +0200 (EET) Received: by mail-pg1-f177.google.com with SMTP id 41be03b00d2f7-5cddc5455aeso3700110a12.1 for ; Thu, 25 Jan 2024 05:44:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190273; x=1706795073; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=E6lM7R+3AyF5zKoBnqCcASNbY3149aQHo2XEj25AZBQ=; b=ljYHj7h0KZUwuL1HTZqC+wICPa7XXOkjxReKmgcZwHt82l+nWulVhCghdTbrujKxLX N7g3IfnVoDiRcKFLWedYIJnL/MWYkKyXaNwHAzg23wjW8jlY+SP5yueevG5Rmd0zTIU6 oyWpaQIxNzO7unYg2d5V2sska92MMoflzP7P6c/uZJu9EGKGClgUSIfUx9RT0W/BcsEJ tGHgVl82y0W6r2ZMoETeqR4kPJz1ysPVeQ0YQOJmPV+b2YKckvcP9rUxQXaY3uKNgZ4e 9HFo7DP73rDb0+aAakZHEeRFj4D2mn87t/A3ovt5MfulX7yw+dq1/7I+wdwzJUqos4se U82w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190273; x=1706795073; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=E6lM7R+3AyF5zKoBnqCcASNbY3149aQHo2XEj25AZBQ=; b=KAr4kXbisVVyqjC7t3TKxopGb+AYH67FFuJ3i/xfN7WBLuDvdKihad+GA58yEYjedI kvc8M6A47ceWsx5yw23e68Aa6e9VWhLpxg81edSuBg+HryulW3AHyoeFpVYpBXIosdLW 1zHqnPjNPpiEVdtUgKKgc9N7G4DR1MGJNiLjzsEGAiccHc9wdWxI8UN4380roiDeYACd /sdw71r3kRnDloOSCHvB+h04mPKmmKQvrBbcO4o+I9QRDA4bPg+Wx540kBBcmIDNIL3I RNjbJr/Pc7ZYKZAvYKd8xhJ4JKo+wX1Oo1b+bpC2ofagAL1mjfAdjoQgnBnvOdVnyyuY 5CDw== X-Gm-Message-State: AOJu0YxCDKggSPSdxczIBwy39Ya0Vgt56pR2/g9InxNvtFn+wSTrEDDC K071hGevrIVJ2duZ6Tqydq5Hb8vX9vd8uJcW1Amck8hi7HTlSGwoKpg18RQy X-Received: by 2002:a17:90a:9a6:b0:290:6c93:1e2a with SMTP id 35-20020a17090a09a600b002906c931e2amr556986pjo.51.1706190273442; Thu, 25 Jan 2024 05:44:33 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.32 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:33 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:25 -0300 Message-ID: <20240125134425.374-3-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 02/24] avcodec: remove deprecated FF_API_SVTAV1_OPTS 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: 6F8R6bpfT8mu Signed-off-by: James Almer --- libavcodec/libsvtav1.c | 48 -------------------------------------- libavcodec/version_major.h | 1 - 2 files changed, 49 deletions(-) diff --git a/libavcodec/libsvtav1.c b/libavcodec/libsvtav1.c index 862192945b..9343322496 100644 --- a/libavcodec/libsvtav1.c +++ b/libavcodec/libsvtav1.c @@ -62,16 +62,6 @@ typedef struct SvtContext { // User options. AVDictionary *svtav1_opts; -#if FF_API_SVTAV1_OPTS - int hierarchical_level; - int la_depth; - int scd; - - int tier; - - int tile_columns; - int tile_rows; -#endif int enc_mode; int crf; int qp; @@ -154,22 +144,6 @@ static int config_enc_params(EbSvtAv1EncConfiguration *param, AVDictionaryEntry *en = NULL; // Update param from options -#if FF_API_SVTAV1_OPTS - if (svt_enc->hierarchical_level >= 0) - param->hierarchical_levels = svt_enc->hierarchical_level; - if (svt_enc->tier >= 0) - param->tier = svt_enc->tier; - if (svt_enc->scd >= 0) - param->scene_change_detection = svt_enc->scd; - if (svt_enc->tile_columns >= 0) - param->tile_columns = svt_enc->tile_columns; - if (svt_enc->tile_rows >= 0) - param->tile_rows = svt_enc->tile_rows; - - if (svt_enc->la_depth >= 0) - param->look_ahead_distance = svt_enc->la_depth; -#endif - if (svt_enc->enc_mode >= -1) param->enc_mode = svt_enc->enc_mode; @@ -605,20 +579,6 @@ static av_cold int eb_enc_close(AVCodecContext *avctx) #define OFFSET(x) offsetof(SvtContext, x) #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM static const AVOption options[] = { -#if FF_API_SVTAV1_OPTS - { "hielevel", "Hierarchical prediction levels setting (Deprecated, use svtav1-params)", OFFSET(hierarchical_level), - AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 4, VE | AV_OPT_FLAG_DEPRECATED , "hielevel"}, - { "3level", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 3 }, INT_MIN, INT_MAX, VE, "hielevel" }, - { "4level", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 4 }, INT_MIN, INT_MAX, VE, "hielevel" }, - - { "la_depth", "Look ahead distance [0, 120] (Deprecated, use svtav1-params)", OFFSET(la_depth), - AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 120, VE | AV_OPT_FLAG_DEPRECATED }, - - { "tier", "Set operating point tier (Deprecated, use svtav1-params)", OFFSET(tier), - AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 1, VE | AV_OPT_FLAG_DEPRECATED, "tier" }, - { "main", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, VE, "tier" }, - { "high", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 1 }, 0, 0, VE, "tier" }, -#endif { "preset", "Encoding preset", OFFSET(enc_mode), AV_OPT_TYPE_INT, { .i64 = -2 }, -2, MAX_ENC_PRESET, VE }, @@ -656,14 +616,6 @@ static const AVOption options[] = { AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 63, VE }, { "qp", "Initial Quantizer level value", OFFSET(qp), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 63, VE }, -#if FF_API_SVTAV1_OPTS - { "sc_detection", "Scene change detection (Deprecated, use svtav1-params)", OFFSET(scd), - AV_OPT_TYPE_BOOL, { .i64 = -1 }, -1, 1, VE | AV_OPT_FLAG_DEPRECATED }, - - { "tile_columns", "Log2 of number of tile columns to use (Deprecated, use svtav1-params)", OFFSET(tile_columns), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 4, VE | AV_OPT_FLAG_DEPRECATED }, - { "tile_rows", "Log2 of number of tile rows to use (Deprecated, use svtav1-params)", OFFSET(tile_rows), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 6, VE | AV_OPT_FLAG_DEPRECATED }, -#endif - { "svtav1-params", "Set the SVT-AV1 configuration using a :-separated list of key=value parameters", OFFSET(svtav1_opts), AV_OPT_TYPE_DICT, { 0 }, 0, 0, VE }, {NULL}, diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index dc1938888c..03fe1e2a83 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_SVTAV1_OPTS (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AYUV_CODECID (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_VT_OUTPUT_CALLBACK (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AVCODEC_CHROMA_POS (LIBAVCODEC_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:26 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45813 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp80721pzf; Thu, 25 Jan 2024 05:45:17 -0800 (PST) X-Google-Smtp-Source: AGHT+IGko5GoLOw2BwqYxHaSiTjJsmR7uGXtPNjGlBn3+psBPFh0ok1Jram9nmCyuUlQI6vfBEJK X-Received: by 2002:a17:906:29db:b0:a2f:1762:1e7d with SMTP id y27-20020a17090629db00b00a2f17621e7dmr504682eje.55.1706190317489; Thu, 25 Jan 2024 05:45:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190317; cv=none; d=google.com; s=arc-20160816; b=wJkEtQvfAjQ2Lw0+gOy16H8+1a3eE92WX2OD4AT9rwFTccIvbJxEkPV5DyUQy1RZAb C5smNupMmoQW2IscT/AdmR91yQpWH5yRlseRNQPZvvPwg1TeeROs0saG6hjRD3wwT791 YOl7Da4sY1Xx8z3lBimZE01Ona6LHENG3GDaCVWOvGKqX3sDXsUnFEE+EAqXgE922u5F y6TFaq3t2uw5heqbXJWaFS8gAdBNqh8tonfJV2qCYvuycSvJOt5OGpp3sJJhScYTdeIM Qn9Su8DrB3z+F4cTQUEELuCqYDw3C7Eb9aRoHqExPpdyd/iMHdROjElYwrfApB101yQ1 q7KQ== 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=X3iEOaZWaWEdUHOOpMLjgHN67T34XBy6RoNCSHdEBVk=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=yEIKbX1g/gs/uWJdZXGoURWp9GJa5+zE/0N+8lXGOZWoIREYXWyChraEf7pWXGXtvc N22Kfst0MjL066efeVysR1+8VaB/jsJOxfz5z1GqumoeDlyKJj3HtY+5q/YQPUG00AE4 V3+cO0CVCWyiPoyqaaq+S4bfl8HzbPXCZXUs1c8CfkhDcWLB5tv3oDwOJJMJ6Ee5fo7b Ixcdy0jCqmnBTZ/NRWR4NHR4PwxhyLWNltx39k6W9UYl4f3c428uFFmlqXSnEp3SEGoa WlkxUiMjLCVKcYre/ewUbgMZBiciBWCbUjegjoLXWfZW6pKJuSZuN8p3vzvsuT9Md0yU S4+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=NcY6nUXj; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id xo13-20020a170907bb8d00b00a343e4a990bsi21120ejc.289.2024.01.25.05.45.17; Thu, 25 Jan 2024 05:45:17 -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=@gmail.com header.s=20230601 header.b=NcY6nUXj; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9CAFE68D11B; Thu, 25 Jan 2024 15:44:45 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pg1-f181.google.com (mail-pg1-f181.google.com [209.85.215.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0AAE968D0CE for ; Thu, 25 Jan 2024 15:44:37 +0200 (EET) Received: by mail-pg1-f181.google.com with SMTP id 41be03b00d2f7-5cdf76cde78so3804265a12.1 for ; Thu, 25 Jan 2024 05:44:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190275; x=1706795075; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=dBQj4uIuqQ6uvy0abttb6cyFnsydbV+wV6h55JLx/2Q=; b=NcY6nUXjwZu7XvyTjcmi/vQ6mXDYILRWEYAImNAQFTuVpI0cVMZ+URj2wS23mgrxcw Riq5QCmIH/YKseCfXr8tGQ8ppmVwFkSxGVAzsIbDcgd+qbZ1EtvgX2IFdyjXE9QaCzMP HO5n4FD3AlLn4WSG+VUDQU6n20fcKWPjgzV7/vbaoHPBR/r7dAQjeY7CfWmv2EtQq7Sr gPKOH97MSmVm52Df9TmYVhuqGb/tDCOKvyL2TIGR2TEfuuPH0BTLxGr9rnhpx3LRTwph 7DPeM3F8wF8getr/ADIJTSwCCix4uO0M7AcVfwuKohY/VlIPW0oVQIRDbjEQPWK5HNtK JN7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190275; x=1706795075; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dBQj4uIuqQ6uvy0abttb6cyFnsydbV+wV6h55JLx/2Q=; b=XGoLYXzKOFMB1qmZ+x5cIlmSsRuHJFdvqi1ooO9Faew586jWeejSmcnsC+IrCV83/F cfrWJ/AneWqW/NUq2gZxuAqJDkYVyeNVIEdy6Ut+plRQBkKTCF1DIRBfz88LX54IUaIh hpD7PtUBJcrFJmHWWvtNtbuAKwhL9jDE1rahcTSZn00abfN3g0KgGVtQHTbIXICqSFrv +fs8XsfQDzjRJCAP0yqprpN7sApWQ/+o6KvDlSQ8Y0V+WKV/vdMHUN4sgmPuLCceJyEh Bkr5l37cncP9Qe5dfBCZGPlecjwnXsgqfbQoj6rsSwVyWN3bEvAohvJKv4sjgkaffdtn NblA== X-Gm-Message-State: AOJu0YxtH5Kd0jhnKoCRHTpXoFNH+i8ckpnmShy/GvMK52QXocL2s4S0 9FgcMgcB4vZkVoourupriciGPbU6lxjpDxy4opgQ62v/4xcd7JEDCc0vMh1S X-Received: by 2002:a05:6a20:28a2:b0:19c:4ada:1a97 with SMTP id q34-20020a056a2028a200b0019c4ada1a97mr672808pzf.94.1706190274728; Thu, 25 Jan 2024 05:44:34 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.33 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:34 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:26 -0300 Message-ID: <20240125134425.374-4-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 03/24] avcodec: remove deprecated FF_API_AYUV_CODECID 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: OI0Bxw8CmnW8 Signed-off-by: James Almer --- libavcodec/allcodecs.c | 4 ---- libavcodec/codec_desc.c | 9 --------- libavcodec/codec_id.h | 3 --- libavcodec/v408dec.c | 35 ++++------------------------------- libavcodec/v408enc.c | 37 ++++--------------------------------- libavcodec/version_major.h | 1 - 6 files changed, 8 insertions(+), 81 deletions(-) diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c index ef8c3a6d7d..45d5998943 100644 --- a/libavcodec/allcodecs.c +++ b/libavcodec/allcodecs.c @@ -61,10 +61,6 @@ extern const FFCodec ff_avrn_decoder; extern const FFCodec ff_avs_decoder; extern const FFCodec ff_avui_encoder; extern const FFCodec ff_avui_decoder; -#if FF_API_AYUV_CODECID -extern const FFCodec ff_ayuv_encoder; -extern const FFCodec ff_ayuv_decoder; -#endif extern const FFCodec ff_bethsoftvid_decoder; extern const FFCodec ff_bfi_decoder; extern const FFCodec ff_bink_decoder; diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 033344304c..3bab86db62 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1470,15 +1470,6 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Avid Meridien Uncompressed"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, -#if FF_API_AYUV_CODECID - { - .id = AV_CODEC_ID_AYUV, - .type = AVMEDIA_TYPE_VIDEO, - .name = "ayuv", - .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed MS 4:4:4:4"), - .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, - }, -#endif { .id = AV_CODEC_ID_TARGA_Y216, .type = AVMEDIA_TYPE_VIDEO, diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h index d96e49430e..c8dc21da74 100644 --- a/libavcodec/codec_id.h +++ b/libavcodec/codec_id.h @@ -253,9 +253,6 @@ enum AVCodecID { AV_CODEC_ID_AVRP, AV_CODEC_ID_012V, AV_CODEC_ID_AVUI, -#if FF_API_AYUV_CODECID - AV_CODEC_ID_AYUV, -#endif AV_CODEC_ID_TARGA_Y216, AV_CODEC_ID_V308, AV_CODEC_ID_V408, diff --git a/libavcodec/v408dec.c b/libavcodec/v408dec.c index 191c050fb2..4d8bccd650 100644 --- a/libavcodec/v408dec.c +++ b/libavcodec/v408dec.c @@ -29,10 +29,6 @@ static av_cold int v408_decode_init(AVCodecContext *avctx) { avctx->pix_fmt = AV_PIX_FMT_YUVA444P; -#if FF_API_AYUV_CODECID - if (avctx->codec_id==AV_CODEC_ID_AYUV) - av_log(avctx, AV_LOG_WARNING, "This decoder is deprecated and will be removed.\n"); -#endif return 0; } @@ -61,20 +57,10 @@ static int v408_decode_frame(AVCodecContext *avctx, AVFrame *pic, for (i = 0; i < avctx->height; i++) { for (j = 0; j < avctx->width; j++) { -#if FF_API_AYUV_CODECID - if (avctx->codec_id==AV_CODEC_ID_AYUV) { - v[j] = *src++; - u[j] = *src++; - y[j] = *src++; - a[j] = *src++; - } else -#endif - { - u[j] = *src++; - y[j] = *src++; - v[j] = *src++; - a[j] = *src++; - } + u[j] = *src++; + y[j] = *src++; + v[j] = *src++; + a[j] = *src++; } y += pic->linesize[0]; @@ -88,19 +74,6 @@ static int v408_decode_frame(AVCodecContext *avctx, AVFrame *pic, return avpkt->size; } -#if FF_API_AYUV_CODECID -#if CONFIG_AYUV_DECODER -const FFCodec ff_ayuv_decoder = { - .p.name = "ayuv", - CODEC_LONG_NAME("Uncompressed packed MS 4:4:4:4"), - .p.type = AVMEDIA_TYPE_VIDEO, - .p.id = AV_CODEC_ID_AYUV, - .init = v408_decode_init, - FF_CODEC_DECODE_CB(v408_decode_frame), - .p.capabilities = AV_CODEC_CAP_DR1, -}; -#endif -#endif #if CONFIG_V408_DECODER const FFCodec ff_v408_decoder = { .p.name = "v408", diff --git a/libavcodec/v408enc.c b/libavcodec/v408enc.c index 1faac7cc36..c1bf0f6158 100644 --- a/libavcodec/v408enc.c +++ b/libavcodec/v408enc.c @@ -33,11 +33,6 @@ static av_cold int v408_encode_init(AVCodecContext *avctx) avctx->bits_per_coded_sample = 32; avctx->bit_rate = ff_guess_coded_bitrate(avctx); -#if FF_API_AYUV_CODECID - if (avctx->codec_id == AV_CODEC_ID_AYUV) - av_log(avctx, AV_LOG_WARNING, "This encoder is deprecated and will be removed.\n"); -#endif - return 0; } @@ -60,20 +55,10 @@ static int v408_encode_frame(AVCodecContext *avctx, AVPacket *pkt, for (i = 0; i < avctx->height; i++) { for (j = 0; j < avctx->width; j++) { -#if FF_API_AYUV_CODECID - if (avctx->codec_id==AV_CODEC_ID_AYUV) { - *dst++ = v[j]; - *dst++ = u[j]; - *dst++ = y[j]; - *dst++ = a[j]; - } else -#endif - { - *dst++ = u[j]; - *dst++ = y[j]; - *dst++ = v[j]; - *dst++ = a[j]; - } + *dst++ = u[j]; + *dst++ = y[j]; + *dst++ = v[j]; + *dst++ = a[j]; } y += pic->linesize[0]; u += pic->linesize[1]; @@ -87,20 +72,6 @@ static int v408_encode_frame(AVCodecContext *avctx, AVPacket *pkt, static const enum AVPixelFormat pix_fmt[] = { AV_PIX_FMT_YUVA444P, AV_PIX_FMT_NONE }; -#if FF_API_AYUV_CODECID -#if CONFIG_AYUV_ENCODER -const FFCodec ff_ayuv_encoder = { - .p.name = "ayuv", - CODEC_LONG_NAME("Uncompressed packed MS 4:4:4:4"), - .p.type = AVMEDIA_TYPE_VIDEO, - .p.id = AV_CODEC_ID_AYUV, - .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE, - .init = v408_encode_init, - FF_CODEC_ENCODE_CB(v408_encode_frame), - .p.pix_fmts = pix_fmt, -}; -#endif -#endif #if CONFIG_V408_ENCODER const FFCodec ff_v408_encoder = { .p.name = "v408", diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 03fe1e2a83..199a1a2714 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_AYUV_CODECID (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_VT_OUTPUT_CALLBACK (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AVCODEC_CHROMA_POS (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_VT_HWACCEL_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:27 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45814 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp80860pzf; Thu, 25 Jan 2024 05:45:28 -0800 (PST) X-Google-Smtp-Source: AGHT+IG4ayp8RS9zUWQ5ZBAEsfQs9UxCEUakTYYis8KMiGnxhhhElHRfXpoKdKLD1QJQXbqeolVb X-Received: by 2002:a17:906:3b14:b0:a2e:5c09:e367 with SMTP id g20-20020a1709063b1400b00a2e5c09e367mr1096116ejf.6.1706190327805; Thu, 25 Jan 2024 05:45:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190327; cv=none; d=google.com; s=arc-20160816; b=AfkMsxL7wCciScokz/6CdwnZNKQF/F9lJKbcnshQS6n0rmgZ8OswEGKw/nguCFN3qj 1Olw39y4NTs12Wl7wNOuQZH0v7JL08j7ewa84lngcM2ESyFtjJdMMLj5M6baJhIML+dK GFSnXOxNMgQBCZrM9OOSRjADf7/WFER7e1SFAmSeWftweXXELPgLkox33g/6EGLH22SN Py+sham4xvvt762IA/jwb/7jmyEJ5GoG3HWmcPfbqg1E3YxlJvkXDIbVDGd+bKy4aeth AQyt4og2eteJoVRvSp8+Ki42bKj4JkWdluAlbjPGnCvfUUu5twFvQV7k1bW27TE4XeWf xBww== 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=duEgdbYsHxIWnXEeSKfQAWhUOIzlh16wXRTESfvYVcU=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=p/fW0WK5ef4X0DLK63/ZJEqQ/Ajt36Qh7t+TCKXIIL7i5COc5hsgIqsZb191NZy34R Ai4SOoo/g7JMT+4+zkjsGV2Ku3TEAQ/9r7Ln9ja5ceQtLanohlBDrnpBdD1M/ehbVHXx iFzVGph3eUCd578n4NB9ip/YSXSNFscRqrtbUo09F30V+FzbPgk5bRS+QWXCGNYV34RY 53m2XTMlJUOptAhFgqmlhu2/rN6J2Fif9E8dM/YmJmHQgvb/+oke/OSvhAVNVlSmSdUd DBOxfcDvzbJeDkduGIBtHaq91DtMWZ072QzqRIU5PRHl/uiiBVhYDNohZUqq2L8/iZYg ILYg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=HqDtapwb; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id jo24-20020a170906f6d800b00a28d3917ff5si949866ejb.650.2024.01.25.05.45.27; Thu, 25 Jan 2024 05:45:27 -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=@gmail.com header.s=20230601 header.b=HqDtapwb; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0E70F68D115; Thu, 25 Jan 2024 15:44:47 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 47BB468D0EB for ; Thu, 25 Jan 2024 15:44:38 +0200 (EET) Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-290b37bb7deso3190458a91.0 for ; Thu, 25 Jan 2024 05:44:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190276; x=1706795076; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=/ZexWyObt5v/0pyhshjCak503qJMH9JZwXptbuI4cSM=; b=HqDtapwbL9WnOg2BM13lJB9K9LkA9t6F5KQb6TCrDKLCYraCewyWTV0ePvxSdqTMkz r0461wzrUPgdKWbZxhyfBLXbnSwMwBs8xnmq6DzQGMQiXXMYcass/CnS54Y+1MauKkCc k9MjxaZ089L24DRdi/SGht8EHppqonRyGiLT65K40dDJaDsui9H2OxaImFQ04l0HugQs ALJ+LCvpK3xXPPnQyI4squlDBVXyC7yOK20ZWcRqhxh6dlhvhLh7qaK3vAcmfS/3qdc2 PDNSjvCG1/zFa/qNt2j7wxIguo2T6XJdqh33B/xXkSIXBtLmwXIaF1qieCqhxE2ajgZO bi+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190276; x=1706795076; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/ZexWyObt5v/0pyhshjCak503qJMH9JZwXptbuI4cSM=; b=HtTWzA4Bp3NDyl42zX0nDNxmCAlYmHd6Jf9iT7U92frbXT0CXIWtTT8Wa00Vn9bMKz D9PlY5SKB9Dsjieo6WbNr74vfp374NJGBSnRFhwqgPMQHyVu6/W7tm09CetjBTfUV8jE oniCYRAZ3pWmiE17DxpGcuFweNn/OEMgvO93dy5Fmo6R7iaYUqm+niesAhS8p6ws4gWJ 5Kxm27Wnyj5/2bo5dVSl0eb9M+PlXGFFIHiks27CIBPOEhC+KDxw832LEB15vJEECrQw JrJnlIzxQiX+UxPbMO97XOITMHD1SkN3V24CoSrUS9PnhDty8fQyMILt+yEtW65wOmqS mO5Q== X-Gm-Message-State: AOJu0YzVrqLgUZLzeL2EH9vf3BRzRLOEJJ+k2NW+XLiQSkF98O0ypoiz FniTPr4U0/z+3VWjJIkCMdbsJJMAiiJL1gSXEA7KwfdTr1MmubwWXX9Eym6u X-Received: by 2002:a17:90a:498c:b0:291:3ba:178f with SMTP id d12-20020a17090a498c00b0029103ba178fmr832450pjh.20.1706190275970; Thu, 25 Jan 2024 05:44:35 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.34 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:35 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:27 -0300 Message-ID: <20240125134425.374-5-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 04/24] avcodec: remove deprecated FF_API_VT_OUTPUT_CALLBACK 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: 4+06bLAlH3Nj Signed-off-by: James Almer --- libavcodec/version_major.h | 1 - libavcodec/videotoolbox.h | 9 --------- 2 files changed, 10 deletions(-) diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 199a1a2714..b364ba68f1 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_VT_OUTPUT_CALLBACK (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AVCODEC_CHROMA_POS (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_VT_HWACCEL_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AVCTX_FRAME_NUMBER (LIBAVCODEC_VERSION_MAJOR < 61) diff --git a/libavcodec/videotoolbox.h b/libavcodec/videotoolbox.h index ba5eddbf46..11b5315f7d 100644 --- a/libavcodec/videotoolbox.h +++ b/libavcodec/videotoolbox.h @@ -60,15 +60,6 @@ typedef struct AVVideotoolboxContext { */ VTDecompressionSessionRef session; -#if FF_API_VT_OUTPUT_CALLBACK - /** - * The output callback that must be passed to the session. - * Set by av_videottoolbox_default_init() - */ - attribute_deprecated - VTDecompressionOutputCallback output_callback; -#endif - /** * CVPixelBuffer Format Type that Videotoolbox will use for decoded frames. * set by the caller. If this is set to 0, then no specific format is From patchwork Thu Jan 25 13:43:28 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45816 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81076pzf; Thu, 25 Jan 2024 05:45:48 -0800 (PST) X-Google-Smtp-Source: AGHT+IFPC0zm/FoYN4G/ybnSaA0pnnNuOxvb7SD3fY6gi33xRbmshv3irMd/+kf/l8tsxorT+8Na X-Received: by 2002:a17:907:bb8f:b0:a30:d080:93 with SMTP id xo15-20020a170907bb8f00b00a30d0800093mr1514265ejc.6.1706190348155; Thu, 25 Jan 2024 05:45:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190348; cv=none; d=google.com; s=arc-20160816; b=fSpdJnMgG9U/FML3aVZ4Gf7U7uoppx8yW5QksZbioSq9maAC48OTKBDSeXMnfcx1gg 10DzwGWlgiiKPKr3Lm/mCcCsAvh5k+PYD7KgLrYfy3QZ0sSzbjdxmcKcIcdL92/bQd5k xUXIR/85rqnZZANtdmhBoLGogDs/6PBEvupUmY8IX7pctGxb+Sj9bpdevgNGmX0I/y9p lguNz1gdEgSkoiBrMxfmYOnybrhGectrnjJ+81YaAlw0QaDUM8ED/X4yXa2+1mo/sxbf FYKHU1IhCX8DsOfL0SVYDsPPg11iHDR+dMl9iwQfyKks8zdxtEfCDc7xTSXjgJbfnfb6 JsAQ== 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=0dKiXRxRM4IqTTBEHPJQHw6GA4DKzsA5OhENgav0ttI=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=wKpi+k2rZmb1kko577XiXcvgcb1FxNGY1HePTAy0jj3WeG050weWwBj6sjeJHdQ/LV wYa8rjSvY3V4Wt5X3Jnuln6xd+PEILeOl8zFbKLmscFMROWM1BbrO5Mwu82U+Y0Rz/5U 5LlUW2AWmb9L83hCE2MwaAoKwdKaGE/ldR7+lFoFLlFfs1RjRH5jOf/gZQUxzS5cjci6 R82RAvESJ2kUsP4zDVSD9N+UihtXoashyVi3q/2ySygmoxSv1jGDHvzzQmlypaZHod/w WbUEXJhbzn9x5oP7ns+IS7f+/X1UovU7SnkHzn6ZqrVySpU+GryWgQhx+6XjH5Mvh6dm 9pRw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=etl8QbPW; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a3-20020a1709065f8300b00a28a9e27f6asi970825eju.536.2024.01.25.05.45.47; Thu, 25 Jan 2024 05:45:48 -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=@gmail.com header.s=20230601 header.b=etl8QbPW; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D4DBC68D14B; Thu, 25 Jan 2024 15:44:49 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6112168D103 for ; Thu, 25 Jan 2024 15:44:39 +0200 (EET) Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-1d51ba18e1bso61539725ad.0 for ; Thu, 25 Jan 2024 05:44:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190277; x=1706795077; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=p+ibMIu/FAwsavBjqDF7L1m/qV9esMSzHd/dbiqi1xI=; b=etl8QbPW7jLtIvvOCEsfeHaYFZ42/1R6L94W2ESiiQrkaA/Fd2JDEpmvElrxc3J+he O33GONf7B3TMB5foNJ+h4qMpRETch+lYc6x5t0zEnLHKjsyUemwEDseljWxGPK8DYHem uMq6Kx2U2GSuvpzCGoYV43Auep8cpt1k6mgZSm8ZGTdojsurEFSVntVZE0z5nErcIBpN nmBqwDGVDqxisUu0KKweKDZ++2KMRsz1dnuakdS2sL7vsoYVULdlsP5dcWVHB3rCFxvs t3hGde6auMqjzIAF+k8yfHOeY7C099Iu1GlhtOnilQUXMXu5G+uu2WdPVbcAxnbd9oGQ Aszw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190277; x=1706795077; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=p+ibMIu/FAwsavBjqDF7L1m/qV9esMSzHd/dbiqi1xI=; b=bimQwTsIKoIVhSHhh6JOceHurIQFZsnVcwq8GeAO+4QmjOlgdH4OvHQwQ5VtSs9mLo tB++9aFdmd6NGPFKmqFCo5ruXiswunDnGCkyNmxMmt89hVe/VH1zV+Z0q6ylAmHXoRb0 iM+pfKcmrWC7O6v/vFas034V51znJKCEdoe2EoBFNE4KHPpWxBB+OMTMoKvQGNSiwv3B HRgVhNbVvMIKYlbWI2f5ClCocr+WvcZ5LmrRIAfssO1kB4JCF2zJL5uzGIf/v/TjIp24 Qm+QN0UnJjHPVhW7j4shD2cA3jLdLqYPWbJS3yRLtrX/6bhjjCZsyWXI0LgHcDQncMWJ M7Rw== X-Gm-Message-State: AOJu0Yxf1GZY8zVVkHZNRhw6FomOirVI5B1clPqceQX8YqlIxG5asGF0 ev+Hw7EVeeutFPlHNoneoy/DG1y4HhSpq7wgvgP6YAxzeizJ40mWWp45NMa9 X-Received: by 2002:a17:903:183:b0:1d7:8237:f770 with SMTP id z3-20020a170903018300b001d78237f770mr1404029plg.17.1706190277235; Thu, 25 Jan 2024 05:44:37 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.36 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:36 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:28 -0300 Message-ID: <20240125134425.374-6-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 05/24] avcodec: remove deprecated FF_API_AVCODEC_CHROMA_POS 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: QxL3LNZmd65M Signed-off-by: James Almer --- libavcodec/avcodec.h | 28 ---------------------------- libavcodec/utils.c | 11 ----------- libavcodec/version_major.h | 1 - 3 files changed, 40 deletions(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 4b2ef4fdf7..2dd9c5c82b 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -2471,34 +2471,6 @@ void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height); void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height, int linesize_align[AV_NUM_DATA_POINTERS]); -#ifdef FF_API_AVCODEC_CHROMA_POS -/** - * Converts AVChromaLocation to swscale x/y chroma position. - * - * The positions represent the chroma (0,0) position in a coordinates system - * with luma (0,0) representing the origin and luma(1,1) representing 256,256 - * - * @param xpos horizontal chroma sample position - * @param ypos vertical chroma sample position - * @deprecated Use av_chroma_location_enum_to_pos() instead. - */ - attribute_deprecated -int avcodec_enum_to_chroma_pos(int *xpos, int *ypos, enum AVChromaLocation pos); - -/** - * Converts swscale x/y chroma position to AVChromaLocation. - * - * The positions represent the chroma (0,0) position in a coordinates system - * with luma (0,0) representing the origin and luma(1,1) representing 256,256 - * - * @param xpos horizontal chroma sample position - * @param ypos vertical chroma sample position - * @deprecated Use av_chroma_location_pos_to_enum() instead. - */ - attribute_deprecated -enum AVChromaLocation avcodec_chroma_pos_to_enum(int xpos, int ypos); -#endif - /** * Decode a subtitle message. * Return a negative value on error, otherwise return the number of bytes used. diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 39b83c7791..1ad91c3237 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -362,17 +362,6 @@ void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height) align = FFMAX3(align, linesize_align[1], linesize_align[2]); *width = FFALIGN(*width, align); } -#if FF_API_AVCODEC_CHROMA_POS -int avcodec_enum_to_chroma_pos(int *xpos, int *ypos, enum AVChromaLocation pos) -{ - return av_chroma_location_enum_to_pos(xpos, ypos, pos); -} - -enum AVChromaLocation avcodec_chroma_pos_to_enum(int xpos, int ypos) -{ - return av_chroma_location_pos_to_enum(xpos, ypos); -} -#endif int avcodec_fill_audio_frame(AVFrame *frame, int nb_channels, enum AVSampleFormat sample_fmt, const uint8_t *buf, diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index b364ba68f1..88cc975713 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_AVCODEC_CHROMA_POS (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_VT_HWACCEL_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AVCTX_FRAME_NUMBER (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_SLICE_OFFSET (LIBAVCODEC_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:29 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45818 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81277pzf; Thu, 25 Jan 2024 05:46:06 -0800 (PST) X-Google-Smtp-Source: AGHT+IExISFcix2pO417xuNzSr7MwErHYfl6tOqjuZ4fmt25I/NZ+9LgyuptRpK5q9aUxCphT3Xi X-Received: by 2002:a19:8c5d:0:b0:510:1b6c:3f1d with SMTP id i29-20020a198c5d000000b005101b6c3f1dmr1147042lfj.6.1706190365965; Thu, 25 Jan 2024 05:46:05 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190365; cv=none; d=google.com; s=arc-20160816; b=0Yp1s9YZPffDLqVFx9kgEOSJuJeC4CtAQnS3NUNpjFBJMNJ1qgeXlMkZC4v3xmr6Vi XxlN3k6WEuAlimxg6ggns4pVhk9YdZ88Yf2uJmKYK16M/vu4voQ0KrsDnFe19+JeKoVa kjWfHGFf/BQqjqSAONTCeDG02wSoi0rliJNfayyb7rtu/rEEoSDZ94HuGOCmbrADfJfb j459azIQQTdF67c5y4QR3At+/0BogIp0os5oHV8VwPBkzIZUql5q022lEGTIqNm2bQTz nSQFZG6xm/M82SHtXx7/IZc79njkvlyjZ4ImvZyHAUhyvf3QCnkAto6rcc/KFE7+lVi6 PkBw== 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=fu2vQMgFeeu1vSoK4PXt1KhN75qtknPwUe5SBrGveKI=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=bgR8j0/Pj1AF4LMTnrlA/bQXAD4Z2Nvhi4W3diXpycwr2gcYjX0z2a3JYfKPVRs5qC UwjYhIBDCtKQMocgZmfGeL3HhbwML8Upu100NL+f4KnIOpG+4i+VQ6CH1pkSKzk0273/ E9S035cwYSpTYrTPBM2d/uLS71tV0gGOMaKLQPn+6iLUymsgvl9E0K+gYXh/LxH6uffj H2YJCWV9U+OHIt5WdafFIYvhtQdl5WZhjbZIHy1LjSrLn8zTFBCTct6awt2eDkhP1Ebc 3Occrfdbnik7SAhKOqNrHxqMzCudoW7PiaXmQ6raeovymSTF1PiQsossY7/GiZfFnMie nCvQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=YeuOcCJ7; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id u25-20020a170906c41900b00a310d230ca4si932731ejz.902.2024.01.25.05.46.05; Thu, 25 Jan 2024 05:46:05 -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=@gmail.com header.s=20230601 header.b=YeuOcCJ7; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 8618368D14E; Thu, 25 Jan 2024 15:44:52 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9B5E468D119 for ; Thu, 25 Jan 2024 15:44:40 +0200 (EET) Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-1d50d0c98c3so6200935ad.1 for ; Thu, 25 Jan 2024 05:44:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190278; x=1706795078; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=MjitALp9XWyfEd6jOA5rNKI/Q80R2V3qc8z+daJ2g8M=; b=YeuOcCJ78niQ6uaMoMxf6g3LaZPh/EVM9+XdQesN3u3BT6p+6EtMs+0VVFH8tzDDlP spsrusv3Mrcun+B0c5bTArFNtR8yQztbZGl/lmez0geQOFftVR8h+8pILmk+E6Q4AJuM BpVRCuN0AP1eu1HZRRPoGiO77TUkQPpBOMPD/tyYoXX18Nay1V3JXJ9fSWII9rx3UcY/ xA/HUyI9raQ6PyDiva15MJOAKOpWir6DL+JXkMiPSHMoohr37CXLhHu1x0JtJ9YsSoUk OEv4gHwOAm5HmRVX69C1mppGBVLJVasQWdTC86PRAGI9Vxzf1CeBWfmFqC4+cFf8k9pH 1fgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190278; x=1706795078; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MjitALp9XWyfEd6jOA5rNKI/Q80R2V3qc8z+daJ2g8M=; b=CV++quHePSfln93wpt44qTs+VzFet+nhpAKCho8/sePiFNO27KCASkPmgZsglMoKd/ 5o5JYxN6GyHVrxQZrhdR3wA3Q/tmWpOA2etlkOEedAwlkd25SYQYUDZeDPqtbnSu3p6p AzlH4J8juD8mOyzGwE/BKAfXtbzyQAOUwijNpLqmJTA0trox5D5DCsgB1MJu2ghI05+S /2dwTaqlccLxjGLMLaRuZRD+SI3zylrwZMCU67Lwfz9kXOpiAxxXi42lJGsQsBsO0Pvi C526Jt9Y2NfbP8K/S0GEpikIWnbgeLLgrKByZaIuQGNhiIXwXPZrpPBOGzkHfo+uOMez EpFQ== X-Gm-Message-State: AOJu0Yzv9BHHPNubJlsf2qSmDYuHYSEce6fKBwT5FmYLWp7PKpmbhdDq v8qiiCBomENsoWPhgiYXTL4hhJouMn3dKlUV9eoOkmFHyUaymSTTwXf4ki7M X-Received: by 2002:a17:903:452:b0:1d0:af63:2403 with SMTP id iw18-20020a170903045200b001d0af632403mr1139118plb.50.1706190278474; Thu, 25 Jan 2024 05:44:38 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.37 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:38 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:29 -0300 Message-ID: <20240125134425.374-7-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 06/24] avcodec: remove deprecated FF_API_VT_HWACCEL_CONTEXT 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: BCQE5QuWjJKD Signed-off-by: James Almer --- libavcodec/version_major.h | 1 - libavcodec/videotoolbox.c | 31 --------------------- libavcodec/videotoolbox.h | 56 -------------------------------------- 3 files changed, 88 deletions(-) diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 88cc975713..79c6f6dd05 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_VT_HWACCEL_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_AVCTX_FRAME_NUMBER (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_SLICE_OFFSET (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_SUBFRAMES (LIBAVCODEC_VERSION_MAJOR < 61) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index f2269766a2..f4da80640d 100644 --- a/libavcodec/videotoolbox.c +++ b/libavcodec/videotoolbox.c @@ -1398,35 +1398,4 @@ const FFHWAccel ff_prores_videotoolbox_hwaccel = { .priv_data_size = sizeof(VTContext), }; - - -#if FF_API_VT_HWACCEL_CONTEXT -AVVideotoolboxContext *av_videotoolbox_alloc_context(void) -{ - return videotoolbox_alloc_context_with_pix_fmt(AV_PIX_FMT_NONE, false); -} - -int av_videotoolbox_default_init(AVCodecContext *avctx) -{ - return av_videotoolbox_default_init2(avctx, NULL); -} - -int av_videotoolbox_default_init2(AVCodecContext *avctx, AVVideotoolboxContext *vtctx) -{ - enum AVPixelFormat pix_fmt = videotoolbox_best_pixel_format(avctx); - bool full_range = avctx->color_range == AVCOL_RANGE_JPEG; - avctx->hwaccel_context = vtctx ?: videotoolbox_alloc_context_with_pix_fmt(pix_fmt, full_range); - if (!avctx->hwaccel_context) - return AVERROR(ENOMEM); - return 0; -} - -void av_videotoolbox_default_free(AVCodecContext *avctx) -{ - - videotoolbox_stop(avctx); - av_freep(&avctx->hwaccel_context); -} -#endif /* FF_API_VT_HWACCEL_CONTEXT */ - #endif /* CONFIG_VIDEOTOOLBOX */ diff --git a/libavcodec/videotoolbox.h b/libavcodec/videotoolbox.h index 11b5315f7d..d68d76e400 100644 --- a/libavcodec/videotoolbox.h +++ b/libavcodec/videotoolbox.h @@ -78,62 +78,6 @@ typedef struct AVVideotoolboxContext { int cm_codec_type; } AVVideotoolboxContext; -#if FF_API_VT_HWACCEL_CONTEXT - -/** - * Allocate and initialize a Videotoolbox context. - * - * This function should be called from the get_format() callback when the caller - * selects the AV_PIX_FMT_VIDETOOLBOX format. The caller must then create - * the decoder object (using the output callback provided by libavcodec) that - * will be used for Videotoolbox-accelerated decoding. - * - * When decoding with Videotoolbox is finished, the caller must destroy the decoder - * object and free the Videotoolbox context using av_free(). - * - * @return the newly allocated context or NULL on failure - * @deprecated Use AVCodecContext.hw_frames_ctx or hw_device_ctx instead. - */ -attribute_deprecated -AVVideotoolboxContext *av_videotoolbox_alloc_context(void); - -/** - * This is a convenience function that creates and sets up the Videotoolbox context using - * an internal implementation. - * - * @param avctx the corresponding codec context - * - * @return >= 0 on success, a negative AVERROR code on failure - * @deprecated Use AVCodecContext.hw_frames_ctx or hw_device_ctx instead. - */ -attribute_deprecated -int av_videotoolbox_default_init(AVCodecContext *avctx); - -/** - * This is a convenience function that creates and sets up the Videotoolbox context using - * an internal implementation. - * - * @param avctx the corresponding codec context - * @param vtctx the Videotoolbox context to use - * - * @return >= 0 on success, a negative AVERROR code on failure - * @deprecated Use AVCodecContext.hw_frames_ctx or hw_device_ctx instead. - */ -attribute_deprecated -int av_videotoolbox_default_init2(AVCodecContext *avctx, AVVideotoolboxContext *vtctx); - -/** - * This function must be called to free the Videotoolbox context initialized with - * av_videotoolbox_default_init(). - * - * @param avctx the corresponding codec context - * @deprecated Use AVCodecContext.hw_frames_ctx or hw_device_ctx instead. - */ -attribute_deprecated -void av_videotoolbox_default_free(AVCodecContext *avctx); - -#endif /* FF_API_VT_HWACCEL_CONTEXT */ - /** * @} */ From patchwork Thu Jan 25 13:43:30 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45820 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81425pzf; Thu, 25 Jan 2024 05:46:23 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCVSSSiIe6hLmQcT9d3Uh4cfIE5/yAHQka+5APXfMhhWc35e1Qi3x7YzcHIkqgN5pkITmNtpwX0TTTpCJOS2aW11AUEFFrrtOfCsLA== X-Google-Smtp-Source: AGHT+IF8as60BTr6cXBjmV143lA/ePN8e88Zvt9GTHr4eCRnkxzC/SBR6nTbfDYAB/zejgSgxdg8 X-Received: by 2002:a17:906:3712:b0:a30:91c6:424a with SMTP id d18-20020a170906371200b00a3091c6424amr1193526ejc.5.1706190383453; Thu, 25 Jan 2024 05:46:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190383; cv=none; d=google.com; s=arc-20160816; b=gSqumwlqC5xMAmq3DD3BsZwgOQq2m9qYwIylnhtJUIH90aNurwIFurzNYiYN8mzhjB v2Q5h3ZcgW5ABMMEvmrqY3C0f56jIuQ5UALBUox76wPhGJzx2mf63MMif2GJX4U8fq+v dl+8VZ2be37paZ/cb7Aiq6xBUFb6XkdwhaUsXChbz6osLrNydkReb2JoBPQ3qH+C31SA nm4yJEb/ET4JIkH6orvDh9GjOaNBEjoX2C/xlo0LDY2w/5mj+Vcsezj/cocJCyftRDqL jPgFHj36Uw9OWnqE3/ZYXG+rubV9OqiGJzs3W3SX44toiVnDwQGUaBNeoJUjTFRhQc9Q W+UQ== 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=CIsfEHuJBzG5e9uHGgfIN9o5TnylMY9a4J3dF5nCqyA=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=Kky1fuh+LGzLCUYCtr+4jZtetfnopeIYnqSER/InZYCkQaDWxj6zzetxrdE1OELq4v e2LjDlJno13Z5GIcIBpUANcHpt/DwsSQw+r9zVQ1eeOvbyv/aSUN0ln4w7zJV7dlK1Gl 76Q86ENqTz0QjImgfoU5XvFyyU5kzsKOJHOYaa3nTeoZtdEPOyD2CB63qibcqiDf8gsd rIfGtzLoGcQD6nT6orkgyKSYOpQ0gFCqe0o9TSssdgpj2hCOWbNM7mIObX8IwC9t1y6n oyZhmVGWd1iYbyWUf+mIND2BPU2ZIQu9qlo2WWCiWqvZ72ZzVY6QCJBboNnOBKie/RNx 4qmg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=gzBdw5w9; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id lg26-20020a170906f89a00b00a313e699460si940392ejb.222.2024.01.25.05.46.22; Thu, 25 Jan 2024 05:46: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=@gmail.com header.s=20230601 header.b=gzBdw5w9; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 57FE768D173; Thu, 25 Jan 2024 15:44:55 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4DB7D68D129 for ; Thu, 25 Jan 2024 15:44:42 +0200 (EET) Received: by mail-pl1-f169.google.com with SMTP id d9443c01a7336-1d7859efea5so10838615ad.0 for ; Thu, 25 Jan 2024 05:44:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190280; x=1706795080; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=FbVPiuAH6400B0VKYlSPomW1GmprLnQw9Z60SM0WAS4=; b=gzBdw5w9dSxRzOYK75oP8ppv9HdaN8FxDebAGa7ocB4P9mNsfLG7sqk8NlX9c02UsW 8oE1i1cyNw+ahb0gxtl6PkNWfLKxjy80iFIDArjtf/viGdE1xEYaUPt6mM7Io+Aovo7d +kZAC/I8JIwCjW4AEYcIMNxCsbAZrlrl1AC2+GIj3ch6+qxvEyLGdda84ME0baKr6eDm fdODi9csn4mMNB6IXtlR+ABQwn7hQ7jsbeMWoShk7hXkWF5afTGuL/gWUTO6X3y1rFPX Be88SUDeWfuSdAsyAo5CGxgx7WCcDB3lj7kjxETTaJ7yFLN+EjdiZR1ksw2w07sqXMfU 9BmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190280; x=1706795080; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FbVPiuAH6400B0VKYlSPomW1GmprLnQw9Z60SM0WAS4=; b=mnzYm3HybRY8trAf/+3wvwuKUqj6UEA8d5PQPlqgz5um6ZwxE2XZ6FXfuBZ6iFLV3V azZcwa3+IqmBsnRB7PaEQbNcI98tBUmZJbramsKR7JBUrBNJxop0UXSsdfh+/SSjBKd/ Pviy/B7Z86VOakDErgtxeupAbMzOoCuZhGc4VbLEr6uWm8JgTEo3MVz0WFmgfFdF5wHw +v+4OyZtGN780IyVvCiLZRn6NZ9SI/ZgJhviNP/MWfQm7wryaaiupTK/msAavq+KOlVF zmW4jLB1MMvim4eoSnE5pyDfZCFCU+gli2gxmT85fqRhkHxu7QQSwFX8050aQ2mL/mMg T2Qg== X-Gm-Message-State: AOJu0YzNeCebn4cMs4UAAESH/hI4iCsAXuXQIOT2rgqSxEbUDG1R0NiB 8ARgMSP/ZeXhEMlAPqd/ioUDPFnR1FXNj005P1mAQ+UGXuQAioAEGseMfOrL X-Received: by 2002:a17:902:e812:b0:1d7:7c0c:45be with SMTP id u18-20020a170902e81200b001d77c0c45bemr864843plg.32.1706190279748; Thu, 25 Jan 2024 05:44:39 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:39 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:30 -0300 Message-ID: <20240125134425.374-8-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 07/24] avcodec: remove deprecated FF_API_AVCTX_FRAME_NUMBER 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: yzVU8IEIhb5l Signed-off-by: James Almer --- libavcodec/avcodec.c | 5 ----- libavcodec/avcodec.h | 15 --------------- libavcodec/decode.c | 10 ---------- libavcodec/encode.c | 10 ---------- libavcodec/pthread_frame.c | 5 ----- libavcodec/version_major.h | 1 - 6 files changed, 46 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index a6c8629f6c..692d4c35b4 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -282,11 +282,6 @@ FF_ENABLE_DEPRECATION_WARNINGS } avctx->frame_num = 0; -#if FF_API_AVCTX_FRAME_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - avctx->frame_number = avctx->frame_num; -FF_ENABLE_DEPRECATION_WARNINGS -#endif avctx->codec_descriptor = avcodec_descriptor_get(avctx->codec_id); if ((avctx->codec->capabilities & AV_CODEC_CAP_EXPERIMENTAL) && diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 2dd9c5c82b..3c2b0159a9 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1091,21 +1091,6 @@ typedef struct AVCodecContext { */ int frame_size; -#if FF_API_AVCTX_FRAME_NUMBER - /** - * Frame counter, set by libavcodec. - * - * - decoding: total number of frames returned from the decoder so far. - * - encoding: total number of frames passed to the encoder so far. - * - * @note the counter is not incremented if encoding/decoding resulted in - * an error. - * @deprecated use frame_num instead - */ - attribute_deprecated - int frame_number; -#endif - /** * number of bytes per packet if constant and known or 0 * Used by some WAV based audio codecs. diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 2cfb3fcf97..4cd37807db 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -820,11 +820,6 @@ int ff_decode_receive_frame(AVCodecContext *avctx, AVFrame *frame) } avctx->frame_num++; -#if FF_API_AVCTX_FRAME_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - avctx->frame_number = avctx->frame_num; -FF_ENABLE_DEPRECATION_WARNINGS -#endif #if FF_API_DROPCHANGED if (avctx->flags & AV_CODEC_FLAG_DROPCHANGED) { @@ -1032,11 +1027,6 @@ int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, if (*got_sub_ptr) avctx->frame_num++; -#if FF_API_AVCTX_FRAME_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - avctx->frame_number = avctx->frame_num; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } return ret; diff --git a/libavcodec/encode.c b/libavcodec/encode.c index a436be2657..6b0a16fc0b 100644 --- a/libavcodec/encode.c +++ b/libavcodec/encode.c @@ -198,11 +198,6 @@ int avcodec_encode_subtitle(AVCodecContext *avctx, uint8_t *buf, int buf_size, ret = ffcodec(avctx->codec)->cb.encode_sub(avctx, buf, buf_size, sub); avctx->frame_num++; -#if FF_API_AVCTX_FRAME_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - avctx->frame_number = avctx->frame_num; -FF_ENABLE_DEPRECATION_WARNINGS -#endif return ret; } @@ -544,11 +539,6 @@ int attribute_align_arg avcodec_send_frame(AVCodecContext *avctx, const AVFrame } avctx->frame_num++; -#if FF_API_AVCTX_FRAME_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - avctx->frame_number = avctx->frame_num; -FF_ENABLE_DEPRECATION_WARNINGS -#endif return 0; } diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c index 71e99a5728..ec6ae8a7fe 100644 --- a/libavcodec/pthread_frame.c +++ b/libavcodec/pthread_frame.c @@ -418,11 +418,6 @@ static int update_context_from_user(AVCodecContext *dst, const AVCodecContext *s dst->skip_frame = src->skip_frame; dst->frame_num = src->frame_num; -#if FF_API_AVCTX_FRAME_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - dst->frame_number = src->frame_number; -FF_ENABLE_DEPRECATION_WARNINGS -#endif #if FF_API_REORDERED_OPAQUE FF_DISABLE_DEPRECATION_WARNINGS dst->reordered_opaque = src->reordered_opaque; diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 79c6f6dd05..7e8f5bace3 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_AVCTX_FRAME_NUMBER (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_SLICE_OFFSET (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_SUBFRAMES (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_TICKS_PER_FRAME (LIBAVCODEC_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:31 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45815 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp80966pzf; Thu, 25 Jan 2024 05:45:38 -0800 (PST) X-Google-Smtp-Source: AGHT+IF4FY7Nah0jJ/ozNjF9jgrwr9kauCqoVLVFVjIIuRVv72oYrIUThEgxGWm521+TlkrqHaRG X-Received: by 2002:a17:907:1384:b0:a30:f3be:d8fd with SMTP id vs4-20020a170907138400b00a30f3bed8fdmr431227ejb.72.1706190338209; Thu, 25 Jan 2024 05:45:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190338; cv=none; d=google.com; s=arc-20160816; b=xfKkKWnAkkzvWJVY/b9+00frdNbbBJ3U64VNfssBiRV5kXlOGKgjQTVlBdrywB6Wy9 g40ZXA69WYcz9SNt1NktoK7bz6J+yM4eORcIsGIFu6jKW/PXRKifcoTjuzulzpw3nIlw WAQ4L0J1pFgJsvD/ea34fWfkYojcxqeAXZSytTS7sELe6N9dYpb0UKN1Tc9QD1lKjru0 1944rmoFvl2L9DJosnWc7eKZZdhBPLRoXSdXjnrsCZTMLaYU4wmWnLrPaE3vfbOWprUk 8GKCXD9XJ9knybrcM1IO9dMXyEQXMRW7Dkl1QguWALcj1UbSU/79QAbeZ/VzbhxsesM/ U7rg== 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=uh9bKTp3jEv/L2y0YbNNW+wbD62FMdNN1NbNdGw7nbM=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=Yp5J7GzwGT85rTqiih+MA1d1nComYKCuvieD39WTvy+y+Zcd1UoR7DcWTolEKgqcc8 UMk7DvBy2BvdkX8RAkO/O4VlPVTXNoU15zElR34+05M7n6pzFRmTmB1eRCS9inB1ae3X 3Gf2t2K5+b90GHyo06jjA8aE2qQMdseBlwgrEVFdiVO/eRfdEYcAdTlm0F9dQGDaoze2 j+uA55Y9sErW/mkAaDSUeGfRwF77FyDAWm2aqZltc6FFfpF9C7bp47UjxpLydbEM+SrY YIUvifQhulVvF/0YMFVIjt+oD4gE0mvmYHg0pFXPvc5zbX++Vhrfj9FsapF0ScLxkncS tBWg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=C+RvdHFf; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id u10-20020a170906c40a00b00a338fffc21fsi107167ejz.670.2024.01.25.05.45.37; Thu, 25 Jan 2024 05:45:38 -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=@gmail.com header.s=20230601 header.b=C+RvdHFf; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6F1BF68D127; Thu, 25 Jan 2024 15:44:48 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A871B68D0EB for ; Thu, 25 Jan 2024 15:44:43 +0200 (EET) Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-1d71207524dso29236225ad.1 for ; Thu, 25 Jan 2024 05:44:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190281; x=1706795081; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=Tesc4A6a7D4jvooQ5/VKUuZypmB+q076XfPoBdjyU6Q=; b=C+RvdHFfa/08kcsSpIT6Kb5TIgCOQZ261qggvBo80OVbQAWyJXdoRGhMgkJEdWcIBs vT7DX7hF1nL8VogPszPG3HfwneDiAZQiO+mvtQJgXOoxOUWr4EkdnHmZ54yMcKlDO0QI ud8bAi4Sk6xm1kh6lXZivrFPAEaYCZJrFDdY/HFtsRpv3ITulwgS18GYPmrCtuWFPO2z P070Pc3M1kVFYq4feKpS8cfrs3bOG5sbL7zChlY1N4r2BJ58KGbz+hew0Ku8jpIF5JEj W8zN6CzMNcygtSGEv4fF3XGX6aj+tnUynHOgp5/FvotcT+TMewflNeJIll+GIYCC+MEb sBsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190281; x=1706795081; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Tesc4A6a7D4jvooQ5/VKUuZypmB+q076XfPoBdjyU6Q=; b=ourcIHjvxgqn9mHjY6ZBPzSb82bL/2a04Dy5DxbW7TnmolGm9qxMGi7dGzN260tt+f mTr2c7oE6UGTPQFbOiyzysxdkX0uaNRAKhnuzGE/btKSUoEcXoFU3prVmhRns2i7PVT0 4Pu6gPhbykJM1jkwrNzi+QRrU23mpTDD4JQ4qmfD4zQdy3g4W4d6CuZkYflsXyT2GW0w r+KAG7TLargZf1G3cmAhj49ecDtilAC8SqDhA88X6qaSoj42OrNsrkv4awqiEscSpJNT AcquzXuib5ev2WB/coIn6cti/3FHpxuXto6NZ81mUQMgeAO+piFnH7P1mLO5m3B9d2nv 4jFw== X-Gm-Message-State: AOJu0YzLlfqHgi/YIsIKscydINiDPPjExaItDmqQlIYki/5CqtEvmgMK oFKLg8YOt/hFKcWxq3WCJh6yernxr65OR+Rb70B95eG7v9L22GAHDEc9rtT0 X-Received: by 2002:a17:902:e9c4:b0:1d7:923:2733 with SMTP id 4-20020a170902e9c400b001d709232733mr907566plk.32.1706190281076; Thu, 25 Jan 2024 05:44:41 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.40 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:40 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:31 -0300 Message-ID: <20240125134425.374-9-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 08/24] avcodec: remove deprecated FF_CODEC_CRYSTAL_HD 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: McsenBYbhVde Signed-off-by: James Almer --- configure | 13 - libavcodec/Makefile | 1 - libavcodec/allcodecs.c | 6 - libavcodec/avcodec.h | 18 - libavcodec/crystalhd.c | 826 ------------------------------------- libavcodec/options_table.h | 3 - libavcodec/version_major.h | 4 - 7 files changed, 871 deletions(-) delete mode 100644 libavcodec/crystalhd.c diff --git a/configure b/configure index 21663000f8..5a0d20a6cf 100755 --- a/configure +++ b/configure @@ -1926,7 +1926,6 @@ EXTERNAL_LIBRARY_LIST=" HWACCEL_AUTODETECT_LIBRARY_LIST=" amf audiotoolbox - crystalhd cuda cuda_llvm cuvid @@ -3056,7 +3055,6 @@ zmbv_decoder_select="inflate_wrapper" zmbv_encoder_select="deflate_wrapper" # hardware accelerators -crystalhd_deps="libcrystalhd_libcrystalhd_if_h" cuda_deps="ffnvcodec" cuvid_deps="ffnvcodec" d3d11va_deps="dxva_h ID3D11VideoDecoder ID3D11VideoContext" @@ -3249,7 +3247,6 @@ av1_nvenc_encoder_select="atsc_a53" h263_v4l2m2m_decoder_deps="v4l2_m2m h263_v4l2_m2m" h263_v4l2m2m_encoder_deps="v4l2_m2m h263_v4l2_m2m" h264_amf_encoder_deps="amf" -h264_crystalhd_decoder_select="crystalhd h264_mp4toannexb_bsf h264_parser" h264_cuvid_decoder_deps="cuvid" h264_cuvid_decoder_select="h264_mp4toannexb_bsf" h264_mediacodec_decoder_deps="mediacodec" @@ -3297,7 +3294,6 @@ mjpeg_vaapi_encoder_select="cbs_jpeg jpegtables vaapi_encode" mp3_mf_encoder_deps="mediafoundation" mpeg1_cuvid_decoder_deps="cuvid" mpeg1_v4l2m2m_decoder_deps="v4l2_m2m mpeg1_v4l2_m2m" -mpeg2_crystalhd_decoder_select="crystalhd" mpeg2_cuvid_decoder_deps="cuvid" mpeg2_mmal_decoder_deps="mmal" mpeg2_mediacodec_decoder_deps="mediacodec" @@ -3305,7 +3301,6 @@ mpeg2_qsv_decoder_select="qsvdec" mpeg2_qsv_encoder_select="qsvenc" mpeg2_vaapi_encoder_select="cbs_mpeg2 vaapi_encode" mpeg2_v4l2m2m_decoder_deps="v4l2_m2m mpeg2_v4l2_m2m" -mpeg4_crystalhd_decoder_select="crystalhd" mpeg4_cuvid_decoder_deps="cuvid" mpeg4_mediacodec_decoder_deps="mediacodec" mpeg4_mediacodec_encoder_deps="mediacodec" @@ -3313,8 +3308,6 @@ mpeg4_mmal_decoder_deps="mmal" mpeg4_omx_encoder_deps="omx" mpeg4_v4l2m2m_decoder_deps="v4l2_m2m mpeg4_v4l2_m2m" mpeg4_v4l2m2m_encoder_deps="v4l2_m2m mpeg4_v4l2_m2m" -msmpeg4_crystalhd_decoder_select="crystalhd" -vc1_crystalhd_decoder_select="crystalhd" vc1_cuvid_decoder_deps="cuvid" vc1_mmal_decoder_deps="mmal" vc1_qsv_decoder_select="qsvdec" @@ -3338,7 +3331,6 @@ vp9_vaapi_encoder_select="vaapi_encode" vp9_qsv_encoder_deps="libmfx MFX_CODEC_VP9" vp9_qsv_encoder_select="qsvenc" vp9_v4l2m2m_decoder_deps="v4l2_m2m vp9_v4l2_m2m" -wmv3_crystalhd_decoder_select="crystalhd" av1_qsv_decoder_select="qsvdec" av1_qsv_encoder_select="qsvenc" av1_qsv_encoder_deps="libvpl" @@ -6519,7 +6511,6 @@ enabled libdrm && check_headers linux/dma-buf.h check_headers linux/perf_event.h -check_headers libcrystalhd/libcrystalhd_if.h check_headers malloc.h check_headers mftransform.h check_headers net/udplite.h @@ -7210,10 +7201,6 @@ enabled vdpau && enabled vdpau && check_lib vdpau_x11 "vdpau/vdpau.h vdpau/vdpau_x11.h" vdp_device_create_x11 -lvdpau -lX11 -enabled crystalhd && check_lib crystalhd "stdint.h libcrystalhd/libcrystalhd_if.h" DtsCrystalHDVersion -lcrystalhd && \ - warn "CrystalHD support is deprecated and will be removed, please contact the developers if you are interested" \ - "in maintaining it." - if enabled vulkan; then check_pkg_config_header_only vulkan "vulkan >= 1.3.255" "vulkan/vulkan.h" "defined VK_VERSION_1_3" || check_cpp_condition vulkan "vulkan/vulkan.h" "defined(VK_VERSION_1_4) || (defined(VK_VERSION_1_3) && VK_HEADER_VERSION >= 255)" diff --git a/libavcodec/Makefile b/libavcodec/Makefile index 96361ac794..5f63151655 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -84,7 +84,6 @@ OBJS-$(CONFIG_CBS_JPEG) += cbs_jpeg.o OBJS-$(CONFIG_CBS_MPEG2) += cbs_mpeg2.o OBJS-$(CONFIG_CBS_VP8) += cbs_vp8.o vp8data.o OBJS-$(CONFIG_CBS_VP9) += cbs_vp9.o -OBJS-$(CONFIG_CRYSTALHD) += crystalhd.o OBJS-$(CONFIG_DEFLATE_WRAPPER) += zlib_wrapper.o OBJS-$(CONFIG_DOVI_RPU) += dovi_rpu.o OBJS-$(CONFIG_ERROR_RESILIENCE) += error_resilience.o diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c index 45d5998943..2386b450a6 100644 --- a/libavcodec/allcodecs.c +++ b/libavcodec/allcodecs.c @@ -148,7 +148,6 @@ extern const FFCodec ff_h263p_encoder; extern const FFCodec ff_h263p_decoder; extern const FFCodec ff_h263_v4l2m2m_decoder; extern const FFCodec ff_h264_decoder; -extern const FFCodec ff_h264_crystalhd_decoder; extern const FFCodec ff_h264_v4l2m2m_decoder; extern const FFCodec ff_h264_mediacodec_decoder; extern const FFCodec ff_h264_mediacodec_encoder; @@ -207,13 +206,11 @@ extern const FFCodec ff_mpeg2video_encoder; extern const FFCodec ff_mpeg2video_decoder; extern const FFCodec ff_mpeg4_encoder; extern const FFCodec ff_mpeg4_decoder; -extern const FFCodec ff_mpeg4_crystalhd_decoder; extern const FFCodec ff_mpeg4_v4l2m2m_decoder; extern const FFCodec ff_mpeg4_mmal_decoder; extern const FFCodec ff_mpegvideo_decoder; extern const FFCodec ff_mpeg1_v4l2m2m_decoder; extern const FFCodec ff_mpeg2_mmal_decoder; -extern const FFCodec ff_mpeg2_crystalhd_decoder; extern const FFCodec ff_mpeg2_v4l2m2m_decoder; extern const FFCodec ff_mpeg2_qsv_decoder; extern const FFCodec ff_mpeg2_mediacodec_decoder; @@ -224,7 +221,6 @@ extern const FFCodec ff_msmpeg4v2_encoder; extern const FFCodec ff_msmpeg4v2_decoder; extern const FFCodec ff_msmpeg4v3_encoder; extern const FFCodec ff_msmpeg4v3_decoder; -extern const FFCodec ff_msmpeg4_crystalhd_decoder; extern const FFCodec ff_msp2_decoder; extern const FFCodec ff_msrle_encoder; extern const FFCodec ff_msrle_decoder; @@ -361,7 +357,6 @@ extern const FFCodec ff_vbn_encoder; extern const FFCodec ff_vbn_decoder; extern const FFCodec ff_vble_decoder; extern const FFCodec ff_vc1_decoder; -extern const FFCodec ff_vc1_crystalhd_decoder; extern const FFCodec ff_vc1image_decoder; extern const FFCodec ff_vc1_mmal_decoder; extern const FFCodec ff_vc1_qsv_decoder; @@ -398,7 +393,6 @@ extern const FFCodec ff_wmv1_decoder; extern const FFCodec ff_wmv2_encoder; extern const FFCodec ff_wmv2_decoder; extern const FFCodec ff_wmv3_decoder; -extern const FFCodec ff_wmv3_crystalhd_decoder; extern const FFCodec ff_wmv3image_decoder; extern const FFCodec ff_wnv1_decoder; extern const FFCodec ff_xan_wc3_decoder; diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 3c2b0159a9..2306c0f7bf 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -794,24 +794,6 @@ typedef struct AVCodecContext { */ float dark_masking; -#if FF_API_SLICE_OFFSET - /** - * slice count - * - encoding: Set by libavcodec. - * - decoding: Set by user (or 0). - */ - attribute_deprecated - int slice_count; - - /** - * slice offsets in the frame in bytes - * - encoding: Set/allocated by libavcodec. - * - decoding: Set/allocated by user (or NULL). - */ - attribute_deprecated - int *slice_offset; -#endif - /** * sample aspect ratio (0 if unknown) * That is the width of a pixel divided by the height of the pixel. diff --git a/libavcodec/crystalhd.c b/libavcodec/crystalhd.c deleted file mode 100644 index 86f6cfa6c1..0000000000 --- a/libavcodec/crystalhd.c +++ /dev/null @@ -1,826 +0,0 @@ -/* - * - CrystalHD decoder module - - * - * Copyright(C) 2010,2011 Philip Langdale - * - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - * - Principles of Operation - - * - * The CrystalHD decoder operates at the bitstream level - which is an even - * higher level than the decoding hardware you typically see in modern GPUs. - * This means it has a very simple interface, in principle. You feed demuxed - * packets in one end and get decoded picture (fields/frames) out the other. - * - * Of course, nothing is ever that simple. Due, at the very least, to b-frame - * dependencies in the supported formats, the hardware has a delay between - * when a packet goes in, and when a picture comes out. Furthermore, this delay - * is not just a function of time, but also one of the dependency on additional - * frames being fed into the decoder to satisfy the b-frame dependencies. - * - * As such, the hardware can only be used effectively with a decode API that - * doesn't assume a 1:1 relationship between input packets and output frames. - * The new avcodec decode API is such an API (an m:n API) while the old one is - * 1:1. Consequently, we no longer support the old API, which allows us to avoid - * the vicious hacks that are required to approximate 1:1 operation. - */ - -/***************************************************************************** - * Includes - ****************************************************************************/ - -#include "config_components.h" - -#define _XOPEN_SOURCE 600 -#include -#include -#include - -#include -#include -#include - -#include "avcodec.h" -#include "codec_internal.h" -#include "decode.h" -#include "internal.h" -#include "libavutil/imgutils.h" -#include "libavutil/intreadwrite.h" -#include "libavutil/opt.h" - -#if HAVE_UNISTD_H -#include -#endif - -/** Timeout parameter passed to DtsProcOutput() in us */ -#define OUTPUT_PROC_TIMEOUT 50 -/** Step between fake timestamps passed to hardware in units of 100ns */ -#define TIMESTAMP_UNIT 100000 - - -/***************************************************************************** - * Module private data - ****************************************************************************/ - -typedef enum { - RET_ERROR = -1, - RET_OK = 0, - RET_COPY_AGAIN = 1, -} CopyRet; - -typedef struct OpaqueList { - struct OpaqueList *next; - uint64_t fake_timestamp; - uint64_t reordered_opaque; -} OpaqueList; - -typedef struct { - AVClass *av_class; - AVCodecContext *avctx; - /* This packet coincides with AVCodecInternal.in_pkt - * and is not owned by us. */ - AVPacket *pkt; - HANDLE dev; - - uint8_t is_70012; - uint8_t need_second_field; - uint8_t draining; - - OpaqueList *head; - OpaqueList *tail; - - /* Options */ - uint32_t sWidth; -} CHDContext; - -static const AVOption options[] = { - { "crystalhd_downscale_width", - "Turn on downscaling to the specified width", - offsetof(CHDContext, sWidth), - AV_OPT_TYPE_INT, {.i64 = 0}, 0, UINT32_MAX, - AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_DECODING_PARAM, }, - { NULL, }, -}; - - -/***************************************************************************** - * Helper functions - ****************************************************************************/ - -static inline BC_MEDIA_SUBTYPE id2subtype(CHDContext *priv, enum AVCodecID id) -{ - switch (id) { - case AV_CODEC_ID_MPEG4: - return BC_MSUBTYPE_DIVX; - case AV_CODEC_ID_MSMPEG4V3: - return BC_MSUBTYPE_DIVX311; - case AV_CODEC_ID_MPEG2VIDEO: - return BC_MSUBTYPE_MPEG2VIDEO; - case AV_CODEC_ID_VC1: - return BC_MSUBTYPE_VC1; - case AV_CODEC_ID_WMV3: - return BC_MSUBTYPE_WMV3; - case AV_CODEC_ID_H264: - return BC_MSUBTYPE_H264; - default: - return BC_MSUBTYPE_INVALID; - } -} - -static inline void print_frame_info(CHDContext *priv, BC_DTS_PROC_OUT *output) -{ - av_log(priv->avctx, AV_LOG_TRACE, "\tYBuffSz: %u\n", output->YbuffSz); - av_log(priv->avctx, AV_LOG_TRACE, "\tYBuffDoneSz: %u\n", - output->YBuffDoneSz); - av_log(priv->avctx, AV_LOG_TRACE, "\tUVBuffDoneSz: %u\n", - output->UVBuffDoneSz); - av_log(priv->avctx, AV_LOG_TRACE, "\tTimestamp: %"PRIu64"\n", - output->PicInfo.timeStamp); - av_log(priv->avctx, AV_LOG_TRACE, "\tPicture Number: %u\n", - output->PicInfo.picture_number); - av_log(priv->avctx, AV_LOG_TRACE, "\tWidth: %u\n", - output->PicInfo.width); - av_log(priv->avctx, AV_LOG_TRACE, "\tHeight: %u\n", - output->PicInfo.height); - av_log(priv->avctx, AV_LOG_TRACE, "\tChroma: 0x%03x\n", - output->PicInfo.chroma_format); - av_log(priv->avctx, AV_LOG_TRACE, "\tPulldown: %u\n", - output->PicInfo.pulldown); - av_log(priv->avctx, AV_LOG_TRACE, "\tFlags: 0x%08x\n", - output->PicInfo.flags); - av_log(priv->avctx, AV_LOG_TRACE, "\tFrame Rate/Res: %u\n", - output->PicInfo.frame_rate); - av_log(priv->avctx, AV_LOG_TRACE, "\tAspect Ratio: %u\n", - output->PicInfo.aspect_ratio); - av_log(priv->avctx, AV_LOG_TRACE, "\tColor Primaries: %u\n", - output->PicInfo.colour_primaries); - av_log(priv->avctx, AV_LOG_TRACE, "\tMetaData: %u\n", - output->PicInfo.picture_meta_payload); - av_log(priv->avctx, AV_LOG_TRACE, "\tSession Number: %u\n", - output->PicInfo.sess_num); - av_log(priv->avctx, AV_LOG_TRACE, "\tycom: %u\n", - output->PicInfo.ycom); - av_log(priv->avctx, AV_LOG_TRACE, "\tCustom Aspect: %u\n", - output->PicInfo.custom_aspect_ratio_width_height); - av_log(priv->avctx, AV_LOG_TRACE, "\tFrames to Drop: %u\n", - output->PicInfo.n_drop); - av_log(priv->avctx, AV_LOG_TRACE, "\tH264 Valid Fields: 0x%08x\n", - output->PicInfo.other.h264.valid); -} - - -/***************************************************************************** - * OpaqueList functions - ****************************************************************************/ - -static uint64_t opaque_list_push(CHDContext *priv, uint64_t reordered_opaque) -{ - OpaqueList *newNode = av_mallocz(sizeof (OpaqueList)); - if (!newNode) { - av_log(priv->avctx, AV_LOG_ERROR, - "Unable to allocate new node in OpaqueList.\n"); - return 0; - } - if (!priv->head) { - newNode->fake_timestamp = TIMESTAMP_UNIT; - priv->head = newNode; - } else { - newNode->fake_timestamp = priv->tail->fake_timestamp + TIMESTAMP_UNIT; - priv->tail->next = newNode; - } - priv->tail = newNode; - newNode->reordered_opaque = reordered_opaque; - - return newNode->fake_timestamp; -} - -/* - * The OpaqueList is built in decode order, while elements will be removed - * in presentation order. If frames are reordered, this means we must be - * able to remove elements that are not the first element. - * - * Returned node must be freed by caller. - */ -static OpaqueList *opaque_list_pop(CHDContext *priv, uint64_t fake_timestamp) -{ - OpaqueList *node = priv->head; - - if (!priv->head) { - av_log(priv->avctx, AV_LOG_ERROR, - "CrystalHD: Attempted to query non-existent timestamps.\n"); - return NULL; - } - - /* - * The first element is special-cased because we have to manipulate - * the head pointer rather than the previous element in the list. - */ - if (priv->head->fake_timestamp == fake_timestamp) { - priv->head = node->next; - - if (!priv->head->next) - priv->tail = priv->head; - - node->next = NULL; - return node; - } - - /* - * The list is processed at arm's length so that we have the - * previous element available to rewrite its next pointer. - */ - while (node->next) { - OpaqueList *current = node->next; - if (current->fake_timestamp == fake_timestamp) { - node->next = current->next; - - if (!node->next) - priv->tail = node; - - current->next = NULL; - return current; - } else { - node = current; - } - } - - av_log(priv->avctx, AV_LOG_VERBOSE, - "CrystalHD: Couldn't match fake_timestamp.\n"); - return NULL; -} - - -/***************************************************************************** - * Video decoder API function definitions - ****************************************************************************/ - -static void flush(AVCodecContext *avctx) -{ - CHDContext *priv = avctx->priv_data; - - priv->need_second_field = 0; - priv->draining = 0; - - /* Flush mode 4 flushes all software and hardware buffers. */ - DtsFlushInput(priv->dev, 4); -} - - -static av_cold int uninit(AVCodecContext *avctx) -{ - CHDContext *priv = avctx->priv_data; - HANDLE device; - - device = priv->dev; - DtsStopDecoder(device); - DtsCloseDecoder(device); - DtsDeviceClose(device); - - if (priv->head) { - OpaqueList *node = priv->head; - while (node) { - OpaqueList *next = node->next; - av_free(node); - node = next; - } - } - - return 0; -} - -static av_cold int init(AVCodecContext *avctx) -{ - CHDContext* priv; - BC_STATUS ret; - BC_INFO_CRYSTAL version; - BC_INPUT_FORMAT format = { - .FGTEnable = FALSE, - .Progressive = TRUE, - .OptFlags = 0x80000000 | vdecFrameRate59_94 | 0x40, - .width = avctx->width, - .height = avctx->height, - }; - - BC_MEDIA_SUBTYPE subtype; - - uint32_t mode = DTS_PLAYBACK_MODE | - DTS_LOAD_FILE_PLAY_FW | - DTS_SKIP_TX_CHK_CPB | - DTS_PLAYBACK_DROP_RPT_MODE | - DTS_SINGLE_THREADED_MODE | - DTS_DFLT_RESOLUTION(vdecRESOLUTION_1080p23_976); - - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD Init for %s\n", - avctx->codec->name); - - av_log(avctx, AV_LOG_WARNING, "CrystalHD support is deprecated and will " - "be removed. Please contact the developers if you are interested in " - "maintaining it.\n"); - - avctx->pix_fmt = AV_PIX_FMT_YUYV422; - - /* Initialize the library */ - priv = avctx->priv_data; - priv->avctx = avctx; - priv->pkt = avctx->internal->in_pkt; - priv->draining = 0; - - subtype = id2subtype(priv, avctx->codec->id); - switch (subtype) { - case BC_MSUBTYPE_H264: - format.startCodeSz = 4; - // Fall-through - case BC_MSUBTYPE_VC1: - case BC_MSUBTYPE_WVC1: - case BC_MSUBTYPE_WMV3: - case BC_MSUBTYPE_WMVA: - case BC_MSUBTYPE_MPEG2VIDEO: - case BC_MSUBTYPE_DIVX: - case BC_MSUBTYPE_DIVX311: - format.pMetaData = avctx->extradata; - format.metaDataSz = avctx->extradata_size; - break; - default: - av_log(avctx, AV_LOG_ERROR, "CrystalHD: Unknown codec name\n"); - return AVERROR(EINVAL); - } - format.mSubtype = subtype; - - if (priv->sWidth) { - format.bEnableScaling = 1; - format.ScalingParams.sWidth = priv->sWidth; - } - - /* Get a decoder instance */ - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD: starting up\n"); - // Initialize the Link and Decoder devices - ret = DtsDeviceOpen(&priv->dev, mode); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD: DtsDeviceOpen failed\n"); - goto fail; - } - - ret = DtsCrystalHDVersion(priv->dev, &version); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_VERBOSE, - "CrystalHD: DtsCrystalHDVersion failed\n"); - goto fail; - } - priv->is_70012 = version.device == 0; - - if (priv->is_70012 && - (subtype == BC_MSUBTYPE_DIVX || subtype == BC_MSUBTYPE_DIVX311)) { - av_log(avctx, AV_LOG_VERBOSE, - "CrystalHD: BCM70012 doesn't support MPEG4-ASP/DivX/Xvid\n"); - goto fail; - } - - ret = DtsSetInputFormat(priv->dev, &format); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, "CrystalHD: SetInputFormat failed\n"); - goto fail; - } - - ret = DtsOpenDecoder(priv->dev, BC_STREAM_TYPE_ES); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, "CrystalHD: DtsOpenDecoder failed\n"); - goto fail; - } - - ret = DtsSetColorSpace(priv->dev, OUTPUT_MODE422_YUY2); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, "CrystalHD: DtsSetColorSpace failed\n"); - goto fail; - } - ret = DtsStartDecoder(priv->dev); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, "CrystalHD: DtsStartDecoder failed\n"); - goto fail; - } - ret = DtsStartCapture(priv->dev); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, "CrystalHD: DtsStartCapture failed\n"); - goto fail; - } - - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD: Init complete.\n"); - - return 0; - - fail: - uninit(avctx); - return -1; -} - - -static inline CopyRet copy_frame(AVCodecContext *avctx, - BC_DTS_PROC_OUT *output, - AVFrame *frame, int *got_frame) -{ - BC_STATUS ret; - BC_DTS_STATUS decoder_status = { 0, }; - uint8_t interlaced; - - CHDContext *priv = avctx->priv_data; - int64_t pkt_pts = AV_NOPTS_VALUE; - - uint8_t bottom_field = (output->PicInfo.flags & VDEC_FLAG_BOTTOMFIELD) == - VDEC_FLAG_BOTTOMFIELD; - uint8_t bottom_first = !!(output->PicInfo.flags & VDEC_FLAG_BOTTOM_FIRST); - - int width = output->PicInfo.width; - int height = output->PicInfo.height; - int bwidth; - uint8_t *src = output->Ybuff; - int sStride; - uint8_t *dst; - int dStride; - - if (output->PicInfo.timeStamp != 0) { - OpaqueList *node = opaque_list_pop(priv, output->PicInfo.timeStamp); - if (node) { - pkt_pts = node->reordered_opaque; - av_free(node); - } else { - /* - * We will encounter a situation where a timestamp cannot be - * popped if a second field is being returned. In this case, - * each field has the same timestamp and the first one will - * cause it to be popped. We'll avoid overwriting the valid - * timestamp below. - */ - } - av_log(avctx, AV_LOG_VERBOSE, "output \"pts\": %"PRIu64"\n", - output->PicInfo.timeStamp); - } - - ret = DtsGetDriverStatus(priv->dev, &decoder_status); - if (ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, - "CrystalHD: GetDriverStatus failed: %u\n", ret); - return RET_ERROR; - } - - interlaced = output->PicInfo.flags & VDEC_FLAG_INTERLACED_SRC; - - av_log(avctx, AV_LOG_VERBOSE, "Interlaced state: %d\n", - interlaced); - - priv->need_second_field = interlaced && !priv->need_second_field; - - if (!frame->data[0]) { - if (ff_get_buffer(avctx, frame, 0) < 0) - return RET_ERROR; - } - - bwidth = av_image_get_linesize(avctx->pix_fmt, width, 0); - if (bwidth < 0) - return RET_ERROR; - - if (priv->is_70012) { - int pStride; - - if (width <= 720) - pStride = 720; - else if (width <= 1280) - pStride = 1280; - else pStride = 1920; - sStride = av_image_get_linesize(avctx->pix_fmt, pStride, 0); - if (sStride < 0) - return RET_ERROR; - } else { - sStride = bwidth; - } - - dStride = frame->linesize[0]; - dst = frame->data[0]; - - av_log(priv->avctx, AV_LOG_VERBOSE, "CrystalHD: Copying out frame\n"); - - /* - * The hardware doesn't return the first sample of a picture. - * Ignoring why it behaves this way, it's better to copy the sample from - * the second line, rather than the next sample across because the chroma - * values should be correct (assuming the decoded video was 4:2:0, which - * it was). - */ - *((uint32_t *)src) = *((uint32_t *)(src + sStride)); - - if (interlaced) { - int dY = 0; - int sY = 0; - - height /= 2; - if (bottom_field) { - av_log(priv->avctx, AV_LOG_VERBOSE, "Interlaced: bottom field\n"); - dY = 1; - } else { - av_log(priv->avctx, AV_LOG_VERBOSE, "Interlaced: top field\n"); - dY = 0; - } - - for (sY = 0; sY < height; dY++, sY++) { - memcpy(&(dst[dY * dStride]), &(src[sY * sStride]), bwidth); - dY++; - } - } else { - av_image_copy_plane(dst, dStride, src, sStride, bwidth, height); - } - - frame->flags |= AV_FRAME_FLAG_INTERLACED * !!interlaced; - if (interlaced) - frame->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST * !bottom_first; - - frame->pts = pkt_pts; - - frame->duration = 0; -#if FF_API_FRAME_PKT -FF_DISABLE_DEPRECATION_WARNINGS - frame->pkt_pos = -1; - frame->pkt_size = -1; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - - if (!priv->need_second_field) { - *got_frame = 1; - } else { - return RET_COPY_AGAIN; - } - - return RET_OK; -} - - -static inline CopyRet receive_frame(AVCodecContext *avctx, - AVFrame *frame, int *got_frame) -{ - BC_STATUS ret; - BC_DTS_PROC_OUT output = { - .PicInfo.width = avctx->width, - .PicInfo.height = avctx->height, - }; - CHDContext *priv = avctx->priv_data; - HANDLE dev = priv->dev; - - *got_frame = 0; - - // Request decoded data from the driver - ret = DtsProcOutputNoCopy(dev, OUTPUT_PROC_TIMEOUT, &output); - if (ret == BC_STS_FMT_CHANGE) { - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD: Initial format change\n"); - avctx->width = output.PicInfo.width; - avctx->height = output.PicInfo.height; - switch ( output.PicInfo.aspect_ratio ) { - case vdecAspectRatioSquare: - avctx->sample_aspect_ratio = (AVRational) { 1, 1}; - break; - case vdecAspectRatio12_11: - avctx->sample_aspect_ratio = (AVRational) { 12, 11}; - break; - case vdecAspectRatio10_11: - avctx->sample_aspect_ratio = (AVRational) { 10, 11}; - break; - case vdecAspectRatio16_11: - avctx->sample_aspect_ratio = (AVRational) { 16, 11}; - break; - case vdecAspectRatio40_33: - avctx->sample_aspect_ratio = (AVRational) { 40, 33}; - break; - case vdecAspectRatio24_11: - avctx->sample_aspect_ratio = (AVRational) { 24, 11}; - break; - case vdecAspectRatio20_11: - avctx->sample_aspect_ratio = (AVRational) { 20, 11}; - break; - case vdecAspectRatio32_11: - avctx->sample_aspect_ratio = (AVRational) { 32, 11}; - break; - case vdecAspectRatio80_33: - avctx->sample_aspect_ratio = (AVRational) { 80, 33}; - break; - case vdecAspectRatio18_11: - avctx->sample_aspect_ratio = (AVRational) { 18, 11}; - break; - case vdecAspectRatio15_11: - avctx->sample_aspect_ratio = (AVRational) { 15, 11}; - break; - case vdecAspectRatio64_33: - avctx->sample_aspect_ratio = (AVRational) { 64, 33}; - break; - case vdecAspectRatio160_99: - avctx->sample_aspect_ratio = (AVRational) {160, 99}; - break; - case vdecAspectRatio4_3: - avctx->sample_aspect_ratio = (AVRational) { 4, 3}; - break; - case vdecAspectRatio16_9: - avctx->sample_aspect_ratio = (AVRational) { 16, 9}; - break; - case vdecAspectRatio221_1: - avctx->sample_aspect_ratio = (AVRational) {221, 1}; - break; - } - return RET_COPY_AGAIN; - } else if (ret == BC_STS_SUCCESS) { - int copy_ret = -1; - if (output.PoutFlags & BC_POUT_FLAGS_PIB_VALID) { - print_frame_info(priv, &output); - - copy_ret = copy_frame(avctx, &output, frame, got_frame); - } else { - /* - * An invalid frame has been consumed. - */ - av_log(avctx, AV_LOG_ERROR, "CrystalHD: ProcOutput succeeded with " - "invalid PIB\n"); - copy_ret = RET_COPY_AGAIN; - } - DtsReleaseOutputBuffs(dev, NULL, FALSE); - - return copy_ret; - } else if (ret == BC_STS_BUSY) { - return RET_COPY_AGAIN; - } else { - av_log(avctx, AV_LOG_ERROR, "CrystalHD: ProcOutput failed %d\n", ret); - return RET_ERROR; - } -} - -static int crystalhd_decode_packet(AVCodecContext *avctx, const AVPacket *avpkt) -{ - BC_STATUS bc_ret; - CHDContext *priv = avctx->priv_data; - HANDLE dev = priv->dev; - int ret = 0; - - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD: decode_packet\n"); - - if (avpkt && avpkt->size) { - uint64_t pts; - - /* - * Despite being notionally opaque, either libcrystalhd or - * the hardware itself will mangle pts values that are too - * small or too large. The docs claim it should be in units - * of 100ns. Given that we're nominally dealing with a black - * box on both sides, any transform we do has no guarantee of - * avoiding mangling so we need to build a mapping to values - * we know will not be mangled. - */ - pts = opaque_list_push(priv, avpkt->pts); - if (!pts) { - ret = AVERROR(ENOMEM); - goto exit; - } - av_log(priv->avctx, AV_LOG_VERBOSE, - "input \"pts\": %"PRIu64"\n", pts); - bc_ret = DtsProcInput(dev, avpkt->data, avpkt->size, pts, 0); - if (bc_ret == BC_STS_BUSY) { - av_log(avctx, AV_LOG_WARNING, - "CrystalHD: ProcInput returned busy\n"); - ret = AVERROR(EAGAIN); - goto exit; - } else if (bc_ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, - "CrystalHD: ProcInput failed: %u\n", ret); - ret = -1; - goto exit; - } - } else { - av_log(avctx, AV_LOG_INFO, "CrystalHD: No more input data\n"); - priv->draining = 1; - ret = AVERROR_EOF; - goto exit; - } - exit: - return ret; -} - -static int crystalhd_receive_frame(AVCodecContext *avctx, AVFrame *frame) -{ - BC_STATUS bc_ret; - BC_DTS_STATUS decoder_status = { 0, }; - CopyRet rec_ret; - CHDContext *priv = avctx->priv_data; - AVPacket *const pkt = priv->pkt; - HANDLE dev = priv->dev; - int got_frame = 0; - int ret = 0; - - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD: receive_frame\n"); - - ret = ff_decode_get_packet(avctx, pkt); - if (ret < 0 && ret != AVERROR_EOF) { - return ret; - } - - while (pkt->size > DtsTxFreeSize(dev)) { - /* - * Block until there is space in the buffer for the next packet. - * We assume that the hardware will make forward progress at this - * point, although in pathological cases that may not happen. - */ - av_log(avctx, AV_LOG_TRACE, "CrystalHD: Waiting for space in input buffer\n"); - } - - ret = crystalhd_decode_packet(avctx, pkt); - av_packet_unref(pkt); - // crystalhd_is_buffer_full() should avoid this. - if (ret == AVERROR(EAGAIN)) { - ret = AVERROR_EXTERNAL; - } - if (ret < 0 && ret != AVERROR_EOF) { - return ret; - } - - do { - bc_ret = DtsGetDriverStatus(dev, &decoder_status); - if (bc_ret != BC_STS_SUCCESS) { - av_log(avctx, AV_LOG_ERROR, "CrystalHD: GetDriverStatus failed\n"); - return -1; - } - - if (decoder_status.ReadyListCount == 0) { - av_log(avctx, AV_LOG_VERBOSE, "CrystalHD: Insufficient frames ready. Returning\n"); - got_frame = 0; - rec_ret = RET_OK; - break; - } - - rec_ret = receive_frame(avctx, frame, &got_frame); - } while (rec_ret == RET_COPY_AGAIN); - - if (rec_ret == RET_ERROR) { - return -1; - } else if (got_frame == 0) { - return priv->draining ? AVERROR_EOF : AVERROR(EAGAIN); - } else { - return 0; - } -} - -#define DEFINE_CRYSTALHD_DECODER(x, X, bsf_name) \ - static const AVClass x##_crystalhd_class = { \ - .class_name = #x "_crystalhd", \ - .item_name = av_default_item_name, \ - .option = options, \ - .version = LIBAVUTIL_VERSION_INT, \ - }; \ - const FFCodec ff_##x##_crystalhd_decoder = { \ - .p.name = #x "_crystalhd", \ - CODEC_LONG_NAME("CrystalHD " #X " decoder"), \ - .p.type = AVMEDIA_TYPE_VIDEO, \ - .p.id = AV_CODEC_ID_##X, \ - .priv_data_size = sizeof(CHDContext), \ - .p.priv_class = &x##_crystalhd_class, \ - .init = init, \ - .close = uninit, \ - FF_CODEC_RECEIVE_FRAME_CB(crystalhd_receive_frame), \ - .flush = flush, \ - .bsfs = bsf_name, \ - .p.capabilities = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_AVOID_PROBING | AV_CODEC_CAP_HARDWARE, \ - .caps_internal = FF_CODEC_CAP_NOT_INIT_THREADSAFE | \ - FF_CODEC_CAP_SETS_FRAME_PROPS, \ - .p.pix_fmts = (const enum AVPixelFormat[]){AV_PIX_FMT_YUYV422, AV_PIX_FMT_NONE}, \ - .p.wrapper_name = "crystalhd", \ - }; - -#if CONFIG_H264_CRYSTALHD_DECODER -DEFINE_CRYSTALHD_DECODER(h264, H264, "h264_mp4toannexb") -#endif - -#if CONFIG_MPEG2_CRYSTALHD_DECODER -DEFINE_CRYSTALHD_DECODER(mpeg2, MPEG2VIDEO, NULL) -#endif - -#if CONFIG_MPEG4_CRYSTALHD_DECODER -DEFINE_CRYSTALHD_DECODER(mpeg4, MPEG4, "mpeg4_unpack_bframes") -#endif - -#if CONFIG_MSMPEG4_CRYSTALHD_DECODER -DEFINE_CRYSTALHD_DECODER(msmpeg4, MSMPEG4V3, NULL) -#endif - -#if CONFIG_VC1_CRYSTALHD_DECODER -DEFINE_CRYSTALHD_DECODER(vc1, VC1, NULL) -#endif - -#if CONFIG_WMV3_CRYSTALHD_DECODER -DEFINE_CRYSTALHD_DECODER(wmv3, WMV3, NULL) -#endif diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h index ee243d9894..5859ceb409 100644 --- a/libavcodec/options_table.h +++ b/libavcodec/options_table.h @@ -179,9 +179,6 @@ static const AVOption avcodec_options[] = { {"xvidmmx", "deprecated, for compatibility only", 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_XVID }, INT_MIN, INT_MAX, V|E|D, "idct"}, {"faani", "floating point AAN IDCT", 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_FAAN }, INT_MIN, INT_MAX, V|D|E, "idct"}, {"simpleauto", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_SIMPLEAUTO }, INT_MIN, INT_MAX, V|E|D, "idct"}, -#if FF_API_SLICE_OFFSET -{"slice_count", NULL, OFFSET(slice_count), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, INT_MIN, INT_MAX}, -#endif {"ec", "set error concealment strategy", OFFSET(error_concealment), AV_OPT_TYPE_FLAGS, {.i64 = 3 }, INT_MIN, INT_MAX, V|D, "ec"}, {"guess_mvs", "iterative motion vector (MV) search (slow)", 0, AV_OPT_TYPE_CONST, {.i64 = FF_EC_GUESS_MVS }, INT_MIN, INT_MAX, V|D, "ec"}, {"deblock", "use strong deblock filter for damaged MBs", 0, AV_OPT_TYPE_CONST, {.i64 = FF_EC_DEBLOCK }, INT_MIN, INT_MAX, V|D, "ec"}, diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 7e8f5bace3..d849d55cb2 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -38,7 +38,6 @@ */ #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_SLICE_OFFSET (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_SUBFRAMES (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_TICKS_PER_FRAME (LIBAVCODEC_VERSION_MAJOR < 61) #define FF_API_DROPCHANGED (LIBAVCODEC_VERSION_MAJOR < 61) @@ -46,7 +45,4 @@ #define FF_API_AVFFT (LIBAVCODEC_VERSION_MAJOR < 62) #define FF_API_FF_PROFILE_LEVEL (LIBAVCODEC_VERSION_MAJOR < 62) -// reminder to remove CrystalHD decoders on next major bump -#define FF_CODEC_CRYSTAL_HD (LIBAVCODEC_VERSION_MAJOR < 61) - #endif /* AVCODEC_VERSION_MAJOR_H */ From patchwork Thu Jan 25 13:43:32 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45817 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81179pzf; Thu, 25 Jan 2024 05:45:57 -0800 (PST) X-Google-Smtp-Source: AGHT+IEVYB/f9GlnXAAG8wBjenH996pvEFI25lu7dVnJ/3/auM6SoZUDuWHviz8PMEk9zH40GfnZ X-Received: by 2002:a05:600c:a46:b0:40e:872a:fc07 with SMTP id c6-20020a05600c0a4600b0040e872afc07mr299523wmq.111.1706190357196; Thu, 25 Jan 2024 05:45:57 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190357; cv=none; d=google.com; s=arc-20160816; b=1JxhUp2HronENkqjXEUdMAfRUDXmfYDcZep36DMDgsU7mtgffNf0rTeQ5j8bdSSobG LiiR9c16yDXYaGvl/iAs/Sh3M1BF1+VgUArpLg06A9XsQP0ZckWQYA7CmvMj6sNVbZ9z ElhcGMK9rQMLqgYFA9QntGPNWpeiaEMFHPcKBw0NXq3cg4f7od7Yw20KmvYRByOyX/bd RImC5to7EuD4Cj//QkM+2qfGAT1PhAs1weXUyNUEg9oQYiI7QlnZrjndA8nSORsqVOQl 8k99g6rFIPV9oHMhalgSFPQYnSFZaBjGDgAWk43YDE6fm2RVsQ5i0Lulce6RKj2qdPid jtug== 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=hceQgyPsecQBleFs6QV1GUVQKs3GUcQbhqdsBc/ZhEU=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=WkMS088tTzBHwy8ix3LGAMdzHYx/Gqrq6YVKapULCVzD7ug7yQHk0vmseg4j1QroD0 V35UQgJLEmdAuRrsDQnFfc9rreI7sZ4NzhTjAsz/b1Xic/0lftuuYrABA6iERsaNJl/x fJPQ69E5QbIvXH0fceLFS8AaVNRNwlwY7J3Y6KlF5ACGMX/Nylj4be9/nCAzn/oLh994 nXXlfe0wx5Sl3cJBMHzGx8wfefdC9hAuHnUomPwScNge5mlFO7FaMrJMdo5SPQWF30ci Xj4gZllfAJiZ5yqK1kcL/JGrOCYhgqLD2F62Z8lPjGevSDKImspGN4qOOp4HuJXWExpF XrEQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=ElZV8J4X; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id en14-20020a056402528e00b0055ca5ce7abdsi2147176edb.617.2024.01.25.05.45.56; Thu, 25 Jan 2024 05:45:57 -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=@gmail.com header.s=20230601 header.b=ElZV8J4X; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 31BF068D14F; Thu, 25 Jan 2024 15:44:51 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 74EFC68D111 for ; Thu, 25 Jan 2024 15:44:45 +0200 (EET) Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-1d74678df08so28139905ad.1 for ; Thu, 25 Jan 2024 05:44:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190283; x=1706795083; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=n+fSgy2vQ9OPe+Ze/0PI8TovdCJ3+uzrVFXwT0F3wbk=; b=ElZV8J4XRUbdEMektvOcaklkDuhm0iiF+Lm6YjW9Glj4oplSEvYaICYSokvsjTREMC a9OcuoEPF8usyJd3wy9AgFoGpnMGfZf2orSE6BtbIdLKdsfTPJVpvVDwweSykvELR+1l AxWoH9UaFAQkakhtYUX5aQzbVMfoJ5ZRF8Yz+V90nu9V8iUC4UhctikDiD9J57eDfmhB 2RlVsZa72DAE/FNNInimG1qxv+0QZcJOtyOJiOmbg+O9pTjb0qSGuVNevPAusS+aM/gI IHtqGj/g69RCjrivBjDqiRAc5OFYlrhshpDaohg4N9F4FxcvJt0O7b3V25Q4TFrDsLBM iX8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190283; x=1706795083; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=n+fSgy2vQ9OPe+Ze/0PI8TovdCJ3+uzrVFXwT0F3wbk=; b=SGQ2aPwSlVig8QZbyP5fcAxEaWDSeba/p+slbvS6Tlg5O3eUlVv7q1QtxtIHSZ9MyJ 9S3GsvhFp52L1Fr3Wysnzx4yxaqkBbl2mLJnjeOjhYGuNPX93HrTW59UHVBwT+eLbflk a0Ifluw1rtTdLBlps8XLqsxigAciqXxCKadxuQvwj320b5Zj3fsIGIbmDtQz43/6gqtJ 5woE1OmlynZN+r0DSXs6/pGKtQtjqRBGd4hQmJZInskRaJMaJ3fsm6lk6mwvUiS5oqF7 X5IjF+hFRM3dK8aeVUz0GcBRKY3oLllXOfHFpJychLnqfYbE57NIxOeenmU1u1GBLSaI 7ziQ== X-Gm-Message-State: AOJu0YyN/dZqzSx51LwPnqxv5xRbQJuN4mx8jpTYEOlS8r+qa22lzFMm 2AKfFjAnNnES7zMD9DHPr92aG+lzimv2W+6OHHl372irlGRZxWgdyNMojm/6 X-Received: by 2002:a17:902:fc8d:b0:1d7:365c:8926 with SMTP id mf13-20020a170902fc8d00b001d7365c8926mr935687plb.87.1706190282657; Thu, 25 Jan 2024 05:44:42 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.41 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:42 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:32 -0300 Message-ID: <20240125134425.374-10-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 09/24] avformat: remove deprecated FF_API_GET_END_PTS 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: nbLpXuZcS89s Signed-off-by: James Almer --- libavformat/avformat.h | 10 ---------- libavformat/mux_utils.c | 10 ---------- libavformat/version_major.h | 1 - 3 files changed, 21 deletions(-) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 5d0fe82250..446ca9e6bf 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1097,16 +1097,6 @@ typedef struct AVStreamGroup { struct AVCodecParserContext *av_stream_get_parser(const AVStream *s); -#if FF_API_GET_END_PTS -/** - * Returns the pts of the last muxed packet + its duration - * - * the retuned value is undefined when used with a demuxer. - */ -attribute_deprecated -int64_t av_stream_get_end_pts(const AVStream *st); -#endif - #define AV_PROGRAM_RUNNING 1 /** diff --git a/libavformat/mux_utils.c b/libavformat/mux_utils.c index 3e63b8039a..9d811c14e2 100644 --- a/libavformat/mux_utils.c +++ b/libavformat/mux_utils.c @@ -30,16 +30,6 @@ #include "internal.h" #include "mux.h" -#if FF_API_GET_END_PTS -int64_t av_stream_get_end_pts(const AVStream *st) -{ - if (cffstream(st)->priv_pts) { - return cffstream(st)->priv_pts->val; - } else - return AV_NOPTS_VALUE; -} -#endif - int avformat_query_codec(const AVOutputFormat *ofmt, enum AVCodecID codec_id, int std_compliance) { diff --git a/libavformat/version_major.h b/libavformat/version_major.h index 224fdacf23..4dfb26cca3 100644 --- a/libavformat/version_major.h +++ b/libavformat/version_major.h @@ -42,7 +42,6 @@ * */ #define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 61) -#define FF_API_GET_END_PTS (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_AVIODIRCONTEXT (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_AVFORMAT_IO_CLOSE (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:33 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45819 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81350pzf; Thu, 25 Jan 2024 05:46:15 -0800 (PST) X-Google-Smtp-Source: AGHT+IFcabJUldL3pZXgP29+tP4W2eTGTkZQ2kMITSdWTtJnnxtxvJLcIGxGn41zglwMIlN7pPMc X-Received: by 2002:a17:906:e2ce:b0:a2e:4a46:ec03 with SMTP id gr14-20020a170906e2ce00b00a2e4a46ec03mr488435ejb.107.1706190374916; Thu, 25 Jan 2024 05:46:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190374; cv=none; d=google.com; s=arc-20160816; b=qtoVYCiVkFkwXGyizhFa8orIZwVCQFwhcjV0pyomHXe6b5JJfI5f6gx2TphGwvGDlP M6eXZF4yz1Yn3XK5BglQ0nQM1ta937+Lghkn56EEpF1KW/bQIenFpMytUh+4tJl5dBdJ iTLZIl3qIDtsfmd7rSMBgrb0zVrdDUPK9/MVsoC9t+OIXxQiS022lcjVNXRHNRgar4M5 Hxceleim+xFjv5aCT7IzV1DeHKFPE4jKzEGpbD+e2a6Gm4OD0xkib62LUk1HVUgV3hCi 0+m+ikN6MSAYfQ9eV7jQwRm6XYY/zCpL/RY5FiYjDGB/oqXJ4kAC11GAUhN+1cjxoBeS oEbg== 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=i4F4hp723A7cMF80KBkGt5S+GPEz+t6Sdku9IBQHTbw=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=s3Lp/uasYC9xwOmBMYtfQwkUk30UdHFSfjMVy508NK+hErj1T9Nf7yt6lEhIcNB01s AqVs3Ot8UZjtAzUK4w0VsKxQvsrQMfrXe8f0laBzfhotO7O2RG3dnPoJPc0IOpGCYWsk 2QGkp/M5aJ9S6lakanoxtmRY3fYkF5EDtTDIA2JcbPWJhJ9LHVzxwy5S1OcHNMUxkEOy UiXMSh7ADCuBtOSjTZdCzGk7mJcYuEbt6JMfFtqKIOHxQIxlrYGeGBtzOAR5A+NmvXV3 QTDCe9WoAwYMiGQJLkxyxzLCU2undQneUz4CjqxzreN/RUOLv0kzqYGASdHOF7TdloAE 0aZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=k9NlNgYl; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id cd10-20020a170906b34a00b00a3173f6e10fsi627223ejb.526.2024.01.25.05.46.14; Thu, 25 Jan 2024 05:46:14 -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=@gmail.com header.s=20230601 header.b=k9NlNgYl; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3316168D16F; Thu, 25 Jan 2024 15:44:54 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4A69B68D113 for ; Thu, 25 Jan 2024 15:44:46 +0200 (EET) Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-1d76943baafso28824855ad.2 for ; Thu, 25 Jan 2024 05:44:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190284; x=1706795084; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=9kVQyR2un/8kXZouKJDSYHT7da1NNWMjVUcelPROthY=; b=k9NlNgYlN+wcT3WiQwarCS1eZ/F2HxQuMJfg4gRedBe4bNz2WfHQ9Nmv3r7KBfSJlW dnEJ5siQFUlmIiBm204mSOxh83WpdnbcuxQqwlbtACdrge3a60tT3DW7JTNEcztC7akb TEIJXk/3Ijc4Mmv82lvO8vQSq9UeX1LLYzp5pkGvkQLsc2oMSgezAigi3bXuZQMhcbE1 qTIAyPEdayfPlcvI2jFmugAOwVU1EQdbrOb/M0msCU8jVCddPGPC4zCRs6y/j4trSZZg rQnDaio68vT2dHmnr9/vGj/3r2cCSvruAMXc+UA5DAg+NfC/aSiS6R+klwGMrXNGR0MR rMhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190284; x=1706795084; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9kVQyR2un/8kXZouKJDSYHT7da1NNWMjVUcelPROthY=; b=cp/WzZ162IrcSenceZTaVa4qwzq9urTpJN7TFT9mx9YWxcszmqENGJK3Wf3fk5U7a0 KrlzTy8DYe2Pgmyp8N5f6dI+ARHWJzV+uMoNFZzMOT6Z0IgMDNgsup+EMO4Ae1QsdQLV KH80+QOp+cyQTL2hRJlduLPiS8n2acOfKZOjGu5uYgD3Xjwl7K9SCd+JTofjW1GlAFB1 q/37ak/NK8JitUHOc7D6dS0d22MbTHIyeYKSg88gqG2MHfLj1mhbq5GOkkhWj9/2kGi5 F+oQY/DZJAD/Sf9Tuzenhgmhjn9OVFlTPKpRMJ+0FFrRJHLV18l+LBti7F7YGYycGhoL vV9Q== X-Gm-Message-State: AOJu0YwinoxrGD22wkfWcK+/wP0y3lLCAU0iwHPVdmQ4SG7bZOO7FfWX dG6jpvFIGEjMpAXKKw6o1paGMQ3VuCqvNGBHhhYvW4DLf2dw3HORKvgQUAx3 X-Received: by 2002:a17:903:2112:b0:1d7:5fee:beb with SMTP id o18-20020a170903211200b001d75fee0bebmr656800ple.103.1706190283931; Thu, 25 Jan 2024 05:44:43 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.42 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:43 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:33 -0300 Message-ID: <20240125134425.374-11-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 10/24] avformat: remove deprecated FF_API_AVIODIRCONTEXT 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: 9v5S4lpiDqYl Signed-off-by: James Almer --- libavformat/avio.c | 2 -- libavformat/avio.h | 6 ------ libavformat/version_major.h | 1 - 3 files changed, 9 deletions(-) diff --git a/libavformat/avio.c b/libavformat/avio.c index b793a7546c..6a9bd86754 100644 --- a/libavformat/avio.c +++ b/libavformat/avio.c @@ -529,11 +529,9 @@ int ffurl_delete(const char *url) return ret; } -#if !FF_API_AVIODIRCONTEXT struct AVIODirContext { struct URLContext *url_context; }; -#endif int avio_open_dir(AVIODirContext **s, const char *url, AVDictionary **options) { diff --git a/libavformat/avio.h b/libavformat/avio.h index 887a397c37..fc0d314edb 100644 --- a/libavformat/avio.h +++ b/libavformat/avio.h @@ -101,13 +101,7 @@ typedef struct AVIODirEntry { int64_t filemode; /**< Unix file mode, -1 if unknown. */ } AVIODirEntry; -#if FF_API_AVIODIRCONTEXT -typedef struct AVIODirContext { - struct URLContext *url_context; -} AVIODirContext; -#else typedef struct AVIODirContext AVIODirContext; -#endif /** * Different data types that can be returned via the AVIO diff --git a/libavformat/version_major.h b/libavformat/version_major.h index 4dfb26cca3..ee1f8bdbb7 100644 --- a/libavformat/version_major.h +++ b/libavformat/version_major.h @@ -42,7 +42,6 @@ * */ #define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 61) -#define FF_API_AVIODIRCONTEXT (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_AVFORMAT_IO_CLOSE (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_LAVF_SHORTEST (LIBAVFORMAT_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:34 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45821 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81489pzf; Thu, 25 Jan 2024 05:46:32 -0800 (PST) X-Google-Smtp-Source: AGHT+IFm0JyDSQWWYGdYPhucgs9/H2N33cZwQonsDET9oa7/Xwd85i83oKnISHwsIx0lgKxn1SJT X-Received: by 2002:a05:6512:3088:b0:510:1bbd:c295 with SMTP id z8-20020a056512308800b005101bbdc295mr486276lfd.37.1706190392203; Thu, 25 Jan 2024 05:46:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190392; cv=none; d=google.com; s=arc-20160816; b=uOPePaGajsDuVuRJBHaniXm8rC1adKuceqzPzL/udd4F0SgVjCM5rysusc/uxwzBOM BGrrk1gY8PqfJWjUvKDasmqgYt0Y72s7UcwU3lCtqZvb320J4ZrcG+48N5+ncbVUAJuN D7uiJVZ6MQDEr3GIMGBZt/85yY/B3ozX73F1Xep7qs0oG1vJgbbXLh9Ok1zFmgQ5eVS1 Kju97MZB6gc1poJ1/8enVSWhxqzAfaxgtnqMCXBCPCrqQZIvKAof2+PEE/2WNWsUTBd4 f2EMy+A7v07fD6PyeVrPtdy0GUngU9cPDxoYFN1YmyHV4iuxVGwO8BmMokgUlonedHOD mybw== 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=R7EnsgZHoIpKm96ffP32pBFy8AfHOzCPtH8gMfSdwbQ=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=KeEueAKs3DcoucBzyfO8/D+h0lHXRaumAGC8oTSedCKWNfRV6f8qx9D/ZThRu9Gq+q +vA7Qea7xGhSXkykbYjpP/HzZnLMhSj8OT6DmB+O/b6uSlWz00uvkIztLcK+No7IxrTC 1JeOonp6zYRByxX16IHh4uqtkPChgO1qyG2Lek/yaX6y2+9cpdZQ8cqE47ixAOWq2lo4 wDwXicMnxS8lMnTu8AkyuVdveM5EAUwQ9WDyRZKEOCfbg59YmLghEPLzdv019UQCqymQ yaLLHnjuztBwmX6GXBu8DyO56gWNehGwP4PPeM/tXTBqw6ORRO61dTwGD5Ak9lLyDjsV XMjQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=XOF3daYu; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id fd16-20020a056402389000b005543ec7a80fsi14769907edb.159.2024.01.25.05.46.31; Thu, 25 Jan 2024 05:46:32 -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=@gmail.com header.s=20230601 header.b=XOF3daYu; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5838968D178; Thu, 25 Jan 2024 15:44:56 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 05ED168D11D for ; Thu, 25 Jan 2024 15:44:47 +0200 (EET) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-1d73066880eso44045755ad.3 for ; Thu, 25 Jan 2024 05:44:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190285; x=1706795085; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=oV9ZDViEpZ6whBtwDRglQ97mN5G62nAi/dRKWz54lX8=; b=XOF3daYuR7zc+n1x1YBIHomvBMRRUK1DPWeQg3WnI8e/0+VnF5t8aFt7JqZnUmv52q 3q5p0AQoL94qm8gZDBsIJDbfYb86PF1IkuwFwjj+FGU+P/yJLbj/xqph5pZFCFi44wDI Mtwa6ikHYBfRNAjIHzEK4S3baCEeXSxkNbfjGxmqFU7mrUJNqajJDN65QSuuZEn3hiCb APLAeiv3noxjlmLdomTPsA2C5mnCnQuhI3+rut1zclp0b137YbfQtscp5Hs3c+B9wSuJ ukuIiin8BvC+nnlesp97PciWOJ58EGVG4ZqxgTrDo5U1V7kQ4KqqpNQScXiSVdXiCNmD Sv8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190285; x=1706795085; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oV9ZDViEpZ6whBtwDRglQ97mN5G62nAi/dRKWz54lX8=; b=I9+aSYCitX+6pHzq1r3dhd98dsTRZrbcZ28GcXpe6SjghfedvnQ/O8VFEwbfTfnucG bp0py4nNLuTmb2VhNTGmhvZZh1wWhqKzYBB3gncuoI8WWhHm8Z3bm/FwtfCXt5MjTrDB i8VrsDp7E03WHjbrekVU3gtxSyFvEg5PE54xmIl309YdTwl/v8cuFNa+IQEpGMbJDjKT 65Y4cngDsK/HpoHdh3MyjAcGcbYbLQNMPkQkoqLbwD7cbh3y2/y+DMHSdtk0mCbZu1M4 HaEjMr488fwWloxHenYj2UtDuWk7pP7JqpqrZ5IZ944awb7CANaaWia24oqRDU2kMAwO yySg== X-Gm-Message-State: AOJu0YzJu0VjlHP/i81BbBQcfrBDgmC4p+IjV9P7dNwYXHmWQcWKMmVW uc/UwXPMniyP87hQYeqNsDTyjJjjbPhYHSC6LrZ1aLKO3yAZHYxFcskAIp0B X-Received: by 2002:a17:902:bc4c:b0:1d7:41b9:9a65 with SMTP id t12-20020a170902bc4c00b001d741b99a65mr1087816plz.89.1706190285237; Thu, 25 Jan 2024 05:44:45 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:44 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:34 -0300 Message-ID: <20240125134425.374-12-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 11/24] avformat: remove deprecated FF_API_AVFORMAT_IO_CLOSE 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: 1EJIjoZMCg2n Signed-off-by: James Almer --- libavformat/avformat.c | 14 ++------------ libavformat/avformat.h | 10 ---------- libavformat/dashenc.c | 5 ----- libavformat/fifo.c | 5 ----- libavformat/hlsenc.c | 5 ----- libavformat/imfdec.c | 5 ----- libavformat/options.c | 12 ------------ libavformat/segment.c | 5 ----- libavformat/tee.c | 5 ----- libavformat/version_major.h | 1 - 10 files changed, 2 insertions(+), 65 deletions(-) diff --git a/libavformat/avformat.c b/libavformat/avformat.c index 882927f7b1..074e98491d 100644 --- a/libavformat/avformat.c +++ b/libavformat/avformat.c @@ -916,18 +916,8 @@ void ff_format_set_url(AVFormatContext *s, char *url) int ff_format_io_close(AVFormatContext *s, AVIOContext **pb) { int ret = 0; - if (*pb) { -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - if (s->io_close == ff_format_io_close_default || s->io_close == NULL) -#endif - ret = s->io_close2(s, *pb); -#if FF_API_AVFORMAT_IO_CLOSE - else - s->io_close(s, *pb); -FF_ENABLE_DEPRECATION_WARNINGS -#endif - } + if (*pb) + ret = s->io_close2(s, *pb); *pb = NULL; return ret; } diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 446ca9e6bf..ed02dd87b9 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1743,16 +1743,6 @@ typedef struct AVFormatContext { int (*io_open)(struct AVFormatContext *s, AVIOContext **pb, const char *url, int flags, AVDictionary **options); -#if FF_API_AVFORMAT_IO_CLOSE - /** - * A callback for closing the streams opened with AVFormatContext.io_open(). - * - * @deprecated use io_close2 - */ - attribute_deprecated - void (*io_close)(struct AVFormatContext *s, AVIOContext *pb); -#endif - /** * ',' separated list of disallowed protocols. * - encoding: unused diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index 4a92863f22..706e9ab6f4 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -1544,11 +1544,6 @@ static int dash_init(AVFormatContext *s) return AVERROR_MUXER_NOT_FOUND; ctx->interrupt_callback = s->interrupt_callback; ctx->opaque = s->opaque; -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - ctx->io_close = s->io_close; -FF_ENABLE_DEPRECATION_WARNINGS -#endif ctx->io_close2 = s->io_close2; ctx->io_open = s->io_open; ctx->strict_std_compliance = s->strict_std_compliance; diff --git a/libavformat/fifo.c b/libavformat/fifo.c index 8fb4975a5c..94502129c6 100644 --- a/libavformat/fifo.c +++ b/libavformat/fifo.c @@ -501,11 +501,6 @@ static int fifo_mux_init(AVFormatContext *avf, const AVOutputFormat *oformat, if (ret < 0) return ret; avf2->opaque = avf->opaque; -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - avf2->io_close = avf->io_close; -FF_ENABLE_DEPRECATION_WARNINGS -#endif avf2->io_close2 = avf->io_close2; avf2->io_open = avf->io_open; avf2->flags = avf->flags; diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index 55123d2297..dd2abbbd85 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -865,11 +865,6 @@ static int hls_mux_init(AVFormatContext *s, VariantStream *vs) oc->max_delay = s->max_delay; oc->opaque = s->opaque; oc->io_open = s->io_open; -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - oc->io_close = s->io_close; -FF_ENABLE_DEPRECATION_WARNINGS -#endif oc->io_close2 = s->io_close2; oc->strict_std_compliance = s->strict_std_compliance; av_dict_copy(&oc->metadata, s->metadata, 0); diff --git a/libavformat/imfdec.c b/libavformat/imfdec.c index 818b5e590b..901080555a 100644 --- a/libavformat/imfdec.c +++ b/libavformat/imfdec.c @@ -379,11 +379,6 @@ static int open_track_resource_context(AVFormatContext *s, return AVERROR(ENOMEM); track_resource->ctx->io_open = s->io_open; -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - track_resource->ctx->io_close = s->io_close; -FF_ENABLE_DEPRECATION_WARNINGS -#endif track_resource->ctx->io_close2 = s->io_close2; track_resource->ctx->flags |= s->flags & ~AVFMT_FLAG_CUSTOM_IO; diff --git a/libavformat/options.c b/libavformat/options.c index 75ec86ce05..7eaf281d86 100644 --- a/libavformat/options.c +++ b/libavformat/options.c @@ -152,13 +152,6 @@ static int io_open_default(AVFormatContext *s, AVIOContext **pb, return ffio_open_whitelist(pb, url, flags, &s->interrupt_callback, options, s->protocol_whitelist, s->protocol_blacklist); } -#if FF_API_AVFORMAT_IO_CLOSE -void ff_format_io_close_default(AVFormatContext *s, AVIOContext *pb) -{ - avio_close(pb); -} -#endif - static int io_close2_default(AVFormatContext *s, AVIOContext *pb) { return avio_close(pb); @@ -175,11 +168,6 @@ AVFormatContext *avformat_alloc_context(void) s = &si->pub; s->av_class = &av_format_context_class; s->io_open = io_open_default; -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - s->io_close = ff_format_io_close_default; -FF_ENABLE_DEPRECATION_WARNINGS -#endif s->io_close2= io_close2_default; av_opt_set_defaults(s); diff --git a/libavformat/segment.c b/libavformat/segment.c index 2a82f39f31..63ba226692 100644 --- a/libavformat/segment.c +++ b/libavformat/segment.c @@ -160,11 +160,6 @@ static int segment_mux_init(AVFormatContext *s) oc->max_delay = s->max_delay; av_dict_copy(&oc->metadata, s->metadata, 0); oc->opaque = s->opaque; -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - oc->io_close = s->io_close; -FF_ENABLE_DEPRECATION_WARNINGS -#endif oc->io_close2 = s->io_close2; oc->io_open = s->io_open; oc->flags = s->flags; diff --git a/libavformat/tee.c b/libavformat/tee.c index cfa8346bc9..a101fede5b 100644 --- a/libavformat/tee.c +++ b/libavformat/tee.c @@ -236,11 +236,6 @@ static int open_slave(AVFormatContext *avf, char *slave, TeeSlave *tee_slave) av_dict_copy(&avf2->metadata, avf->metadata, 0); avf2->opaque = avf->opaque; avf2->io_open = avf->io_open; -#if FF_API_AVFORMAT_IO_CLOSE -FF_DISABLE_DEPRECATION_WARNINGS - avf2->io_close = avf->io_close; -FF_ENABLE_DEPRECATION_WARNINGS -#endif avf2->io_close2 = avf->io_close2; avf2->interrupt_callback = avf->interrupt_callback; avf2->flags = avf->flags; diff --git a/libavformat/version_major.h b/libavformat/version_major.h index ee1f8bdbb7..2c8ab84112 100644 --- a/libavformat/version_major.h +++ b/libavformat/version_major.h @@ -42,7 +42,6 @@ * */ #define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 61) -#define FF_API_AVFORMAT_IO_CLOSE (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_LAVF_SHORTEST (LIBAVFORMAT_VERSION_MAJOR < 61) #define FF_API_ALLOW_FLUSH (LIBAVFORMAT_VERSION_MAJOR < 61) From patchwork Thu Jan 25 13:43:35 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45822 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81575pzf; Thu, 25 Jan 2024 05:46:40 -0800 (PST) X-Google-Smtp-Source: AGHT+IH4EgGvXwFcsMTnTNz6PUewJKecvkJ7RPLSxuuxKEsF9Ze1QCuC9Pobe8zShk03tF/MtRZs X-Received: by 2002:a19:641d:0:b0:510:cb0:ec2b with SMTP id y29-20020a19641d000000b005100cb0ec2bmr511302lfb.97.1706190400611; Thu, 25 Jan 2024 05:46:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190400; cv=none; d=google.com; s=arc-20160816; b=mqEcFAVv3PlXCfIxjGRmzaV60l75G0ivXPQq3Xa3ktk7F2vJ6/gPLCxXaNl5su3d06 JP3J2TMbDNJvOPKw+Cxi9U+uCONqLtFZo8h5m7URA8IRhiZIZaaji7Q1GtLe3dokHp5o 6dilv7/7PtU2Lo8yarvlWokQUBMS3DzUA0LWwZBxR16VN1X7QuDsp2rRRSQg9kmK81Ht Mr+pUgyUlUv3GpD6bXEnziXEqLS8ie4vu6SsgVG/bjft6vUdcb4wlIkQ2nsV7WVpd++M MR9tiiDtnJadhJ8QhKbNzRtTyePTXLHiAchKinu7/0GABrbEGF2Q5lPKf58lLhchpODC NDhA== 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=LEZ+Vrwi5OIwQD6nv5xlMmilQReyEwbW5FrWIad9yls=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=iAdhQihoNq2yG5w9uKKxzkFmSGwYdANso3VrR2yRJigae8JV7159KnMzSpRhqHiQWl MR3DRVCdChFSEKvxwkzfZkjvlSPb/Lf+XMPTE5yeU2Ns8qhUWZ18rnxt7O/5D/O0MU+o E4X59Pr2pbjw33GU7rYVd4Uf6piXwIngBLDA+SaSG9J92eZafr+vxnQlhpxBcQn2ZJ30 26SBo1YxQhJjZKqVfOGPYre4xY5cedhCN7eQMaRpHZfF8U0DJFQxu7UHXhO9QaxRlOVT 7TkHcZ2aanpaMkZnXN1nvjA0G3ZPrDhkvhMBOX3xyLyL1jOG/vKPoVjI+XuI7nE/faeB vhQQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=OR0+2eOH; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id l16-20020a170906415000b00a30c1cccb38si975669ejk.379.2024.01.25.05.46.39; Thu, 25 Jan 2024 05:46:40 -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=@gmail.com header.s=20230601 header.b=OR0+2eOH; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5070768D0F6; Thu, 25 Jan 2024 15:44:57 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E5EAA68D111 for ; Thu, 25 Jan 2024 15:44:48 +0200 (EET) Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-1d88e775d91so3769385ad.2 for ; Thu, 25 Jan 2024 05:44:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190286; x=1706795086; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=COGlsi/HUkX9z5PhH85eBE6hyq0kYQyo/keK651eeJQ=; b=OR0+2eOHO7+IkDh+nfvqvCEVgFeZqi6LhYvZxwPlCJ42X/Cs9Pcu4HqIJhbLWDm+fF LmgcXODHyTe/aEz5slH00fxrb6oTW2Pow8GEpgOdxnoJR7nraaTCNrqeBsu88LvtGkiT ZUodWJffpvAehL9LSIuLZDFSMcBhA9vJWE7PkqHDidEKAJLEimSffwAve+RT8x+ZosJI +6a7adBk0ISCmGpmKrlDZU5Fc6I8B5uLK4FAdv1aNQ5eNWpoobpXuLXCNOSSwQ+FFTM1 qS/6u8IbhvHQ4eyjnU+oa/RnBOgx39CRyNZt3V8Z/qpE4aIAW2zeXNdejMaDe4jBHrZe +ZEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190286; x=1706795086; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=COGlsi/HUkX9z5PhH85eBE6hyq0kYQyo/keK651eeJQ=; b=jAOzJa8d7bofNi6bryRsMk49v3p5wnwLUh+GlblWlPrSeii++az09QSc7mg1o9iT30 ns2SjiRbIyigiNXwKNijgKxd9iJ0MaphzwxKipsQuxdT3WhY24dijjC/X9SjTQZH1V6A /4RsrCQldPw9MvNLvH8SNX3kWIjSuBjt1vq/LH+nwg4UaJ/3tVP5Z5OIMMY+0QE1CHX4 yORNkLvSA+Lpj5JlBcObclsk5n3M7YU4xXBh56hgP/zQ69/oJhAqyAuIXDcxy1JTvpo5 GMQWt4JSXBg429o59wnGxnlfDksx0ndwSavmpQF/+9bUbxVfElWjrzpluuoBEgbzEZno evMA== X-Gm-Message-State: AOJu0Yysw57sMDkPXoBdatr7lv8V2aadNEItbf5SFg9kiNX8JWvPNKn8 pNFeoIC8XdOwgZ3W/5iMBi6ImRqMb9QLrUu4acTPS19213OhKpqb59l18phZ X-Received: by 2002:a17:903:2642:b0:1d7:857e:a3 with SMTP id je2-20020a170903264200b001d7857e00a3mr859218plb.28.1706190286537; Thu, 25 Jan 2024 05:44:46 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.45 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:46 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:35 -0300 Message-ID: <20240125134425.374-13-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 12/24] avfilter: remove deprecated FF_API_LIBPLACEBO_OPTS 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: 0NONuFTxNaVw Signed-off-by: James Almer --- libavfilter/version_major.h | 2 - libavfilter/vf_libplacebo.c | 76 ------------------------------------- 2 files changed, 78 deletions(-) diff --git a/libavfilter/version_major.h b/libavfilter/version_major.h index 1decc4012e..899dfdb27d 100644 --- a/libavfilter/version_major.h +++ b/libavfilter/version_major.h @@ -35,6 +35,4 @@ * the public API and may change, break or disappear at any time. */ -#define FF_API_LIBPLACEBO_OPTS (LIBAVFILTER_VERSION_MAJOR < 10) - #endif /* AVFILTER_VERSION_MAJOR_H */ diff --git a/libavfilter/vf_libplacebo.c b/libavfilter/vf_libplacebo.c index a9a3d884ce..7d1ca6daee 100644 --- a/libavfilter/vf_libplacebo.c +++ b/libavfilter/vf_libplacebo.c @@ -240,20 +240,6 @@ typedef struct LibplaceboContext { float contrast_recovery; float contrast_smoothness; -#if FF_API_LIBPLACEBO_OPTS - /* for backwards compatibility */ - float desat_str; - float desat_exp; - int gamut_warning; - int gamut_clipping; - int force_icc_lut; - int intent; - int tonemapping_mode; - float crosstalk; - float overshoot; - float hybrid_mix; -#endif - /* pl_dither_params */ int dithering; int dither_lut_size; @@ -382,32 +368,6 @@ static int update_settings(AVFilterContext *ctx) int gamut_mode = s->gamut_mode; uint8_t color_rgba[4]; -#if FF_API_LIBPLACEBO_OPTS - float hybrid_mix = s->hybrid_mix; - /* backwards compatibility with older API */ - switch (s->tonemapping_mode) { - case 0: /*PL_TONE_MAP_AUTO*/ - if (s->desat_str >= 0.0f) - hybrid_mix = s->desat_str; - break; - case 1: /*PL_TONE_MAP_RGB*/ hybrid_mix = 1.0f; break; - case 2: /*PL_TONE_MAP_HYBRID*/ hybrid_mix = 0.2f; break; - case 3: /*PL_TONE_MAP_LUMA*/ hybrid_mix = 0.0f; break; - case 4: /*PL_TONE_MAP_MAX*/ hybrid_mix = 0.0f; break; - } - - switch (s->intent) { - case PL_INTENT_SATURATION: gamut_mode = GAMUT_MAP_SATURATION; break; - case PL_INTENT_RELATIVE_COLORIMETRIC: gamut_mode = GAMUT_MAP_RELATIVE; break; - case PL_INTENT_ABSOLUTE_COLORIMETRIC: gamut_mode = GAMUT_MAP_ABSOLUTE; break; - } - - if (s->gamut_warning) - gamut_mode = GAMUT_MAP_HIGHLIGHT; - if (s->gamut_clipping) - gamut_mode = GAMUT_MAP_DESATURATE; -#endif - RET(av_parse_color(color_rgba, s->fillcolor, -1, s)); opts->deband_params = *pl_deband_params( @@ -434,21 +394,10 @@ static int update_settings(AVFilterContext *ctx) .scene_threshold_high = s->scene_high, #if PL_API_VER >= 263 .percentile = s->percentile, -#endif -#if FF_API_LIBPLACEBO_OPTS && PL_API_VER < 256 - .overshoot_margin = s->overshoot, #endif ); opts->color_map_params = *pl_color_map_params( -#if FF_API_LIBPLACEBO_OPTS -# if PL_API_VER >= 269 - .hybrid_mix = hybrid_mix, -# else - .tone_mapping_mode = s->tonemapping_mode, - .tone_mapping_crosstalk = s->crosstalk, -# endif -#endif .tone_mapping_function = get_tonemapping_func(s->tonemapping), .tone_mapping_param = s->tonemapping_param, .inverse_tone_mapping = s->inverse_tonemapping, @@ -1458,28 +1407,6 @@ static const AVOption libplacebo_options[] = { { "contrast_recovery", "HDR contrast recovery strength", OFFSET(contrast_recovery), AV_OPT_TYPE_FLOAT, {.dbl = 0.30}, 0.0, 3.0, DYNAMIC }, { "contrast_smoothness", "HDR contrast recovery smoothness", OFFSET(contrast_smoothness), AV_OPT_TYPE_FLOAT, {.dbl = 3.50}, 1.0, 32.0, DYNAMIC }, -#if FF_API_LIBPLACEBO_OPTS - /* deprecated options for backwards compatibility, defaulting to -1 to not override the new defaults */ - { "desaturation_strength", "Desaturation strength", OFFSET(desat_str), AV_OPT_TYPE_FLOAT, {.dbl = -1.0}, -1.0, 1.0, DYNAMIC | AV_OPT_FLAG_DEPRECATED }, - { "desaturation_exponent", "Desaturation exponent", OFFSET(desat_exp), AV_OPT_TYPE_FLOAT, {.dbl = -1.0}, -1.0, 10.0, DYNAMIC | AV_OPT_FLAG_DEPRECATED }, - { "gamut_warning", "Highlight out-of-gamut colors", OFFSET(gamut_warning), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DYNAMIC | AV_OPT_FLAG_DEPRECATED }, - { "gamut_clipping", "Enable desaturating colorimetric gamut clipping", OFFSET(gamut_clipping), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DYNAMIC | AV_OPT_FLAG_DEPRECATED }, - { "intent", "Rendering intent", OFFSET(intent), AV_OPT_TYPE_INT, {.i64 = PL_INTENT_PERCEPTUAL}, 0, 3, DYNAMIC | AV_OPT_FLAG_DEPRECATED, "intent" }, - { "perceptual", "Perceptual", 0, AV_OPT_TYPE_CONST, {.i64 = PL_INTENT_PERCEPTUAL}, 0, 0, STATIC, "intent" }, - { "relative", "Relative colorimetric", 0, AV_OPT_TYPE_CONST, {.i64 = PL_INTENT_RELATIVE_COLORIMETRIC}, 0, 0, STATIC, "intent" }, - { "absolute", "Absolute colorimetric", 0, AV_OPT_TYPE_CONST, {.i64 = PL_INTENT_ABSOLUTE_COLORIMETRIC}, 0, 0, STATIC, "intent" }, - { "saturation", "Saturation mapping", 0, AV_OPT_TYPE_CONST, {.i64 = PL_INTENT_SATURATION}, 0, 0, STATIC, "intent" }, - { "tonemapping_mode", "Tone-mapping mode", OFFSET(tonemapping_mode), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 4, DYNAMIC | AV_OPT_FLAG_DEPRECATED, "tonemap_mode" }, - { "auto", "Automatic selection", 0, AV_OPT_TYPE_CONST, {.i64 = 0}, 0, 0, STATIC, "tonemap_mode" }, - { "rgb", "Per-channel (RGB)", 0, AV_OPT_TYPE_CONST, {.i64 = 1}, 0, 0, STATIC, "tonemap_mode" }, - { "max", "Maximum component", 0, AV_OPT_TYPE_CONST, {.i64 = 2}, 0, 0, STATIC, "tonemap_mode" }, - { "hybrid", "Hybrid of Luma/RGB", 0, AV_OPT_TYPE_CONST, {.i64 = 3}, 0, 0, STATIC, "tonemap_mode" }, - { "luma", "Luminance", 0, AV_OPT_TYPE_CONST, {.i64 = 4}, 0, 0, STATIC, "tonemap_mode" }, - { "tonemapping_crosstalk", "Crosstalk factor for tone-mapping", OFFSET(crosstalk), AV_OPT_TYPE_FLOAT, {.dbl = 0.04}, 0.0, 0.30, DYNAMIC | AV_OPT_FLAG_DEPRECATED }, - { "overshoot", "Tone-mapping overshoot margin", OFFSET(overshoot), AV_OPT_TYPE_FLOAT, {.dbl = 0.05}, 0.0, 1.0, DYNAMIC | AV_OPT_FLAG_DEPRECATED }, - { "hybrid_mix", "Tone-mapping hybrid LMS mixing coefficient", OFFSET(hybrid_mix), AV_OPT_TYPE_FLOAT, {.dbl = 0.20}, 0.0, 1.00, DYNAMIC }, -#endif - { "dithering", "Dither method to use", OFFSET(dithering), AV_OPT_TYPE_INT, {.i64 = PL_DITHER_BLUE_NOISE}, -1, PL_DITHER_METHOD_COUNT - 1, DYNAMIC, "dither" }, { "none", "Disable dithering", 0, AV_OPT_TYPE_CONST, {.i64 = -1}, 0, 0, STATIC, "dither" }, { "blue", "Blue noise", 0, AV_OPT_TYPE_CONST, {.i64 = PL_DITHER_BLUE_NOISE}, 0, 0, STATIC, "dither" }, @@ -1503,9 +1430,6 @@ static const AVOption libplacebo_options[] = { { "polar_cutoff", "Polar LUT cutoff", OFFSET(polar_cutoff), AV_OPT_TYPE_FLOAT, {.dbl = 0}, 0.0, 1.0, DYNAMIC }, { "disable_linear", "Disable linear scaling", OFFSET(disable_linear), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DYNAMIC }, { "disable_builtin", "Disable built-in scalers", OFFSET(disable_builtin), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DYNAMIC }, -#if FF_API_LIBPLACEBO_OPTS - { "force_icc_lut", "Deprecated, does nothing", OFFSET(force_icc_lut), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DYNAMIC | AV_OPT_FLAG_DEPRECATED }, -#endif { "force_dither", "Force dithering", OFFSET(force_dither), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DYNAMIC }, { "disable_fbos", "Force-disable FBOs", OFFSET(disable_fbos), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DYNAMIC }, { NULL }, From patchwork Thu Jan 25 13:43:36 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45823 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81649pzf; Thu, 25 Jan 2024 05:46:49 -0800 (PST) X-Google-Smtp-Source: AGHT+IHHtDwGrwa5SqUOT8E+13ja/v6LE6oPnqNCrVjS9TY37oZARJCmbs1TU+7vm1OtQJjHbXHD X-Received: by 2002:a17:906:f989:b0:a30:4726:eabd with SMTP id li9-20020a170906f98900b00a304726eabdmr1158754ejb.3.1706190408822; Thu, 25 Jan 2024 05:46:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190408; cv=none; d=google.com; s=arc-20160816; b=pjSMjmQxqGCj108qZs7mVf3U4q82hH/zlh7BuIgurFx8EFFhziHDajVKI6qW3KOla4 i68d9FkvgL37KC6kkG80JTDEx4udeNu88EsRFVp6UlU0nfZvdI/7hOUYKjpf5EUb4nn+ 55H5KGu7kbh64qk6a68u9bLXGydC9eHj4DNkHSCnJmepAbglN7n/YOx5rtfSZaB5fTk8 nSPGTXLIlFCm1oH3gj76uXVMK8l/o4d4+ilq1dBjceXacn7U2qpU1wYEkSx0J9nX8Pfk ec1uq2BEruPo0Ou8M1/6zuongjHMFq/hxyECeRiQxLitDqn6LMNLqW0TcQ/a/7l26MuS ILuA== 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=jrugWOQTQv0BxFoNxQm8S4NAnVjEJUL4s5ZuMXgQAZY=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=NmhSslRWr/9W7JkWKFTodLSUeWfVIIVF32pPzZ9T9FuG1DlGLVvOMJDjdZSyZh5C3i ZozfTIL53jdSX8hSjsA8K5/A5oK2JQiHFDur/MZAlX59yUt6amH1ds3oJJwHXXjjs3Wt ciXlSeeEw9f74sf2lT0BDopbmrJY9eZCDQWxxCzWi4yGvGOZiLSBZB0OrsuL7IOjcuvk DRKd1/v5kBwMDjWynSo7i+P5gmlOK0EFMmQjbOoJEf3ShjNr8lzhZZwctlFIRkxMcCwm aDSBMLH4uoM/OC+1fIRrwWjGkA2Xt04Uqvrwu/8HZ3/M5ZUR/I7WBV5RlQmKZvERFu7b cutQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=O9R96Qnb; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id kl23-20020a170907995700b00a2d1aad8686si985971ejc.436.2024.01.25.05.46.48; Thu, 25 Jan 2024 05:46:48 -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=@gmail.com header.s=20230601 header.b=O9R96Qnb; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5C2AC68D180; Thu, 25 Jan 2024 15:44:58 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 052B668D14C for ; Thu, 25 Jan 2024 15:44:49 +0200 (EET) Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-1d780a392fdso17066005ad.3 for ; Thu, 25 Jan 2024 05:44:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190288; x=1706795088; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=3MNCGhOxflInXF6wgnUdLZzQcXlRTkyai5jDkctok9I=; b=O9R96QnbATWtK6KqKtwu//VEQKmaIu/YHE7S2Jn36ekmUNifcxMNxtEFnUoiovS0TU +U6DmA0g3zxe+eLZdFOYTs9LuIxe1tFsjtddyOg4xAucNH/Hr5YdIq6VpwVKlWKInM1M tOkeB65vUPulS4G6CKz8huLr+EH6gUHp6H+cuio6dptIwBkfpqt3qhB1F5Z73BP1itx4 XG2jbKHo1YXL0QBaWIEfHGaG+Nk+fYju8sjR8SMww6srefupgUHbTPa1q2+5zfvaaoOp GALYdNW6D0sbq3pS0eTI0Jnkv5vbXLGTRAz1k1ukjw4ZZWiDXVYmnQCRIFesBbzmoumb JvIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190288; x=1706795088; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3MNCGhOxflInXF6wgnUdLZzQcXlRTkyai5jDkctok9I=; b=CkIfS7dFmgp+J9TTWrPnxnzvkDJ6B6QHRUOSl18+AVbs11xBBLPHAwjAFBYlbMMTG3 QD+l5YWVS/U7q6Rd5vHUUKx536kYrBecS9FK0XYt6fO+iSw9W1GpejpKRXCS3kY1szkI Ud7FKlneLcInt4y30QxQWAn8aW2ho1BJZgpzjkoDjWX1uUjywE7ICuJUPNKoMTH1Hdhz /Th0/y4/kaQ2dQyR0ExNloGI8SjCUUHiBzbWOaLGZL0YUbtI8PbPnzeOis96I0yfvWcb RRLpf+ZgfUpALqUfK6vGOxl/MquQmL2kptbxVMqARNdt+FaBStwrjDecRkLxaqs6XNQE sMpA== X-Gm-Message-State: AOJu0YwGvl2C0MvFKuHwFqCy3MBlkgadLditSRuxFliCzRk52WxJ6+y2 x9GbgnHS5VUvBR5KEf+QPkCoaN9at2KXjl87Lk4Wo1hInk9nq8l21cPMP0e0 X-Received: by 2002:a17:902:d2c2:b0:1d5:e4d6:1e07 with SMTP id n2-20020a170902d2c200b001d5e4d61e07mr858287plc.33.1706190287833; Thu, 25 Jan 2024 05:44:47 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:47 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:36 -0300 Message-ID: <20240125134425.374-14-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 13/24] avutil: remove deprecated FF_API_FIFO_PEEK2 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: mN8o4bsJeEPo Signed-off-by: James Almer --- libavutil/fifo.h | 23 ----------------------- libavutil/version.h | 1 - 2 files changed, 24 deletions(-) diff --git a/libavutil/fifo.h b/libavutil/fifo.h index ce3a2aed7c..7ac497e8f9 100644 --- a/libavutil/fifo.h +++ b/libavutil/fifo.h @@ -416,29 +416,6 @@ int av_fifo_grow(AVFifoBuffer *f, unsigned int additional_space); attribute_deprecated void av_fifo_drain(AVFifoBuffer *f, int size); -#if FF_API_FIFO_PEEK2 -/** - * Return a pointer to the data stored in a FIFO buffer at a certain offset. - * The FIFO buffer is not modified. - * - * @param f AVFifoBuffer to peek at, f must be non-NULL - * @param offs an offset in bytes, its absolute value must be less - * than the used buffer size or the returned pointer will - * point outside to the buffer data. - * The used buffer size can be checked with av_fifo_size(). - * @deprecated use the new AVFifo-API with av_fifo_peek() or av_fifo_peek_to_cb() - */ -attribute_deprecated -static inline uint8_t *av_fifo_peek2(const AVFifoBuffer *f, int offs) -{ - uint8_t *ptr = f->rptr + offs; - if (ptr >= f->end) - ptr = f->buffer + (ptr - f->end); - else if (ptr < f->buffer) - ptr = f->end - (f->buffer - ptr); - return ptr; -} -#endif #endif /** diff --git a/libavutil/version.h b/libavutil/version.h index 772c4e209c..a67a51c933 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_FIFO_PEEK2 (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_FIFO_OLD_API (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_XVMC (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_OLD_CHANNEL_LAYOUT (LIBAVUTIL_VERSION_MAJOR < 59) From patchwork Thu Jan 25 13:43:37 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45824 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81724pzf; Thu, 25 Jan 2024 05:46:58 -0800 (PST) X-Google-Smtp-Source: AGHT+IFQTT0T2NHoFmHNCAhoK1Yb2Y4y2Zf5Hu5DV8yRPQpMeD3WoCzQF+m74ZsA+ULeBihpGjAU X-Received: by 2002:a05:6402:1d96:b0:55c:c0a7:8dab with SMTP id dk22-20020a0564021d9600b0055cc0a78dabmr985750edb.19.1706190418203; Thu, 25 Jan 2024 05:46:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190417; cv=none; d=google.com; s=arc-20160816; b=HGl00kuyEHdMM0ZXI8AcCVz6W0QwitEwq+eIyK88i4UR+77lhessBZ2z6goPyJJoym JajqP00N8uIEAYWt3xdjsSlvwEhMlc8i0loKjssPu2Ah8Px17rWTf1YWF9CmjDl0Gvj4 D4HgITPnhMXSFlY/mIfNI124d8bCU0R+1MngasM0STexjILTvPKFO+9IO8H6vXggKS6K BUY9IKl2/WChOk0IsHYSOSx8Iae1NTdm3c0VMnGvq1xFi+1xVx9agmfdOEPPoe5fFOMS a0oK3WdRI06WQ3et1THh78i/ZwQ1DyYxsxUTdXyOkCpn5jHjfbBDsUuXtJrKt5SEqs2Z 5xcg== 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=OTiT7yDojS/jygZCK6XgCrJ9/ocwRfELsOA3YSjztwM=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=aKGHnpnABBAedTk+YsZbwnqz34QN5RvZUtb7PdbtlZhJIxVE2aADsifwWBsKSBrdqG Uy//dud1HSZzT4Vni5Q01HrM1m96byAllkhRNd7IHvHkM6Hp/u7UvzZ9E1DxXQ8LZIE3 5NlXITM9bXu6ZeqyWQLfjO1Ma0RimT56Hg2wGLadBF8MLUEEWQj6BcMlXjT/3ifSl7GC 4DneP3B3M5kgLHKaMUnkDEcK+mlxHs8Z5U++JA0xQ1VkPe1G3xzb94ONPP/Me3Tz01Ar Ro7+zAcG9NnEjhh+1erXkx16KYpyV7oWB3ZV8Z7/YvBJXSGtZUTXoJk5z6XEu4ZA1sUg ow4w== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b="FOxjo/QT"; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id t1-20020a056402240100b0055a8321f767si6269994eda.258.2024.01.25.05.46.57; Thu, 25 Jan 2024 05:46:57 -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=@gmail.com header.s=20230601 header.b="FOxjo/QT"; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 1FE9E68D191; Thu, 25 Jan 2024 15:45:00 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0869868D14E for ; Thu, 25 Jan 2024 15:44:51 +0200 (EET) Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-1d7858a469aso12007195ad.2 for ; Thu, 25 Jan 2024 05:44:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190289; x=1706795089; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=z5JYS6qtLHtiqNmBAhwfVP3yREl1hl9tzjDCaHPz4Ak=; b=FOxjo/QTAKKacsCbuUkKnYwY1q/YS35ObzmnY3VIVZcfxZ+bIbNKiqErl2FZhrmFzf ACZjnUAS/mpVnQMIvRALge1baMfT9HecVuHtZ0ugtcJKvzVadPsvKW5aqY1rwU4IUm/g saqMR1FW8IfaAL4C9Ro8wY5xphbOx/I8EU1P5Gc52zZVOXnBZ4Wn0DUgMSuGAEvlJd95 +UAoPEa59oV4Bbu2vJfJK7U14CnY/4sGJNFMDuW72wF4ybTbabZI+ymXTRLh+R002eL3 4yl7aC80rqJqZKKf1BX83q0ztH+QZ3EZ9heQwEzigS7jE6J7vf23qtbJIDGQlGiEVULB RTXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190289; x=1706795089; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=z5JYS6qtLHtiqNmBAhwfVP3yREl1hl9tzjDCaHPz4Ak=; b=l7+87DLb6rWe+cVY81dF1JYj5MPQic8HXD6GP9iD85Oe01THg46VvF4bO293j1pVYZ 1iJ+7mv0x6uzo6xWHVS3j52xvmXi+N/gpbHXCnJL7rzVgyU4vX9/8dwmb8286c06D6nS /1EaXVPtkT8B1ZLZatdceCnvOdmZU3TB1RC09CEQ3otKg0Xz95cBh7rkQAzaG11DVsKy cQiQuyhEWaqzHyaKQYiXmEPex19KfQC0lMQmkLrE6saXfQNB+e2uIBLdEdr2GFHnZvPp tfHDXzol50jslRkfZ5gNTtaMBn2YOXDTHvquyO7cZibG/KkLQm5uxauOdpCO9/QrTjVn rtwg== X-Gm-Message-State: AOJu0YzHjxmNnnWZHyRFo5514TMTATXcLrqsjsC9VfdpCy6SCEep90m9 saKRit0wKD5oZpqEjRhTSPdufJtLEqALYenPxy/rsHLxslc5edFiJENIEr7Y X-Received: by 2002:a17:902:db07:b0:1d7:61f9:a5bb with SMTP id m7-20020a170902db0700b001d761f9a5bbmr828550plx.93.1706190289086; Thu, 25 Jan 2024 05:44:49 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.48 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:48 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:37 -0300 Message-ID: <20240125134425.374-15-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 14/24] avutil: remove deprecated FF_API_FIFO_OLD_API 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: 7uQKDNW3dOWO Signed-off-by: James Almer --- libavutil/fifo.c | 219 -------------------------------------------- libavutil/fifo.h | 179 ------------------------------------ libavutil/version.h | 1 - 3 files changed, 399 deletions(-) diff --git a/libavutil/fifo.c b/libavutil/fifo.c index b0807abbf7..8806c668d7 100644 --- a/libavutil/fifo.c +++ b/libavutil/fifo.c @@ -290,222 +290,3 @@ void av_fifo_freep2(AVFifo **f) av_freep(f); } } - - -#if FF_API_FIFO_OLD_API -#include "internal.h" -FF_DISABLE_DEPRECATION_WARNINGS -#define OLD_FIFO_SIZE_MAX (size_t)FFMIN3(INT_MAX, UINT32_MAX, SIZE_MAX) - -AVFifoBuffer *av_fifo_alloc_array(size_t nmemb, size_t size) -{ - AVFifoBuffer *f; - void *buffer; - - if (nmemb > OLD_FIFO_SIZE_MAX / size) - return NULL; - - buffer = av_realloc_array(NULL, nmemb, size); - if (!buffer) - return NULL; - f = av_mallocz(sizeof(AVFifoBuffer)); - if (!f) { - av_free(buffer); - return NULL; - } - f->buffer = buffer; - f->end = f->buffer + nmemb * size; - av_fifo_reset(f); - return f; -} - -AVFifoBuffer *av_fifo_alloc(unsigned int size) -{ - return av_fifo_alloc_array(size, 1); -} - -void av_fifo_free(AVFifoBuffer *f) -{ - if (f) { - av_freep(&f->buffer); - av_free(f); - } -} - -void av_fifo_freep(AVFifoBuffer **f) -{ - if (f) { - av_fifo_free(*f); - *f = NULL; - } -} - -void av_fifo_reset(AVFifoBuffer *f) -{ - f->wptr = f->rptr = f->buffer; - f->wndx = f->rndx = 0; -} - -int av_fifo_size(const AVFifoBuffer *f) -{ - return (uint32_t)(f->wndx - f->rndx); -} - -int av_fifo_space(const AVFifoBuffer *f) -{ - return f->end - f->buffer - av_fifo_size(f); -} - -int av_fifo_realloc2(AVFifoBuffer *f, unsigned int new_size) -{ - unsigned int old_size = f->end - f->buffer; - - if (new_size > OLD_FIFO_SIZE_MAX) - return AVERROR(EINVAL); - - if (old_size < new_size) { - size_t offset_r = f->rptr - f->buffer; - size_t offset_w = f->wptr - f->buffer; - uint8_t *tmp; - - tmp = av_realloc(f->buffer, new_size); - if (!tmp) - return AVERROR(ENOMEM); - - // move the data from the beginning of the ring buffer - // to the newly allocated space - // the second condition distinguishes full vs empty fifo - if (offset_w <= offset_r && av_fifo_size(f)) { - const size_t copy = FFMIN(new_size - old_size, offset_w); - memcpy(tmp + old_size, tmp, copy); - if (copy < offset_w) { - memmove(tmp, tmp + copy , offset_w - copy); - offset_w -= copy; - } else - offset_w = old_size + copy; - } - - f->buffer = tmp; - f->end = f->buffer + new_size; - f->rptr = f->buffer + offset_r; - f->wptr = f->buffer + offset_w; - } - return 0; -} - -int av_fifo_grow(AVFifoBuffer *f, unsigned int size) -{ - unsigned int old_size = f->end - f->buffer; - if(size + (unsigned)av_fifo_size(f) < size) - return AVERROR(EINVAL); - - size += av_fifo_size(f); - - if (old_size < size) - return av_fifo_realloc2(f, FFMAX(size, 2*old_size)); - return 0; -} - -/* src must NOT be const as it can be a context for func that may need - * updating (like a pointer or byte counter) */ -int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size, - int (*func)(void *, void *, int)) -{ - int total = size; - uint32_t wndx= f->wndx; - uint8_t *wptr= f->wptr; - - if (size > av_fifo_space(f)) - return AVERROR(ENOSPC); - - do { - int len = FFMIN(f->end - wptr, size); - if (func) { - len = func(src, wptr, len); - if (len <= 0) - break; - } else { - memcpy(wptr, src, len); - src = (uint8_t *)src + len; - } - wptr += len; - if (wptr >= f->end) - wptr = f->buffer; - wndx += len; - size -= len; - } while (size > 0); - f->wndx= wndx; - f->wptr= wptr; - return total - size; -} - -int av_fifo_generic_peek_at(AVFifoBuffer *f, void *dest, int offset, int buf_size, void (*func)(void*, void*, int)) -{ - uint8_t *rptr = f->rptr; - - if (offset < 0 || buf_size > av_fifo_size(f) - offset) - return AVERROR(EINVAL); - - if (offset >= f->end - rptr) - rptr += offset - (f->end - f->buffer); - else - rptr += offset; - - while (buf_size > 0) { - int len; - - if (rptr >= f->end) - rptr -= f->end - f->buffer; - - len = FFMIN(f->end - rptr, buf_size); - if (func) - func(dest, rptr, len); - else { - memcpy(dest, rptr, len); - dest = (uint8_t *)dest + len; - } - - buf_size -= len; - rptr += len; - } - - return 0; -} - -int av_fifo_generic_peek(AVFifoBuffer *f, void *dest, int buf_size, - void (*func)(void *, void *, int)) -{ - return av_fifo_generic_peek_at(f, dest, 0, buf_size, func); -} - -int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, - void (*func)(void *, void *, int)) -{ - if (buf_size > av_fifo_size(f)) - return AVERROR(EINVAL); - - do { - int len = FFMIN(f->end - f->rptr, buf_size); - if (func) - func(dest, f->rptr, len); - else { - memcpy(dest, f->rptr, len); - dest = (uint8_t *)dest + len; - } - av_fifo_drain(f, len); - buf_size -= len; - } while (buf_size > 0); - return 0; -} - -/** Discard data from the FIFO. */ -void av_fifo_drain(AVFifoBuffer *f, int size) -{ - av_assert2(av_fifo_size(f) >= size); - f->rptr += size; - if (f->rptr >= f->end) - f->rptr -= f->end - f->buffer; - f->rndx += size; -} -FF_ENABLE_DEPRECATION_WARNINGS -#endif diff --git a/libavutil/fifo.h b/libavutil/fifo.h index 7ac497e8f9..048298214a 100644 --- a/libavutil/fifo.h +++ b/libavutil/fifo.h @@ -239,185 +239,6 @@ void av_fifo_reset2(AVFifo *f); */ void av_fifo_freep2(AVFifo **f); - -#if FF_API_FIFO_OLD_API -typedef struct AVFifoBuffer { - uint8_t *buffer; - uint8_t *rptr, *wptr, *end; - uint32_t rndx, wndx; -} AVFifoBuffer; - -/** - * Initialize an AVFifoBuffer. - * @param size of FIFO - * @return AVFifoBuffer or NULL in case of memory allocation failure - * @deprecated use av_fifo_alloc2() - */ -attribute_deprecated -AVFifoBuffer *av_fifo_alloc(unsigned int size); - -/** - * Initialize an AVFifoBuffer. - * @param nmemb number of elements - * @param size size of the single element - * @return AVFifoBuffer or NULL in case of memory allocation failure - * @deprecated use av_fifo_alloc2() - */ -attribute_deprecated -AVFifoBuffer *av_fifo_alloc_array(size_t nmemb, size_t size); - -/** - * Free an AVFifoBuffer. - * @param f AVFifoBuffer to free - * @deprecated use the AVFifo API with av_fifo_freep2() - */ -attribute_deprecated -void av_fifo_free(AVFifoBuffer *f); - -/** - * Free an AVFifoBuffer and reset pointer to NULL. - * @param f AVFifoBuffer to free - * @deprecated use the AVFifo API with av_fifo_freep2() - */ -attribute_deprecated -void av_fifo_freep(AVFifoBuffer **f); - -/** - * Reset the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied. - * @param f AVFifoBuffer to reset - * @deprecated use av_fifo_reset2() with the new AVFifo-API - */ -attribute_deprecated -void av_fifo_reset(AVFifoBuffer *f); - -/** - * Return the amount of data in bytes in the AVFifoBuffer, that is the - * amount of data you can read from it. - * @param f AVFifoBuffer to read from - * @return size - * @deprecated use av_fifo_can_read() with the new AVFifo-API - */ -attribute_deprecated -int av_fifo_size(const AVFifoBuffer *f); - -/** - * Return the amount of space in bytes in the AVFifoBuffer, that is the - * amount of data you can write into it. - * @param f AVFifoBuffer to write into - * @return size - * @deprecated use av_fifo_can_write() with the new AVFifo-API - */ -attribute_deprecated -int av_fifo_space(const AVFifoBuffer *f); - -/** - * Feed data at specific position from an AVFifoBuffer to a user-supplied callback. - * Similar as av_fifo_gereric_read but without discarding data. - * @param f AVFifoBuffer to read from - * @param offset offset from current read position - * @param buf_size number of bytes to read - * @param func generic read function - * @param dest data destination - * - * @return a non-negative number on success, a negative error code on failure - * - * @deprecated use the new AVFifo-API with av_fifo_peek() when func == NULL, - * av_fifo_peek_to_cb() otherwise - */ -attribute_deprecated -int av_fifo_generic_peek_at(AVFifoBuffer *f, void *dest, int offset, int buf_size, void (*func)(void*, void*, int)); - -/** - * Feed data from an AVFifoBuffer to a user-supplied callback. - * Similar as av_fifo_gereric_read but without discarding data. - * @param f AVFifoBuffer to read from - * @param buf_size number of bytes to read - * @param func generic read function - * @param dest data destination - * - * @return a non-negative number on success, a negative error code on failure - * - * @deprecated use the new AVFifo-API with av_fifo_peek() when func == NULL, - * av_fifo_peek_to_cb() otherwise - */ -attribute_deprecated -int av_fifo_generic_peek(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int)); - -/** - * Feed data from an AVFifoBuffer to a user-supplied callback. - * @param f AVFifoBuffer to read from - * @param buf_size number of bytes to read - * @param func generic read function - * @param dest data destination - * - * @return a non-negative number on success, a negative error code on failure - * - * @deprecated use the new AVFifo-API with av_fifo_read() when func == NULL, - * av_fifo_read_to_cb() otherwise - */ -attribute_deprecated -int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int)); - -/** - * Feed data from a user-supplied callback to an AVFifoBuffer. - * @param f AVFifoBuffer to write to - * @param src data source; non-const since it may be used as a - * modifiable context by the function defined in func - * @param size number of bytes to write - * @param func generic write function; the first parameter is src, - * the second is dest_buf, the third is dest_buf_size. - * func must return the number of bytes written to dest_buf, or <= 0 to - * indicate no more data available to write. - * If func is NULL, src is interpreted as a simple byte array for source data. - * @return the number of bytes written to the FIFO or a negative error code on failure - * - * @deprecated use the new AVFifo-API with av_fifo_write() when func == NULL, - * av_fifo_write_from_cb() otherwise - */ -attribute_deprecated -int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size, int (*func)(void*, void*, int)); - -/** - * Resize an AVFifoBuffer. - * In case of reallocation failure, the old FIFO is kept unchanged. - * - * @param f AVFifoBuffer to resize - * @param size new AVFifoBuffer size in bytes - * @return <0 for failure, >=0 otherwise - * - * @deprecated use the new AVFifo-API with av_fifo_grow2() to increase FIFO size, - * decreasing FIFO size is not supported - */ -attribute_deprecated -int av_fifo_realloc2(AVFifoBuffer *f, unsigned int size); - -/** - * Enlarge an AVFifoBuffer. - * In case of reallocation failure, the old FIFO is kept unchanged. - * The new fifo size may be larger than the requested size. - * - * @param f AVFifoBuffer to resize - * @param additional_space the amount of space in bytes to allocate in addition to av_fifo_size() - * @return <0 for failure, >=0 otherwise - * - * @deprecated use the new AVFifo-API with av_fifo_grow2(); note that unlike - * this function it adds to the allocated size, rather than to the used size - */ -attribute_deprecated -int av_fifo_grow(AVFifoBuffer *f, unsigned int additional_space); - -/** - * Read and discard the specified amount of data from an AVFifoBuffer. - * @param f AVFifoBuffer to read from - * @param size amount of data to read in bytes - * - * @deprecated use the new AVFifo-API with av_fifo_drain2() - */ -attribute_deprecated -void av_fifo_drain(AVFifoBuffer *f, int size); - -#endif - /** * @} */ diff --git a/libavutil/version.h b/libavutil/version.h index a67a51c933..bd7266aca7 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_FIFO_OLD_API (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_XVMC (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_OLD_CHANNEL_LAYOUT (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_AV_FOPEN_UTF8 (LIBAVUTIL_VERSION_MAJOR < 59) From patchwork Thu Jan 25 13:43:38 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45825 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81814pzf; Thu, 25 Jan 2024 05:47:08 -0800 (PST) X-Google-Smtp-Source: AGHT+IHK4F5XYRhuTtxHG9GG1vcbSs0hqO0k8NM60SUcR7yuiKI0rxdRkZoRe/L2X3XAO4K+AYKF X-Received: by 2002:a50:c099:0:b0:55c:828e:4bfa with SMTP id k25-20020a50c099000000b0055c828e4bfamr968578edf.12.1706190428015; Thu, 25 Jan 2024 05:47:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190427; cv=none; d=google.com; s=arc-20160816; b=PocvxPepTw5WE/Q3GYW0eEmLrJir//+f7R7qFCj/JKbX3yom0Key10E0hDmE9T69aw gR22myxU1HAbxaYoCRZx5FNYFc0bt3RupVpnVP1riZUcK4dPmDO3KjHgwtH68l8FyW8w TZ+3s1jq7916Ua6Zlixi87ALm/yNqNH77oNvVonCYpuDAL7evlOIJ8Yy1Szvv2lUTjQR 9WWc/0PgUxL+rrygZ7KdV4vd0J9sPyfMVsP8hAxlVJCAIrrWXNqPtkZx1MxekB3iN/Kx 9yZN0P/EfOOMrOFENxwOSto74wNRINoQ+HV3368yexAIIK5xQRBqZ3KXZ3BZL1cJRSGu 0Yeg== 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=OgceehdlBaI8e0Dh3UocBItLf1etkJFTvdL15TqpFOs=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=SP8bpBm2CYwg++7WW39QM7lT7BMBiMxUEMqNDnIMMmOSfWhWirH6jHZgW8y98QgNOv sMaEm8Mv1Nmzx6WvrAJvowV1lzQ2SQs4hh6jZb66h8X8O27amI77NpGCL+md/valIkby tO9h+2ZCInRIPlmacOopRLBGlNrl7+tFPxEl0aXKEcVSnN7aO62md0A1Pvw4OMjEPUii ot39rxu87eriozFes+AS/vfDRVkUKXzOeIWgDjSFg3ifjCg1w4mI/PlOvbD8nGmD5RBg hrG076JIw//kG57tlwzP6LkTdn6jq+JzdVWfZykJW/JSMc5vS8CfxKLlNCZAz/edimG/ 5xfA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=ALSqimNa; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id fj11-20020a0564022b8b00b0055cec81d276si928530edb.611.2024.01.25.05.47.07; Thu, 25 Jan 2024 05:47:07 -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=@gmail.com header.s=20230601 header.b=ALSqimNa; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6766568D193; Thu, 25 Jan 2024 15:45:01 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5E2E368D152 for ; Thu, 25 Jan 2024 15:44:53 +0200 (EET) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-1d731314e67so25944205ad.1 for ; Thu, 25 Jan 2024 05:44:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190291; x=1706795091; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=m88gg6L39XBTkZ5MZNlKppnzOLfuiaSy0IMYz+ie6CQ=; b=ALSqimNaqEvp2HsXSem1L2NMazeIO6+9iVwoFYcH5WGFKIwkP8jnsg7P3qNrwqy623 DN6vnGszost2Q4IWFAQMDtNlSNt+5tbzTierLKvRJJL1/H8XrsTkfhgPb8ny8yguaux3 4zsEFy50iLQQZnv1MnQb+zn/VsFXv6WBKtceDVATgkM/Td4CCpTQsarMehuqe9RwIbcY tvv++jwZZVBKm81KULp729q8macrLLCRaezLJct7x9SBpDxxur9KNbLowZ7FPG0udL0i GVeTO2RL4VX+SDg0hXQGzvY8QoT2sZf6HFp7kGSGunpJvQUSNMu8z4qni0kLpX4eNXZ1 L28w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190291; x=1706795091; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=m88gg6L39XBTkZ5MZNlKppnzOLfuiaSy0IMYz+ie6CQ=; b=Glqi5HkB03nfHJv+I/+J+VZDdqds7UZqw5+7Kv0vue51g5J0U2IdTscs1w2HOBBk7/ q0bN/aYdKnaUSJEu53fc96YwP62eZQeCkZpJeVbSqLDJKmQoTo+Ait7L8KcOgqim6Iyu uGLbv6QqpEaCpYdvxV0rtKT2GHDqrHhYCQez9mI3BDFb5RmMHWi2c/rVHpWcAa5YdCOb DDVZClZm8V2tpfv0Mweh5K+lQDH8z/smIXeYJp7zlYXabehJCBUaX0yfWgOtlXiz/HAJ CgcYfPaAgar7uuXFbRjN/Gb29GB4RW0Aga8Gx8jJcSHoD+rdcm7KWCp5YVp+kQZxvzio riig== X-Gm-Message-State: AOJu0YxpIirVNyozPM9+sct4oir8jWskerHK1Sqnrqvay4JUoyq+HOIO XwOOmGdo1dr5Mwx5bQZARptdUDw2Ao5SyzKvlSeXwmn5Ktrj2kNlOJQNS03p X-Received: by 2002:a17:902:d58e:b0:1d7:4f6:931b with SMTP id k14-20020a170902d58e00b001d704f6931bmr907726plh.18.1706190290780; Thu, 25 Jan 2024 05:44:50 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.49 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:50 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:38 -0300 Message-ID: <20240125134425.374-16-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 15/24] avutil: remove deprecated FF_API_XVMC 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: 8LSYdWcFDHSX Signed-off-by: James Almer --- libavutil/pixdesc.c | 6 ------ libavutil/pixfmt.h | 4 ---- libavutil/version.h | 1 - 3 files changed, 11 deletions(-) diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index f6d4d01460..9c708520b1 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -460,12 +460,6 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { }, .flags = AV_PIX_FMT_FLAG_PLANAR, }, -#if FF_API_XVMC - [AV_PIX_FMT_XVMC] = { - .name = "xvmc", - .flags = AV_PIX_FMT_FLAG_HWACCEL, - }, -#endif [AV_PIX_FMT_UYVY422] = { .name = "uyvy422", .nb_components = 3, diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h index 9c87571f49..74aecb8177 100644 --- a/libavutil/pixfmt.h +++ b/libavutil/pixfmt.h @@ -288,10 +288,6 @@ enum AVPixelFormat { AV_PIX_FMT_BAYER_GRBG16LE, ///< bayer, GRGR..(odd line), BGBG..(even line), 16-bit samples, little-endian AV_PIX_FMT_BAYER_GRBG16BE, ///< bayer, GRGR..(odd line), BGBG..(even line), 16-bit samples, big-endian -#if FF_API_XVMC - AV_PIX_FMT_XVMC,///< XVideo Motion Acceleration via common packet passing -#endif - AV_PIX_FMT_YUV440P10LE, ///< planar YUV 4:4:0,20bpp, (1 Cr & Cb sample per 1x2 Y samples), little-endian AV_PIX_FMT_YUV440P10BE, ///< planar YUV 4:4:0,20bpp, (1 Cr & Cb sample per 1x2 Y samples), big-endian AV_PIX_FMT_YUV440P12LE, ///< planar YUV 4:4:0,24bpp, (1 Cr & Cb sample per 1x2 Y samples), little-endian diff --git a/libavutil/version.h b/libavutil/version.h index bd7266aca7..0f14fc59bb 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_XVMC (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_OLD_CHANNEL_LAYOUT (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_AV_FOPEN_UTF8 (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_PKT_DURATION (LIBAVUTIL_VERSION_MAJOR < 59) From patchwork Thu Jan 25 13:43:39 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45827 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82016pzf; Thu, 25 Jan 2024 05:47:27 -0800 (PST) X-Google-Smtp-Source: AGHT+IG8jYnVROAxjkNjHhrMISw72W0/Hi5vT726CE2nYw+KkzHAhuvy3BqReJBBFoMZ25HPWn++ X-Received: by 2002:a05:6512:4018:b0:510:475:73cf with SMTP id br24-20020a056512401800b00510047573cfmr680062lfb.133.1706190447189; Thu, 25 Jan 2024 05:47:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190447; cv=none; d=google.com; s=arc-20160816; b=imf/62TaLL0cxSJOzuIT0I5ZCAlnS3NRSD7OsI13HNQ3fiEboLMbup6js4CeesDK7z UeARRV++dMzq2vgjkugojDnR6mdrS/11fZuJPYBI0U1sg2PzXr7JXTkp/NqQEq9dqcQj wvUEekyJfy4SKfPrge4zaT7ksqrGPKuLoP4je7EcsoJ7Pvf9qtLZgdemM2H30JSmCcnF wnbzSjDbtfEfh7KLD+u2EOPIVjGeKqlUS0Ww91iGAnOprCv+DlKvZfcDsFgu3+WCyK7a R56Te14pLBZklG1PATdu+xfKBViCtycpbo7sKKQrZTelDxNVGKtOS0W/7W+cub395zN9 rzJw== 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=PI9JWi9+g1KBlds3KqWNZMe7VfI4jg5Vk4L8Sa2XkwU=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=KxI4NJ+QmxVD9pS+5zhPPAj4NGsUnbOujgNUmxng/C+S6nab5A6ztmgC8ZOf/XVOjU XroCBuEill0Dvr2MrKjUb2YZp3nCvzrJVkV4Mvu5oZT5aWI6UBUovID5IhKjVnfBreIs VtAXvpdMmtZ/g6p0eUQF4ssJ4cAultcsRkxGMav+G29ZMiPy7QCnD32lFHGrbs39CXjx qYyyLRDnj4sl2/WlXWWj1tCq0XLdCiHH1tf4G7TXpbWkaxGJB4WbsbDe7SI+J0PvzZT1 +y+vQvacHtk6K07H9OQf/ZlRfaWZ0uIk7YGjQG9pKbtUc5AjQPrwhExXmSj7RUMKqAcP G+2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=m3yLVNwO; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id x9-20020a1709064a8900b00a30f523cc6csi957006eju.873.2024.01.25.05.47.26; Thu, 25 Jan 2024 05:47:27 -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=@gmail.com header.s=20230601 header.b=m3yLVNwO; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 88F3B68D199; Thu, 25 Jan 2024 15:45:04 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pf1-f171.google.com (mail-pf1-f171.google.com [209.85.210.171]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A75DE68D180 for ; Thu, 25 Jan 2024 15:44:57 +0200 (EET) Received: by mail-pf1-f171.google.com with SMTP id d2e1a72fcca58-6ddb807e23bso1131181b3a.0 for ; Thu, 25 Jan 2024 05:44:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190294; x=1706795094; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=T0PHH9J9in7gkziafDJUk8Q27jfo51htHg6Wvy0AmkQ=; b=m3yLVNwOno2OUc3ewLxjxUXCjtxLfgG3b2zcQ0h0xdUmWxicfTkviZPBe8WYchXPOC MgaD//LmJEoDN1s0usZqGYufR+iZgIbjRbCNNvZhuYPaxuCPE23VU8h16rYFgbDZ1Gfd HQoXrrCILy1iXrj8XDyS7KIyjwjZNhZE8vkOnAWVZMKy4KTO5x9uDVBx66O33EkDbfbh 8se9g7WLmTYHvCvEPrD97SxjJTFIEVhVobqJLDYzOV7R0gfm1CWEAyh8+8VHOoG/uxsQ whrtMnm4Sel59rwUM0GktY60FUIKLxXKHB1FXrz1IgytQxLj89Ol3Hkrh6ZTpP76oZaY RzCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190294; x=1706795094; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=T0PHH9J9in7gkziafDJUk8Q27jfo51htHg6Wvy0AmkQ=; b=JRw4hCC8j/c7OpGdQkdqABeKETmY2XzYrGSV1XXJaQqO4PxPtfMHk+TTALUbE6ntkt yAYFk+/0lfkjsfRatwigcICLkEMKvVaxeBaQqmghmMxBl0mfP7Z7iAfuXbQ4bLocsJqb MKugfhs/PYphyaxb2q3QPpyVqaXBe9xT6MaclPynvlZNgEpX8Qm1dQJ6FOpSM9Cej1BV z+Pv/bRBbEbjK7d4Nthh5B1O9P9d7G9dDo4+k+G9mr+AI29jfJ2AkNyRV/LYHLplTKFa LbZk7cevwLcuKOgzDla0o1ksVJe3dR0tx95Urke51026mL298PrqtPiEnGTC7+R7M852 KHQg== X-Gm-Message-State: AOJu0Yzeew+NKxSz6vG4FMHowrBzhOn/fvJHc4c6DgBWzuepcCnz+89T 77R089Sl7JHyqkJ0Drmxipt9HmSlFaRcHl39no93ifz4HBZMAzgp+ET7kC+P X-Received: by 2002:a05:6a20:8420:b0:19c:6acd:9955 with SMTP id c32-20020a056a20842000b0019c6acd9955mr965110pzd.21.1706190292596; Thu, 25 Jan 2024 05:44:52 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.51 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:52 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:39 -0300 Message-ID: <20240125134425.374-17-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 16/24] avutil: remove deprecated FF_API_OLD_CHANNEL_LAYOUT 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: TbfmxOn2gbji Signed-off-by: James Almer --- fftools/ffmpeg_mux_init.c | 21 +--- libavcodec/aac_ac3_parser.c | 6 - libavcodec/aacdec.c | 2 - libavcodec/aacdec_common.c | 17 --- libavcodec/aacdec_fixed.c | 1 - libavcodec/aacdec_template.c | 7 -- libavcodec/aacdectab.h | 4 - libavcodec/ac3dec.c | 8 -- libavcodec/ac3enc.c | 24 ---- libavcodec/ac3enc.h | 3 - libavcodec/ac3enc_fixed.c | 1 - libavcodec/ac3enc_float.c | 1 - libavcodec/alacenc.c | 16 --- libavcodec/aptxdec.c | 2 - libavcodec/aptxenc.c | 2 - libavcodec/audiotoolboxenc.c | 19 --- libavcodec/avcodec.c | 29 ----- libavcodec/avcodec.h | 29 ----- libavcodec/codec.h | 7 -- libavcodec/codec_internal.h | 19 --- libavcodec/codec_par.c | 46 ------- libavcodec/codec_par.h | 16 --- libavcodec/dcadec.c | 12 -- libavcodec/dcaenc.c | 3 - libavcodec/decode.c | 51 -------- libavcodec/dolby_e.c | 7 -- libavcodec/eac3enc.c | 1 - libavcodec/g722enc.c | 1 - libavcodec/get_buffer.c | 6 - libavcodec/libcodec2.c | 2 - libavcodec/libfdk-aacdec.c | 8 -- libavcodec/libfdk-aacenc.c | 23 ---- libavcodec/libgsmenc.c | 2 - libavcodec/libmp3lame.c | 1 - libavcodec/libshine.c | 1 - libavcodec/libspeexenc.c | 1 - libavcodec/libtwolame.c | 1 - libavcodec/mlp.c | 9 -- libavcodec/mlp.h | 3 - libavcodec/mlpdec.c | 9 -- libavcodec/mlpenc.c | 2 - libavcodec/mpegaudioenc_fixed.c | 1 - libavcodec/mpegaudioenc_float.c | 1 - libavcodec/options_table.h | 7 -- libavcodec/opusenc.c | 1 - libavcodec/packet.h | 7 -- libavcodec/pcm-blurayenc.c | 11 -- libavcodec/pcm-dvdenc.c | 2 - libavcodec/pthread_frame.c | 6 - libavcodec/ra144enc.c | 1 - libavcodec/sbcdec.c | 1 - libavcodec/sbcenc.c | 1 - libavcodec/utils.c | 14 +-- libavcodec/vorbis_data.c | 14 --- libavcodec/vorbis_data.h | 3 - libavcodec/vorbisdec.c | 1 - libavfilter/af_afir.c | 5 - libavfilter/af_aformat.c | 13 -- libavfilter/af_amerge.c | 6 - libavfilter/af_aresample.c | 6 - libavfilter/af_ashowinfo.c | 10 -- libavfilter/af_channelmap.c | 6 - libavfilter/af_channelsplit.c | 7 -- libavfilter/af_join.c | 6 - libavfilter/af_ladspa.c | 5 - libavfilter/af_lv2.c | 5 - libavfilter/af_pan.c | 6 - libavfilter/audio.c | 12 -- libavfilter/avfilter.h | 8 -- libavfilter/avfiltergraph.c | 6 - libavfilter/buffersink.c | 70 +---------- libavfilter/buffersink.h | 4 - libavfilter/buffersrc.c | 44 +------ libavfilter/buffersrc.h | 9 -- libavfilter/f_streamselect.c | 5 - libavfilter/formats.c | 20 +-- libavfilter/framepool.c | 5 - libavfilter/tests/formats.c | 3 - libavformat/demux.c | 19 --- libavformat/demux_utils.c | 20 --- libavformat/dfpwmdec.c | 17 +-- libavformat/dump.c | 25 ---- libavformat/mux.c | 16 --- libavformat/nutdec.c | 4 - libavformat/nutenc.c | 15 --- libavformat/pcmdec.c | 20 --- libavutil/channel_layout.c | 184 ---------------------------- libavutil/channel_layout.h | 150 ----------------------- libavutil/frame.c | 127 +------------------ libavutil/frame.h | 20 --- libavutil/opt.c | 112 ----------------- libavutil/opt.h | 11 -- libavutil/version.h | 1 - libswresample/options.c | 22 ---- libswresample/rematrix.c | 48 +------- libswresample/swresample.c | 120 ------------------ libswresample/swresample.h | 63 ---------- libswresample/swresample_frame.c | 47 +------ libswresample/swresample_internal.h | 7 -- tests/ref/fate/filter-formats | 3 - 100 files changed, 20 insertions(+), 1786 deletions(-) diff --git a/fftools/ffmpeg_mux_init.c b/fftools/ffmpeg_mux_init.c index 6b5e4f8b3c..cf9897906c 100644 --- a/fftools/ffmpeg_mux_init.c +++ b/fftools/ffmpeg_mux_init.c @@ -851,24 +851,9 @@ static int new_stream_audio(Muxer *mux, const OptionsContext *o, } MATCH_PER_STREAM_OPT(audio_ch_layouts, str, layout, oc, st); - if (layout) { - if (av_channel_layout_from_string(&audio_enc->ch_layout, layout) < 0) { -#if FF_API_OLD_CHANNEL_LAYOUT - uint64_t mask; - AV_NOWARN_DEPRECATED({ - mask = av_get_channel_layout(layout); - }) - if (!mask) { -#endif - av_log(ost, AV_LOG_FATAL, "Unknown channel layout: %s\n", layout); - return AVERROR(EINVAL); -#if FF_API_OLD_CHANNEL_LAYOUT - } - av_log(ost, AV_LOG_WARNING, "Channel layout '%s' uses a deprecated syntax.\n", - layout); - av_channel_layout_from_mask(&audio_enc->ch_layout, mask); -#endif - } + if (layout && av_channel_layout_from_string(&audio_enc->ch_layout, layout) < 0) { + av_log(ost, AV_LOG_FATAL, "Unknown channel layout: %s\n", layout); + return AVERROR(EINVAL); } MATCH_PER_STREAM_OPT(sample_fmts, str, sample_fmt, oc, st); diff --git a/libavcodec/aac_ac3_parser.c b/libavcodec/aac_ac3_parser.c index 83d515b5a8..9305b4c50f 100644 --- a/libavcodec/aac_ac3_parser.c +++ b/libavcodec/aac_ac3_parser.c @@ -135,12 +135,6 @@ get_next: avctx->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; avctx->ch_layout.nb_channels = hdr.channels; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - avctx->channels = avctx->ch_layout.nb_channels; - avctx->channel_layout = hdr.channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } s1->duration = hdr.num_blocks * 256; avctx->audio_service_type = hdr.bitstream_mode; diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c index d66ebf4a7c..fe1d3ce55d 100644 --- a/libavcodec/aacdec.c +++ b/libavcodec/aacdec.c @@ -564,7 +564,6 @@ const FFCodec ff_aac_decoder = { }, .p.capabilities = AV_CODEC_CAP_CHANNEL_CONF | AV_CODEC_CAP_DR1, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_aac_channel_layout) .p.ch_layouts = ff_aac_ch_layout, .flush = flush, .p.priv_class = &aac_decoder_class, @@ -590,7 +589,6 @@ const FFCodec ff_aac_latm_decoder = { }, .p.capabilities = AV_CODEC_CAP_CHANNEL_CONF | AV_CODEC_CAP_DR1, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_aac_channel_layout) .p.ch_layouts = ff_aac_ch_layout, .flush = flush, .p.profiles = NULL_IF_CONFIG_SMALL(ff_aac_profiles), diff --git a/libavcodec/aacdec_common.c b/libavcodec/aacdec_common.c index 75368b7075..145c718047 100644 --- a/libavcodec/aacdec_common.c +++ b/libavcodec/aacdec_common.c @@ -92,23 +92,6 @@ const int16_t ff_aac_channel_map[3][4][6] = { }, }; -#if FF_API_OLD_CHANNEL_LAYOUT -const uint64_t ff_aac_channel_layout[] = { - AV_CH_LAYOUT_MONO, - AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_4POINT0, - AV_CH_LAYOUT_5POINT0_BACK, - AV_CH_LAYOUT_5POINT1_BACK, - AV_CH_LAYOUT_7POINT1_WIDE_BACK, - AV_CH_LAYOUT_6POINT1_BACK, - AV_CH_LAYOUT_7POINT1, - AV_CH_LAYOUT_22POINT2, - AV_CH_LAYOUT_7POINT1_TOP_BACK, - 0, -}; -#endif - const AVChannelLayout ff_aac_ch_layout[] = { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, diff --git a/libavcodec/aacdec_fixed.c b/libavcodec/aacdec_fixed.c index 2b8ac67659..a5ea3c9916 100644 --- a/libavcodec/aacdec_fixed.c +++ b/libavcodec/aacdec_fixed.c @@ -465,7 +465,6 @@ const FFCodec ff_aac_fixed_decoder = { }, .p.capabilities = AV_CODEC_CAP_CHANNEL_CONF | AV_CODEC_CAP_DR1, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_aac_channel_layout) .p.ch_layouts = ff_aac_ch_layout, .p.priv_class = &aac_decoder_class, .p.profiles = NULL_IF_CONFIG_SMALL(ff_aac_profiles), diff --git a/libavcodec/aacdec_template.c b/libavcodec/aacdec_template.c index 2b3509c85f..fe4ca1b465 100644 --- a/libavcodec/aacdec_template.c +++ b/libavcodec/aacdec_template.c @@ -466,13 +466,6 @@ static int output_configure(AACContext *ac, } // Try to sniff a reasonable channel order, otherwise output the // channels in the order the PCE declared them. -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (avctx->request_channel_layout == AV_CH_LAYOUT_NATIVE) - ac->output_channel_order = CHANNEL_ORDER_CODED; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (ac->output_channel_order == CHANNEL_ORDER_DEFAULT) layout = sniff_channel_order(layout_map, tags); for (i = 0; i < tags; i++) { diff --git a/libavcodec/aacdectab.h b/libavcodec/aacdectab.h index 7079b061fc..184508f2f3 100644 --- a/libavcodec/aacdectab.h +++ b/libavcodec/aacdectab.h @@ -49,10 +49,6 @@ extern const uint8_t ff_aac_channel_layout_map[16][16][3]; extern const int16_t ff_aac_channel_map[3][4][6]; -#if FF_API_OLD_CHANNEL_LAYOUT -extern const uint64_t ff_aac_channel_layout[]; -#endif - extern const AVChannelLayout ff_aac_ch_layout[]; FF_VISIBILITY_POP_HIDDEN diff --git a/libavcodec/ac3dec.c b/libavcodec/ac3dec.c index ee50138605..eb67efda62 100644 --- a/libavcodec/ac3dec.c +++ b/libavcodec/ac3dec.c @@ -190,14 +190,6 @@ static void ac3_downmix(AVCodecContext *avctx) const AVChannelLayout stereo = (AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO; /* allow downmixing to stereo or mono */ -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (avctx->request_channel_layout) { - av_channel_layout_uninit(&s->downmix_layout); - av_channel_layout_from_mask(&s->downmix_layout, avctx->request_channel_layout); - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (avctx->ch_layout.nb_channels > 1 && !av_channel_layout_compare(&s->downmix_layout, &mono)) { av_channel_layout_uninit(&avctx->ch_layout); diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c index 56c8d239c5..c2ebcaae60 100644 --- a/libavcodec/ac3enc.c +++ b/libavcodec/ac3enc.c @@ -150,30 +150,6 @@ static uint8_t exponent_group_tab[2][3][256]; /** * List of supported channel layouts. */ -#if FF_API_OLD_CHANNEL_LAYOUT -const uint64_t ff_ac3_channel_layouts[19] = { - AV_CH_LAYOUT_MONO, - AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_2_1, - AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_2_2, - AV_CH_LAYOUT_QUAD, - AV_CH_LAYOUT_4POINT0, - AV_CH_LAYOUT_5POINT0, - AV_CH_LAYOUT_5POINT0_BACK, - (AV_CH_LAYOUT_MONO | AV_CH_LOW_FREQUENCY), - (AV_CH_LAYOUT_STEREO | AV_CH_LOW_FREQUENCY), - (AV_CH_LAYOUT_2_1 | AV_CH_LOW_FREQUENCY), - (AV_CH_LAYOUT_SURROUND | AV_CH_LOW_FREQUENCY), - (AV_CH_LAYOUT_2_2 | AV_CH_LOW_FREQUENCY), - (AV_CH_LAYOUT_QUAD | AV_CH_LOW_FREQUENCY), - (AV_CH_LAYOUT_4POINT0 | AV_CH_LOW_FREQUENCY), - AV_CH_LAYOUT_5POINT1, - AV_CH_LAYOUT_5POINT1_BACK, - 0 -}; -#endif - const AVChannelLayout ff_ac3_ch_layouts[19] = { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, diff --git a/libavcodec/ac3enc.h b/libavcodec/ac3enc.h index 55e88d69e4..1cb1aac4b2 100644 --- a/libavcodec/ac3enc.h +++ b/libavcodec/ac3enc.h @@ -268,9 +268,6 @@ typedef struct AC3EncodeContext { void (*output_frame_header)(struct AC3EncodeContext *s); } AC3EncodeContext; -#if FF_API_OLD_CHANNEL_LAYOUT -extern const uint64_t ff_ac3_channel_layouts[19]; -#endif extern const AVChannelLayout ff_ac3_ch_layouts[19]; extern const AVOption ff_ac3_enc_options[]; extern const AVClass ff_ac3enc_class; diff --git a/libavcodec/ac3enc_fixed.c b/libavcodec/ac3enc_fixed.c index 079a43dc39..7fd6084aaf 100644 --- a/libavcodec/ac3enc_fixed.c +++ b/libavcodec/ac3enc_fixed.c @@ -122,7 +122,6 @@ const FFCodec ff_ac3_fixed_encoder = { .p.priv_class = &ff_ac3enc_class, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, .p.supported_samplerates = ff_ac3_sample_rate_tab, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_ac3_channel_layouts) .p.ch_layouts = ff_ac3_ch_layouts, .defaults = ff_ac3_enc_defaults, }; diff --git a/libavcodec/ac3enc_float.c b/libavcodec/ac3enc_float.c index 9664adbf63..27a89e79df 100644 --- a/libavcodec/ac3enc_float.c +++ b/libavcodec/ac3enc_float.c @@ -125,7 +125,6 @@ const FFCodec ff_ac3_encoder = { AV_SAMPLE_FMT_NONE }, .p.priv_class = &ff_ac3enc_class, .p.supported_samplerates = ff_ac3_sample_rate_tab, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_ac3_channel_layouts) .p.ch_layouts = ff_ac3_ch_layouts, .defaults = ff_ac3_enc_defaults, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, diff --git a/libavcodec/alacenc.c b/libavcodec/alacenc.c index 9598e5861e..f43adb57f9 100644 --- a/libavcodec/alacenc.c +++ b/libavcodec/alacenc.c @@ -617,21 +617,6 @@ static int alac_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, return 0; } -#if FF_API_OLD_CHANNEL_LAYOUT -static const uint64_t alac_channel_layouts[ALAC_MAX_CHANNELS + 1] = { - AV_CH_LAYOUT_MONO, - AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_4POINT0, - AV_CH_LAYOUT_5POINT0_BACK, - AV_CH_LAYOUT_5POINT1_BACK, - AV_CH_LAYOUT_6POINT1_BACK, - AV_CH_LAYOUT_7POINT1_WIDE_BACK, - 0 -}; -#endif - - #define OFFSET(x) offsetof(AlacEncodeContext, x) #define AE AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_ENCODING_PARAM static const AVOption options[] = { @@ -660,7 +645,6 @@ const FFCodec ff_alac_encoder = { .init = alac_encode_init, FF_CODEC_ENCODE_CB(alac_encode_frame), .close = alac_encode_close, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(alac_channel_layouts) .p.ch_layouts = ff_alac_ch_layouts, .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_S16P, diff --git a/libavcodec/aptxdec.c b/libavcodec/aptxdec.c index 3ae7a00803..4b083b6558 100644 --- a/libavcodec/aptxdec.c +++ b/libavcodec/aptxdec.c @@ -183,7 +183,6 @@ const FFCodec ff_aptx_decoder = { .init = ff_aptx_init, FF_CODEC_DECODE_CB(aptx_decode_frame), .p.capabilities = AV_CODEC_CAP_DR1, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_STEREO, { 0 } }, .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_NONE }, @@ -200,7 +199,6 @@ const FFCodec ff_aptx_hd_decoder = { .init = ff_aptx_init, FF_CODEC_DECODE_CB(aptx_decode_frame), .p.capabilities = AV_CODEC_CAP_DR1, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_STEREO, { 0 } }, .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_NONE }, diff --git a/libavcodec/aptxenc.c b/libavcodec/aptxenc.c index 6deebaf2cb..5e041b9a1b 100644 --- a/libavcodec/aptxenc.c +++ b/libavcodec/aptxenc.c @@ -276,7 +276,6 @@ const FFCodec ff_aptx_encoder = { .init = aptx_encode_init, FF_CODEC_ENCODE_CB(aptx_encode_frame), .close = aptx_close, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_STEREO, { 0 } }, .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_NONE }, @@ -295,7 +294,6 @@ const FFCodec ff_aptx_hd_encoder = { .init = aptx_encode_init, FF_CODEC_ENCODE_CB(aptx_encode_frame), .close = aptx_close, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_STEREO, { 0 } }, .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_NONE }, diff --git a/libavcodec/audiotoolboxenc.c b/libavcodec/audiotoolboxenc.c index 42ab7ae6e4..0d54b62c45 100644 --- a/libavcodec/audiotoolboxenc.c +++ b/libavcodec/audiotoolboxenc.c @@ -630,7 +630,6 @@ static const AVOption options[] = { .p.priv_class = &ffat_##NAME##_enc_class, \ .p.capabilities = AV_CODEC_CAP_DELAY | \ AV_CODEC_CAP_ENCODER_FLUSH CAPS, \ - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(CHANNEL_LAYOUTS) \ .p.ch_layouts = CH_LAYOUTS, \ .p.sample_fmts = (const enum AVSampleFormat[]) { \ AV_SAMPLE_FMT_S16, \ @@ -656,24 +655,6 @@ static const AVChannelLayout aac_at_ch_layouts[] = { { 0 }, }; -#if FF_API_OLD_CHANNEL_LAYOUT -static const uint64_t aac_at_channel_layouts[] = { - AV_CH_LAYOUT_MONO, - AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_4POINT0, - AV_CH_LAYOUT_5POINT0, - AV_CH_LAYOUT_5POINT1, - AV_CH_LAYOUT_6POINT0, - AV_CH_LAYOUT_6POINT1, - AV_CH_LAYOUT_7POINT0, - AV_CH_LAYOUT_7POINT1_WIDE_BACK, - AV_CH_LAYOUT_QUAD, - AV_CH_LAYOUT_OCTAGONAL, - 0, -}; -#endif - FFAT_ENC(aac, AV_CODEC_ID_AAC, aac_profiles, , aac_at_channel_layouts, aac_at_ch_layouts) //FFAT_ENC(adpcm_ima_qt, AV_CODEC_ID_ADPCM_IMA_QT, NULL) FFAT_ENC(alac, AV_CODEC_ID_ALAC, NULL, | AV_CODEC_CAP_VARIABLE_FRAME_SIZE, NULL, NULL) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index 692d4c35b4..09e8079bb2 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -241,26 +241,6 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code goto free_and_end; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - /* compat wrapper for old-style callers */ - if (avctx->channel_layout && !avctx->channels) - avctx->channels = av_popcount64(avctx->channel_layout); - - if ((avctx->channels && avctx->ch_layout.nb_channels != avctx->channels) || - (avctx->channel_layout && (avctx->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - avctx->ch_layout.u.mask != avctx->channel_layout))) { - av_channel_layout_uninit(&avctx->ch_layout); - if (avctx->channel_layout) { - av_channel_layout_from_mask(&avctx->ch_layout, avctx->channel_layout); - } else { - avctx->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - } - avctx->ch_layout.nb_channels = avctx->channels; - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif - /* AV_CODEC_CAP_CHANNEL_CONF is a decoder-only flag; so the code below * in particular checks that nb_channels is set for all audio encoders. */ if (avctx->codec_type == AVMEDIA_TYPE_AUDIO && !avctx->ch_layout.nb_channels @@ -345,15 +325,6 @@ FF_ENABLE_DEPRECATION_WARNINGS if (!avctx->bit_rate) avctx->bit_rate = get_bit_rate(avctx); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - /* update the deprecated fields for old-style callers */ - avctx->channels = avctx->ch_layout.nb_channels; - avctx->channel_layout = avctx->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - avctx->ch_layout.u.mask : 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - /* validate channel layout from the decoder */ if ((avctx->ch_layout.nb_channels && !av_channel_layout_check(&avctx->ch_layout)) || avctx->ch_layout.nb_channels > FF_SANE_NB_CHANNELS) { diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 2306c0f7bf..c99ec59c29 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1045,15 +1045,6 @@ typedef struct AVCodecContext { /* audio only */ int sample_rate; ///< samples per second -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * number of audio channels - * @deprecated use ch_layout.nb_channels - */ - attribute_deprecated - int channels; -#endif - /** * audio sample format * - encoding: Set by user. @@ -1086,26 +1077,6 @@ typedef struct AVCodecContext { */ int cutoff; -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * Audio channel layout. - * - encoding: set by user. - * - decoding: set by user, may be overwritten by libavcodec. - * @deprecated use ch_layout - */ - attribute_deprecated - uint64_t channel_layout; - - /** - * Request decoder to use this channel layout if it can (0 for default) - * - encoding: unused - * - decoding: Set by user. - * @deprecated use "downmix" codec private option - */ - attribute_deprecated - uint64_t request_channel_layout; -#endif - /** * Type of service that the audio stream conveys. * - encoding: Set by user. diff --git a/libavcodec/codec.h b/libavcodec/codec.h index 8034f1a53c..6f9b42760d 100644 --- a/libavcodec/codec.h +++ b/libavcodec/codec.h @@ -209,13 +209,6 @@ typedef struct AVCodec { const enum AVPixelFormat *pix_fmts; ///< array of supported pixel formats, or NULL if unknown, array is terminated by -1 const int *supported_samplerates; ///< array of supported audio samplerates, or NULL if unknown, array is terminated by 0 const enum AVSampleFormat *sample_fmts; ///< array of supported sample formats, or NULL if unknown, array is terminated by -1 -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * @deprecated use ch_layouts instead - */ - attribute_deprecated - const uint64_t *channel_layouts; ///< array of support channel layouts, or NULL if unknown. array is terminated by 0 -#endif const AVClass *priv_class; ///< AVClass for the private context const AVProfile *profiles; ///< array of recognized profiles, or NULL if unknown, array is terminated by {AV_PROFILE_UNKNOWN} diff --git a/libavcodec/codec_internal.h b/libavcodec/codec_internal.h index 130a7dc3cd..d6757e2def 100644 --- a/libavcodec/codec_internal.h +++ b/libavcodec/codec_internal.h @@ -284,25 +284,6 @@ typedef struct FFCodec { .update_thread_context_for_user = NULL #endif -#if FF_API_OLD_CHANNEL_LAYOUT -#define CODEC_OLD_CHANNEL_LAYOUTS(...) CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(((const uint64_t[]) { __VA_ARGS__, 0 })) -#if defined(__clang__) -#define CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(array) \ - FF_DISABLE_DEPRECATION_WARNINGS \ - .p.channel_layouts = (array), \ - FF_ENABLE_DEPRECATION_WARNINGS -#else -#define CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(array) .p.channel_layouts = (array), -#endif -#else -/* This is only provided to allow to test disabling FF_API_OLD_CHANNEL_LAYOUT - * without removing all the FF_API_OLD_CHANNEL_LAYOUT codeblocks. - * It is of course still expected to be removed when FF_API_OLD_CHANNEL_LAYOUT - * will be finally removed (along with all usages of these macros). */ -#define CODEC_OLD_CHANNEL_LAYOUTS(...) -#define CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(array) -#endif - #define FF_CODEC_DECODE_CB(func) \ .cb_type = FF_CODEC_CB_TYPE_DECODE, \ .cb.decode = (func) diff --git a/libavcodec/codec_par.c b/libavcodec/codec_par.c index abaac63841..212cb97d77 100644 --- a/libavcodec/codec_par.c +++ b/libavcodec/codec_par.c @@ -168,32 +168,9 @@ int avcodec_parameters_from_context(AVCodecParameters *par, break; case AVMEDIA_TYPE_AUDIO: par->format = codec->sample_fmt; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - // if the old/new fields are set inconsistently, prefer the old ones - if ((codec->channels && codec->channels != codec->ch_layout.nb_channels) || - (codec->channel_layout && (codec->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - codec->ch_layout.u.mask != codec->channel_layout))) { - if (codec->channel_layout) - av_channel_layout_from_mask(&par->ch_layout, codec->channel_layout); - else { - par->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - par->ch_layout.nb_channels = codec->channels; - } -FF_ENABLE_DEPRECATION_WARNINGS - } else { -#endif ret = av_channel_layout_copy(&par->ch_layout, &codec->ch_layout); if (ret < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - } - par->channel_layout = par->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - par->ch_layout.u.mask : 0; - par->channels = par->ch_layout.nb_channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif par->sample_rate = codec->sample_rate; par->block_align = codec->block_align; par->frame_size = codec->frame_size; @@ -255,32 +232,9 @@ int avcodec_parameters_to_context(AVCodecContext *codec, break; case AVMEDIA_TYPE_AUDIO: codec->sample_fmt = par->format; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - // if the old/new fields are set inconsistently, prefer the old ones - if ((par->channels && par->channels != par->ch_layout.nb_channels) || - (par->channel_layout && (par->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - par->ch_layout.u.mask != par->channel_layout))) { - if (par->channel_layout) - av_channel_layout_from_mask(&codec->ch_layout, par->channel_layout); - else { - codec->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - codec->ch_layout.nb_channels = par->channels; - } -FF_ENABLE_DEPRECATION_WARNINGS - } else { -#endif ret = av_channel_layout_copy(&codec->ch_layout, &par->ch_layout); if (ret < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - } - codec->channel_layout = codec->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - codec->ch_layout.u.mask : 0; - codec->channels = codec->ch_layout.nb_channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif codec->sample_rate = par->sample_rate; codec->block_align = par->block_align; codec->frame_size = par->frame_size; diff --git a/libavcodec/codec_par.h b/libavcodec/codec_par.h index f42dd3b1d5..fa6851294f 100644 --- a/libavcodec/codec_par.h +++ b/libavcodec/codec_par.h @@ -149,22 +149,6 @@ typedef struct AVCodecParameters { */ int video_delay; -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * Audio only. The channel layout bitmask. May be 0 if the channel layout is - * unknown or unspecified, otherwise the number of bits set must be equal to - * the channels field. - * @deprecated use ch_layout - */ - attribute_deprecated - uint64_t channel_layout; - /** - * Audio only. The number of audio channels. - * @deprecated use ch_layout.nb_channels - */ - attribute_deprecated - int channels; -#endif /** * Audio only. The number of audio samples per second. */ diff --git a/libavcodec/dcadec.c b/libavcodec/dcadec.c index cc23731b90..da6e8c05eb 100644 --- a/libavcodec/dcadec.c +++ b/libavcodec/dcadec.c @@ -352,18 +352,6 @@ static av_cold int dcadec_init(AVCodecContext *avctx) s->crctab = av_crc_get_table(AV_CRC_16_CCITT); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (avctx->request_channel_layout & AV_CH_LAYOUT_NATIVE) - s->output_channel_order = CHANNEL_ORDER_CODED; - - if (avctx->request_channel_layout & ~AV_CH_LAYOUT_NATIVE) { - av_channel_layout_uninit(&s->downmix_layout); - av_channel_layout_from_mask(&s->downmix_layout, avctx->request_channel_layout & ~AV_CH_LAYOUT_NATIVE); - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (s->downmix_layout.nb_channels) { if (!av_channel_layout_compare(&s->downmix_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO) || !av_channel_layout_compare(&s->downmix_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO_DOWNMIX)) { diff --git a/libavcodec/dcaenc.c b/libavcodec/dcaenc.c index c731d79381..192121524b 100644 --- a/libavcodec/dcaenc.c +++ b/libavcodec/dcaenc.c @@ -1325,9 +1325,6 @@ const FFCodec ff_dca_encoder = { .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S32, AV_SAMPLE_FMT_NONE }, .p.supported_samplerates = sample_rates, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_2_2, AV_CH_LAYOUT_5POINT0, - AV_CH_LAYOUT_5POINT1) .p.ch_layouts = (const AVChannelLayout[]){ AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 4cd37807db..145138d657 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -92,39 +92,6 @@ static int apply_param_change(AVCodecContext *avctx, const AVPacket *avpkt) flags = bytestream_get_le32(&data); size -= 4; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT) { - if (size < 4) - goto fail; - val = bytestream_get_le32(&data); - if (val <= 0 || val > INT_MAX) { - av_log(avctx, AV_LOG_ERROR, "Invalid channel count"); - ret = AVERROR_INVALIDDATA; - goto fail2; - } - av_channel_layout_uninit(&avctx->ch_layout); - avctx->ch_layout.nb_channels = val; - avctx->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - size -= 4; - } - if (flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT) { - if (size < 8) - goto fail; - av_channel_layout_uninit(&avctx->ch_layout); - ret = av_channel_layout_from_mask(&avctx->ch_layout, bytestream_get_le64(&data)); - if (ret < 0) - goto fail2; - size -= 8; - } - if (flags & (AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT | - AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT)) { - avctx->channels = avctx->ch_layout.nb_channels; - avctx->channel_layout = (avctx->ch_layout.order == AV_CHANNEL_ORDER_NATIVE) ? - avctx->ch_layout.u.mask : 0; - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (flags & AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE) { if (size < 4) goto fail; @@ -582,15 +549,6 @@ static int fill_frame_props(const AVCodecContext *avctx, AVFrame *frame) if (ret < 0) return ret; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!frame->channel_layout) - frame->channel_layout = avctx->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - avctx->ch_layout.u.mask : 0; - if (!frame->channels) - frame->channels = avctx->ch_layout.nb_channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (!frame->sample_rate) frame->sample_rate = avctx->sample_rate; } @@ -1632,15 +1590,6 @@ int ff_get_buffer(AVCodecContext *avctx, AVFrame *frame, int flags) goto fail; } } else if (avctx->codec_type == AVMEDIA_TYPE_AUDIO) { -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - /* compat layer for old-style get_buffer() implementations */ - avctx->channels = avctx->ch_layout.nb_channels; - avctx->channel_layout = (avctx->ch_layout.order == AV_CHANNEL_ORDER_NATIVE) ? - avctx->ch_layout.u.mask : 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (frame->nb_samples * (int64_t)avctx->ch_layout.nb_channels > avctx->max_samples) { av_log(avctx, AV_LOG_ERROR, "samples per frame %d, exceeds max_samples %"PRId64"\n", frame->nb_samples, avctx->max_samples); ret = AVERROR(EINVAL); diff --git a/libavcodec/dolby_e.c b/libavcodec/dolby_e.c index b8dac0fa3f..9831716b48 100644 --- a/libavcodec/dolby_e.c +++ b/libavcodec/dolby_e.c @@ -1272,13 +1272,6 @@ static av_cold int dolby_e_init(AVCodecContext *avctx) if (!(s->fdsp = avpriv_float_dsp_alloc(0))) return AVERROR(ENOMEM); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (avctx->request_channel_layout & AV_CH_LAYOUT_NATIVE) - s->dectx.metadata.output_channel_order = CHANNEL_ORDER_CODED; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - s->dectx.metadata.multi_prog_warned = s->dectx.metadata.output_channel_order == CHANNEL_ORDER_CODED; s->dectx.avctx = s->avctx = avctx; return 0; diff --git a/libavcodec/eac3enc.c b/libavcodec/eac3enc.c index 4b3236d4e5..527f77e33a 100644 --- a/libavcodec/eac3enc.c +++ b/libavcodec/eac3enc.c @@ -263,7 +263,6 @@ const FFCodec ff_eac3_encoder = { AV_SAMPLE_FMT_NONE }, .p.priv_class = &eac3enc_class, .p.supported_samplerates = ff_ac3_sample_rate_tab, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_ac3_channel_layouts) .p.ch_layouts = ff_ac3_ch_layouts, .defaults = ff_ac3_enc_defaults, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, diff --git a/libavcodec/g722enc.c b/libavcodec/g722enc.c index 47811cee4d..2f19a1b29a 100644 --- a/libavcodec/g722enc.c +++ b/libavcodec/g722enc.c @@ -382,7 +382,6 @@ const FFCodec ff_adpcm_g722_encoder = { .close = g722_encode_close, FF_CODEC_ENCODE_CB(g722_encode_frame), .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO) .p.ch_layouts = (const AVChannelLayout[]){ AV_CHANNEL_LAYOUT_MONO, { 0 } }, diff --git a/libavcodec/get_buffer.c b/libavcodec/get_buffer.c index 647f8a3df7..46c20781af 100644 --- a/libavcodec/get_buffer.c +++ b/libavcodec/get_buffer.c @@ -70,12 +70,6 @@ static int update_frame_pool(AVCodecContext *avctx, AVFrame *frame) if (avctx->codec_type == AVMEDIA_TYPE_AUDIO) { int planar = av_sample_fmt_is_planar(frame->format); ch = frame->ch_layout.nb_channels; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!ch) - ch = frame->channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif planes = planar ? ch : 1; } diff --git a/libavcodec/libcodec2.c b/libavcodec/libcodec2.c index 83f68e85c7..b8fa396fac 100644 --- a/libavcodec/libcodec2.c +++ b/libavcodec/libcodec2.c @@ -189,7 +189,6 @@ const FFCodec ff_libcodec2_decoder = { .init = libcodec2_init_decoder, .close = libcodec2_close, FF_CODEC_DECODE_CB(libcodec2_decode), - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO) }; const FFCodec ff_libcodec2_encoder = { @@ -208,5 +207,4 @@ const FFCodec ff_libcodec2_encoder = { .init = libcodec2_init_encoder, .close = libcodec2_close, FF_CODEC_ENCODE_CB(libcodec2_encode), - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO) }; diff --git a/libavcodec/libfdk-aacdec.c b/libavcodec/libfdk-aacdec.c index 8c1586e25e..31baa35837 100644 --- a/libavcodec/libfdk-aacdec.c +++ b/libavcodec/libfdk-aacdec.c @@ -264,14 +264,6 @@ static av_cold int fdk_aac_decode_init(AVCodecContext *avctx) return AVERROR_UNKNOWN; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (avctx->request_channel_layout) { - av_channel_layout_uninit(&s->downmix_layout); - av_channel_layout_from_mask(&s->downmix_layout, avctx->request_channel_layout); - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (s->downmix_layout.nb_channels > 0 && s->downmix_layout.order != AV_CHANNEL_ORDER_NATIVE) { int downmix_channels = -1; diff --git a/libavcodec/libfdk-aacenc.c b/libavcodec/libfdk-aacenc.c index d400ac2e7c..dee4512112 100644 --- a/libavcodec/libfdk-aacenc.c +++ b/libavcodec/libfdk-aacenc.c @@ -557,28 +557,6 @@ static const FFCodecDefault aac_encode_defaults[] = { { NULL } }; -#if FF_API_OLD_CHANNEL_LAYOUT -static const uint64_t aac_channel_layout[] = { - AV_CH_LAYOUT_MONO, - AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_4POINT0, - AV_CH_LAYOUT_5POINT0_BACK, - AV_CH_LAYOUT_5POINT1_BACK, -#if FDKENC_VER_AT_LEAST(4, 0) // 4.0.0 - AV_CH_LAYOUT_6POINT1_BACK, -#endif -#if FDKENC_VER_AT_LEAST(3, 4) // 3.4.12 - AV_CH_LAYOUT_7POINT1_WIDE_BACK, - AV_CH_LAYOUT_7POINT1, -#endif -#if FDKENC_VER_AT_LEAST(4, 0) // 4.0.0 - AV_CH_LAYOUT_7POINT1_TOP_BACK, -#endif - 0, -}; -#endif /* FF_API_OLD_CHANNEL_LAYOUT */ - static const AVChannelLayout aac_ch_layouts[16] = { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, @@ -625,6 +603,5 @@ const FFCodec ff_libfdk_aac_encoder = { .p.profiles = profiles, .p.supported_samplerates = aac_sample_rates, .p.wrapper_name = "libfdk", - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(aac_channel_layout) .p.ch_layouts = aac_ch_layouts, }; diff --git a/libavcodec/libgsmenc.c b/libavcodec/libgsmenc.c index 640954491a..505b6afb07 100644 --- a/libavcodec/libgsmenc.c +++ b/libavcodec/libgsmenc.c @@ -127,7 +127,6 @@ const FFCodec ff_libgsm_encoder = { FF_CODEC_ENCODE_CB(libgsm_encode_frame), .close = libgsm_encode_close, .defaults = libgsm_defaults, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, { 0 } }, .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, @@ -146,7 +145,6 @@ const FFCodec ff_libgsm_ms_encoder = { FF_CODEC_ENCODE_CB(libgsm_encode_frame), .close = libgsm_encode_close, .defaults = libgsm_defaults, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, { 0 } }, .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, diff --git a/libavcodec/libmp3lame.c b/libavcodec/libmp3lame.c index 312bc4230f..d3810eb2ab 100644 --- a/libavcodec/libmp3lame.c +++ b/libavcodec/libmp3lame.c @@ -352,7 +352,6 @@ const FFCodec ff_libmp3lame_encoder = { AV_SAMPLE_FMT_S16P, AV_SAMPLE_FMT_NONE }, .p.supported_samplerates = libmp3lame_sample_rates, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 }, diff --git a/libavcodec/libshine.c b/libavcodec/libshine.c index 2f6a9233e0..333d86f774 100644 --- a/libavcodec/libshine.c +++ b/libavcodec/libshine.c @@ -140,7 +140,6 @@ const FFCodec ff_libshine_encoder = { .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16P, AV_SAMPLE_FMT_NONE }, .p.supported_samplerates = libshine_sample_rates, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 }, diff --git a/libavcodec/libspeexenc.c b/libavcodec/libspeexenc.c index 9fdb247863..4c12cef255 100644 --- a/libavcodec/libspeexenc.c +++ b/libavcodec/libspeexenc.c @@ -354,7 +354,6 @@ const FFCodec ff_libspeex_encoder = { .close = encode_close, .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 }, diff --git a/libavcodec/libtwolame.c b/libavcodec/libtwolame.c index 9c0156aa25..4b4fffcff3 100644 --- a/libavcodec/libtwolame.c +++ b/libavcodec/libtwolame.c @@ -228,7 +228,6 @@ const FFCodec ff_libtwolame_encoder = { AV_SAMPLE_FMT_S16P, AV_SAMPLE_FMT_NONE }, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, diff --git a/libavcodec/mlp.c b/libavcodec/mlp.c index 3f54b2e448..33045c08c7 100644 --- a/libavcodec/mlp.c +++ b/libavcodec/mlp.c @@ -57,15 +57,6 @@ const ChannelInformation ff_mlp_ch_info[21] = { { 0x3F, 0x04, 0x02, 0x00 }, }; -#if FF_API_OLD_CHANNEL_LAYOUT -const uint64_t ff_mlp_channel_layouts[12] = { - AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO, AV_CH_LAYOUT_2_1, - AV_CH_LAYOUT_QUAD, AV_CH_LAYOUT_2POINT1, AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_4POINT0, AV_CH_LAYOUT_5POINT0_BACK, AV_CH_LAYOUT_3POINT1, - AV_CH_LAYOUT_4POINT1, AV_CH_LAYOUT_5POINT1_BACK, 0, -}; -#endif - const AVChannelLayout ff_mlp_ch_layouts[12] = { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, AV_CHANNEL_LAYOUT_2_1, AV_CHANNEL_LAYOUT_QUAD, AV_CHANNEL_LAYOUT_2POINT1, AV_CHANNEL_LAYOUT_SURROUND, diff --git a/libavcodec/mlp.h b/libavcodec/mlp.h index cf12ac08fd..bec414c680 100644 --- a/libavcodec/mlp.h +++ b/libavcodec/mlp.h @@ -146,9 +146,6 @@ typedef struct { */ extern const ChannelInformation ff_mlp_ch_info[21]; -#if FF_API_OLD_CHANNEL_LAYOUT -extern const uint64_t ff_mlp_channel_layouts[12]; -#endif extern const AVChannelLayout ff_mlp_ch_layouts[12]; /** MLP uses checksums that seem to be based on the standard CRC algorithm, but diff --git a/libavcodec/mlpdec.c b/libavcodec/mlpdec.c index ead5ecee76..305c5d2b36 100644 --- a/libavcodec/mlpdec.c +++ b/libavcodec/mlpdec.c @@ -306,15 +306,6 @@ static av_cold int mlp_decode_init(AVCodecContext *avctx) m->substream[substr].lossless_check_data = 0xffffffff; ff_mlpdsp_init(&m->dsp); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (avctx->request_channel_layout) { - av_channel_layout_uninit(&m->downmix_layout); - av_channel_layout_from_mask(&m->downmix_layout, avctx->request_channel_layout); - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (m->downmix_layout.nb_channels) { if (!av_channel_layout_compare(&m->downmix_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO) || !av_channel_layout_compare(&m->downmix_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO_DOWNMIX)) { diff --git a/libavcodec/mlpenc.c b/libavcodec/mlpenc.c index 895362faca..b3ea82db29 100644 --- a/libavcodec/mlpenc.c +++ b/libavcodec/mlpenc.c @@ -2309,7 +2309,6 @@ const FFCodec ff_mlp_encoder = { .p.priv_class = &mlp_class, .p.sample_fmts = (const enum AVSampleFormat[]) {AV_SAMPLE_FMT_S16P, AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_NONE}, .p.supported_samplerates = (const int[]) {44100, 48000, 88200, 96000, 176400, 192000, 0}, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_mlp_channel_layouts) .p.ch_layouts = ff_mlp_ch_layouts, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, }; @@ -2330,7 +2329,6 @@ const FFCodec ff_truehd_encoder = { .p.priv_class = &mlp_class, .p.sample_fmts = (const enum AVSampleFormat[]) {AV_SAMPLE_FMT_S16P, AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_NONE}, .p.supported_samplerates = (const int[]) {44100, 48000, 88200, 96000, 176400, 192000, 0}, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO, AV_CH_LAYOUT_2POINT1, AV_CH_LAYOUT_SURROUND, AV_CH_LAYOUT_3POINT1, AV_CH_LAYOUT_4POINT0, AV_CH_LAYOUT_4POINT1, AV_CH_LAYOUT_5POINT0, AV_CH_LAYOUT_5POINT1) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, diff --git a/libavcodec/mpegaudioenc_fixed.c b/libavcodec/mpegaudioenc_fixed.c index a523b5d533..cdfc0b9958 100644 --- a/libavcodec/mpegaudioenc_fixed.c +++ b/libavcodec/mpegaudioenc_fixed.c @@ -37,7 +37,6 @@ const FFCodec ff_mp2fixed_encoder = { .p.supported_samplerates = (const int[]){ 44100, 48000, 32000, 22050, 24000, 16000, 0 }, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]){ AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 } }, diff --git a/libavcodec/mpegaudioenc_float.c b/libavcodec/mpegaudioenc_float.c index 6a13d09573..f94ab54e89 100644 --- a/libavcodec/mpegaudioenc_float.c +++ b/libavcodec/mpegaudioenc_float.c @@ -38,7 +38,6 @@ const FFCodec ff_mp2_encoder = { .p.supported_samplerates = (const int[]){ 44100, 48000, 32000, 22050, 24000, 16000, 0 }, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]){ AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 } }, diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h index 5859ceb409..a566aaf077 100644 --- a/libavcodec/options_table.h +++ b/libavcodec/options_table.h @@ -94,9 +94,6 @@ static const AVOption avcodec_options[] = { {"time_base", NULL, OFFSET(time_base), AV_OPT_TYPE_RATIONAL, {.dbl = 0}, 0, INT_MAX}, {"g", "set the group of picture (GOP) size", OFFSET(gop_size), AV_OPT_TYPE_INT, {.i64 = 12 }, INT_MIN, INT_MAX, V|E}, {"ar", "set audio sampling rate (in Hz)", OFFSET(sample_rate), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, 0, INT_MAX, A|D|E}, -#if FF_API_OLD_CHANNEL_LAYOUT -{"ac", "set number of audio channels", OFFSET(channels), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, 0, INT_MAX, A|D|E}, -#endif {"cutoff", "set cutoff bandwidth", OFFSET(cutoff), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, INT_MIN, INT_MAX, A|E}, {"frame_size", NULL, OFFSET(frame_size), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, 0, INT_MAX, A|E}, {"frame_number", NULL, OFFSET(frame_num), AV_OPT_TYPE_INT64, {.i64 = DEFAULT }, INT_MIN, INT_MAX}, @@ -269,10 +266,6 @@ static const AVOption avcodec_options[] = { {"compression_level", NULL, OFFSET(compression_level), AV_OPT_TYPE_INT, {.i64 = FF_COMPRESSION_DEFAULT }, INT_MIN, INT_MAX, V|A|E}, {"bits_per_raw_sample", NULL, OFFSET(bits_per_raw_sample), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, 0, INT_MAX}, {"ch_layout", NULL, OFFSET(ch_layout), AV_OPT_TYPE_CHLAYOUT, {.str = NULL }, 0, 0, A|E|D, "ch_layout"}, -#if FF_API_OLD_CHANNEL_LAYOUT -{"channel_layout", NULL, OFFSET(channel_layout), AV_OPT_TYPE_CHANNEL_LAYOUT, {.i64 = DEFAULT }, 0, UINT64_MAX, A|E|D, "channel_layout"}, -{"request_channel_layout", NULL, OFFSET(request_channel_layout), AV_OPT_TYPE_CHANNEL_LAYOUT, {.i64 = DEFAULT }, 0, UINT64_MAX, A|D, "request_channel_layout"}, -#endif {"rc_max_vbv_use", NULL, OFFSET(rc_max_available_vbv_use), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, 0.0, FLT_MAX, V|E}, {"rc_min_vbv_use", NULL, OFFSET(rc_min_vbv_overflow_use), AV_OPT_TYPE_FLOAT, {.dbl = 3 }, 0.0, FLT_MAX, V|E}, #if FF_API_TICKS_PER_FRAME diff --git a/libavcodec/opusenc.c b/libavcodec/opusenc.c index a2f74a347b..9161d48750 100644 --- a/libavcodec/opusenc.c +++ b/libavcodec/opusenc.c @@ -745,7 +745,6 @@ const FFCodec ff_opus_encoder = { .close = opus_encode_end, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, .p.supported_samplerates = (const int []){ 48000, 0 }, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout []){ AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 } }, .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_FLTP, diff --git a/libavcodec/packet.h b/libavcodec/packet.h index 2c57d262c6..10765572fe 100644 --- a/libavcodec/packet.h +++ b/libavcodec/packet.h @@ -589,13 +589,6 @@ typedef struct AVPacketList { #define AV_PKT_FLAG_DISPOSABLE 0x0010 enum AVSideDataParamChangeFlags { -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * @deprecated those are not used by any decoder - */ - AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT = 0x0001, - AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT = 0x0002, -#endif AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE = 0x0004, AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS = 0x0008, }; diff --git a/libavcodec/pcm-blurayenc.c b/libavcodec/pcm-blurayenc.c index bfbfa91d7a..7147c804ad 100644 --- a/libavcodec/pcm-blurayenc.c +++ b/libavcodec/pcm-blurayenc.c @@ -279,17 +279,6 @@ const FFCodec ff_pcm_bluray_encoder = { .init = pcm_bluray_encode_init, FF_CODEC_ENCODE_CB(pcm_bluray_encode_frame), .p.supported_samplerates = (const int[]) { 48000, 96000, 192000, 0 }, - CODEC_OLD_CHANNEL_LAYOUTS( - AV_CH_LAYOUT_MONO, - AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_2_1, - AV_CH_LAYOUT_4POINT0, - AV_CH_LAYOUT_2_2, - AV_CH_LAYOUT_5POINT0, - AV_CH_LAYOUT_5POINT1, - AV_CH_LAYOUT_7POINT0, - AV_CH_LAYOUT_7POINT1) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, diff --git a/libavcodec/pcm-dvdenc.c b/libavcodec/pcm-dvdenc.c index a2e5cbdc2e..1e7ee644f6 100644 --- a/libavcodec/pcm-dvdenc.c +++ b/libavcodec/pcm-dvdenc.c @@ -182,8 +182,6 @@ const FFCodec ff_pcm_dvd_encoder = { .init = pcm_dvd_encode_init, FF_CODEC_ENCODE_CB(pcm_dvd_encode_frame), .p.supported_samplerates = (const int[]) { 48000, 96000, 0}, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_5POINT1, AV_CH_LAYOUT_7POINT1) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, AV_CHANNEL_LAYOUT_5POINT1, diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c index ec6ae8a7fe..56a3618f0d 100644 --- a/libavcodec/pthread_frame.c +++ b/libavcodec/pthread_frame.c @@ -311,12 +311,6 @@ FF_ENABLE_DEPRECATION_WARNINGS dst->sample_rate = src->sample_rate; dst->sample_fmt = src->sample_fmt; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - dst->channels = src->channels; - dst->channel_layout = src->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif err = av_channel_layout_copy(&dst->ch_layout, &src->ch_layout); if (err < 0) return err; diff --git a/libavcodec/ra144enc.c b/libavcodec/ra144enc.c index ea537f3f80..92c35ac12c 100644 --- a/libavcodec/ra144enc.c +++ b/libavcodec/ra144enc.c @@ -549,6 +549,5 @@ const FFCodec ff_ra_144_encoder = { .p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, .p.supported_samplerates = (const int[]){ 8000, 0 }, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO) .p.ch_layouts = (const AVChannelLayout[]){ AV_CHANNEL_LAYOUT_MONO, { 0 } }, }; diff --git a/libavcodec/sbcdec.c b/libavcodec/sbcdec.c index fd7c2e5e80..033a8380d6 100644 --- a/libavcodec/sbcdec.c +++ b/libavcodec/sbcdec.c @@ -371,7 +371,6 @@ const FFCodec ff_sbc_decoder = { .init = sbc_decode_init, FF_CODEC_DECODE_CB(sbc_decode_frame), .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 } }, diff --git a/libavcodec/sbcenc.c b/libavcodec/sbcenc.c index 6e1dd88c72..f2c4fbe329 100644 --- a/libavcodec/sbcenc.c +++ b/libavcodec/sbcenc.c @@ -354,7 +354,6 @@ const FFCodec ff_sbc_encoder = { .priv_data_size = sizeof(SBCEncContext), .init = sbc_encode_init, FF_CODEC_ENCODE_CB(sbc_encode_frame), - CODEC_OLD_CHANNEL_LAYOUTS(AV_CH_LAYOUT_MONO, AV_CH_LAYOUT_STEREO) .p.ch_layouts = (const AVChannelLayout[]) { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, { 0 } }, diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 1ad91c3237..e91a5d6d2e 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -784,12 +784,7 @@ int av_get_audio_frame_duration(AVCodecContext *avctx, int frame_bytes) { int channels = avctx->ch_layout.nb_channels; int duration; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!channels) - channels = avctx->channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif + duration = get_audio_frame_duration(avctx->codec_id, avctx->sample_rate, channels, avctx->block_align, avctx->codec_tag, avctx->bits_per_coded_sample, @@ -802,12 +797,7 @@ int av_get_audio_frame_duration2(AVCodecParameters *par, int frame_bytes) { int channels = par->ch_layout.nb_channels; int duration; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!channels) - channels = par->channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif + duration = get_audio_frame_duration(par->codec_id, par->sample_rate, channels, par->block_align, par->codec_tag, par->bits_per_coded_sample, diff --git a/libavcodec/vorbis_data.c b/libavcodec/vorbis_data.c index 1ebe146d8f..d7edc695c1 100644 --- a/libavcodec/vorbis_data.c +++ b/libavcodec/vorbis_data.c @@ -34,20 +34,6 @@ const uint8_t ff_vorbis_channel_layout_offsets[8][8] = { { 0, 2, 1, 7, 5, 6, 3, 4 }, }; -#if FF_API_OLD_CHANNEL_LAYOUT -const uint64_t ff_vorbis_channel_layouts[9] = { - AV_CH_LAYOUT_MONO, - AV_CH_LAYOUT_STEREO, - AV_CH_LAYOUT_SURROUND, - AV_CH_LAYOUT_QUAD, - AV_CH_LAYOUT_5POINT0_BACK, - AV_CH_LAYOUT_5POINT1_BACK, - AV_CH_LAYOUT_5POINT1|AV_CH_BACK_CENTER, - AV_CH_LAYOUT_7POINT1, - 0 -}; -#endif - const AVChannelLayout ff_vorbis_ch_layouts[9] = { AV_CHANNEL_LAYOUT_MONO, AV_CHANNEL_LAYOUT_STEREO, diff --git a/libavcodec/vorbis_data.h b/libavcodec/vorbis_data.h index 0fe19e509f..51c91c9e04 100644 --- a/libavcodec/vorbis_data.h +++ b/libavcodec/vorbis_data.h @@ -26,9 +26,6 @@ extern const float ff_vorbis_floor1_inverse_db_table[256]; extern const float * const ff_vorbis_vwin[8]; extern const uint8_t ff_vorbis_channel_layout_offsets[8][8]; -#if FF_API_OLD_CHANNEL_LAYOUT -extern const uint64_t ff_vorbis_channel_layouts[9]; -#endif extern const AVChannelLayout ff_vorbis_ch_layouts[9]; #endif /* AVCODEC_VORBIS_DATA_H */ diff --git a/libavcodec/vorbisdec.c b/libavcodec/vorbisdec.c index faeaeadde7..6f807b9d66 100644 --- a/libavcodec/vorbisdec.c +++ b/libavcodec/vorbisdec.c @@ -1890,7 +1890,6 @@ const FFCodec ff_vorbis_decoder = { .flush = vorbis_decode_flush, .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, - CODEC_OLD_CHANNEL_LAYOUTS_ARRAY(ff_vorbis_channel_layouts) .p.ch_layouts = ff_vorbis_ch_layouts, .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, AV_SAMPLE_FMT_NONE }, diff --git a/libavfilter/af_afir.c b/libavfilter/af_afir.c index fa87c0039d..caa723e6a2 100644 --- a/libavfilter/af_afir.c +++ b/libavfilter/af_afir.c @@ -508,11 +508,6 @@ static int config_output(AVFilterLink *outlink) s->one2many = ctx->inputs[1 + s->selir]->ch_layout.nb_channels == 1; outlink->sample_rate = ctx->inputs[0]->sample_rate; outlink->time_base = ctx->inputs[0]->time_base; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - outlink->channel_layout = ctx->inputs[0]->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if ((ret = av_channel_layout_copy(&outlink->ch_layout, &ctx->inputs[0]->ch_layout)) < 0) return ret; outlink->ch_layout.nb_channels = ctx->inputs[0]->ch_layout.nb_channels; diff --git a/libavfilter/af_aformat.c b/libavfilter/af_aformat.c index 367a02df33..8a3bdee7f8 100644 --- a/libavfilter/af_aformat.c +++ b/libavfilter/af_aformat.c @@ -103,21 +103,8 @@ static int parse_channel_layouts(AVFilterContext *ctx) ret = av_channel_layout_from_string(&fmt, cur); if (ret < 0) { -#if FF_API_OLD_CHANNEL_LAYOUT - uint64_t mask; -FF_DISABLE_DEPRECATION_WARNINGS - mask = av_get_channel_layout(cur); - if (!mask) { -#endif av_log(ctx, AV_LOG_ERROR, "Error parsing channel layout: %s.\n", cur); return AVERROR(EINVAL); -#if FF_API_OLD_CHANNEL_LAYOUT - } -FF_ENABLE_DEPRECATION_WARNINGS - av_log(ctx, AV_LOG_WARNING, "Channel layout '%s' uses a deprecated syntax.\n", - cur); - av_channel_layout_from_mask(&fmt, mask); -#endif } ret = ff_add_channel_layout(&s->channel_layouts, &fmt); av_channel_layout_uninit(&fmt); diff --git a/libavfilter/af_amerge.c b/libavfilter/af_amerge.c index eabd3f8262..5daf639e74 100644 --- a/libavfilter/af_amerge.c +++ b/libavfilter/af_amerge.c @@ -247,12 +247,6 @@ static int try_push_frame(AVFilterContext *ctx, int nb_samples) if ((ret = av_channel_layout_copy(&outbuf->ch_layout, &outlink->ch_layout)) < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - outbuf->channel_layout = outlink->channel_layout; - outbuf->channels = outlink->ch_layout.nb_channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif while (nb_samples) { /* Unroll the most common sample formats: speed +~350% for the loop, diff --git a/libavfilter/af_aresample.c b/libavfilter/af_aresample.c index f4bcc45616..d6bd77beb3 100644 --- a/libavfilter/af_aresample.c +++ b/libavfilter/af_aresample.c @@ -194,12 +194,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *insamplesref) av_frame_copy_props(outsamplesref, insamplesref); outsamplesref->format = outlink->format; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - outsamplesref->channels = outlink->ch_layout.nb_channels; - outsamplesref->channel_layout = outlink->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif ret = av_channel_layout_copy(&outsamplesref->ch_layout, &outlink->ch_layout); if (ret < 0) return ret; diff --git a/libavfilter/af_ashowinfo.c b/libavfilter/af_ashowinfo.c index 17a0a90542..b1b462d68f 100644 --- a/libavfilter/af_ashowinfo.c +++ b/libavfilter/af_ashowinfo.c @@ -178,9 +178,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *buf) { AVFilterContext *ctx = inlink->dst; AShowInfoContext *s = ctx->priv; -#if FF_API_OLD_CHANNEL_LAYOUT - AVChannelLayout layout = { 0 }; -#endif char chlayout_str[128]; uint32_t checksum = 0; int channels = inlink->ch_layout.nb_channels; @@ -203,13 +200,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *buf) s->plane_checksums[0]; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (av_channel_layout_from_mask(&layout, buf->channel_layout)) { - av_channel_layout_describe(&layout, chlayout_str, sizeof(chlayout_str)); -FF_ENABLE_DEPRECATION_WARNINGS - } else if (buf->ch_layout.nb_channels) -#endif av_channel_layout_describe(&buf->ch_layout, chlayout_str, sizeof(chlayout_str)); av_log(ctx, AV_LOG_INFO, diff --git a/libavfilter/af_channelmap.c b/libavfilter/af_channelmap.c index 69718f5b4a..5e1cf57680 100644 --- a/libavfilter/af_channelmap.c +++ b/libavfilter/af_channelmap.c @@ -324,12 +324,6 @@ static int channelmap_filter_frame(AVFilterLink *inlink, AVFrame *buf) memcpy(buf->data, buf->extended_data, FFMIN(FF_ARRAY_ELEMS(buf->data), nch_out) * sizeof(buf->data[0])); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - buf->channels = outlink->ch_layout.nb_channels; - buf->channel_layout = outlink->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if ((ret = av_channel_layout_copy(&buf->ch_layout, &outlink->ch_layout)) < 0) return ret; diff --git a/libavfilter/af_channelsplit.c b/libavfilter/af_channelsplit.c index 932b51d701..f026c74494 100644 --- a/libavfilter/af_channelsplit.c +++ b/libavfilter/af_channelsplit.c @@ -164,13 +164,6 @@ static int filter_frame(AVFilterLink *outlink, AVFrame *buf) ret = av_channel_layout_from_mask(&buf_out->ch_layout, 1ULL << channel); if (ret < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - buf_out->channel_layout = - av_channel_layout_extract_channel(buf->channel_layout, s->map[i]); - buf_out->channels = 1; -FF_ENABLE_DEPRECATION_WARNINGS -#endif return ff_filter_frame(ctx->outputs[i], buf_out); } diff --git a/libavfilter/af_join.c b/libavfilter/af_join.c index 416cfd7a9a..8dab3f0931 100644 --- a/libavfilter/af_join.c +++ b/libavfilter/af_join.c @@ -504,12 +504,6 @@ static int try_push_frame(AVFilterContext *ctx) av_make_q(1, outlink->sample_rate), outlink->time_base); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - frame->channel_layout = outlink->channel_layout; - frame->channels = outlink->ch_layout.nb_channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if ((ret = av_channel_layout_copy(&frame->ch_layout, &outlink->ch_layout)) < 0) goto fail; frame->sample_rate = outlink->sample_rate; diff --git a/libavfilter/af_ladspa.c b/libavfilter/af_ladspa.c index 85e215850d..7567c0577d 100644 --- a/libavfilter/af_ladspa.c +++ b/libavfilter/af_ladspa.c @@ -402,11 +402,6 @@ static int config_output(AVFilterLink *outlink) if (s->nb_inputs == s->nb_outputs) { if ((ret = av_channel_layout_copy(&outlink->ch_layout, &inlink->ch_layout)) < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - outlink->channel_layout = inlink->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } ret = 0; diff --git a/libavfilter/af_lv2.c b/libavfilter/af_lv2.c index e577b1624d..7b3ddf9448 100644 --- a/libavfilter/af_lv2.c +++ b/libavfilter/af_lv2.c @@ -292,11 +292,6 @@ static int config_output(AVFilterLink *outlink) int ret; if ((ret = av_channel_layout_copy(&outlink->ch_layout, &inlink->ch_layout)) < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - outlink->channel_layout = inlink->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } } else { diff --git a/libavfilter/af_pan.c b/libavfilter/af_pan.c index cfed9f146a..37f563299e 100644 --- a/libavfilter/af_pan.c +++ b/libavfilter/af_pan.c @@ -379,12 +379,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *insamples) swr_convert(pan->swr, outsamples->extended_data, n, (void *)insamples->extended_data, n); av_frame_copy_props(outsamples, insamples); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - outsamples->channel_layout = outlink->channel_layout; - outsamples->channels = outlink->ch_layout.nb_channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if ((ret = av_channel_layout_copy(&outsamples->ch_layout, &outlink->ch_layout)) < 0) { av_frame_free(&outsamples); av_frame_free(&insamples); diff --git a/libavfilter/audio.c b/libavfilter/audio.c index 35270c14d2..0abc70c14c 100644 --- a/libavfilter/audio.c +++ b/libavfilter/audio.c @@ -46,13 +46,6 @@ AVFrame *ff_default_get_audio_buffer(AVFilterLink *link, int nb_samples) AVFrame *frame = NULL; int channels = link->ch_layout.nb_channels; int align = av_cpu_max_align(); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - int channel_layout_nb_channels = av_get_channel_layout_nb_channels(link->channel_layout); - - av_assert0(channels == channel_layout_nb_channels || !channel_layout_nb_channels); -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (!link->frame_pool) { link->frame_pool = ff_frame_pool_audio_init(av_buffer_allocz, channels, @@ -87,11 +80,6 @@ FF_ENABLE_DEPRECATION_WARNINGS return NULL; frame->nb_samples = nb_samples; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - frame->channel_layout = link->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (link->ch_layout.order != AV_CHANNEL_ORDER_UNSPEC && av_channel_layout_copy(&frame->ch_layout, &link->ch_layout) < 0) { av_frame_free(&frame); diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 246d000251..a5d9398c9a 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -560,14 +560,6 @@ struct AVFilterLink { int h; ///< agreed upon image height AVRational sample_aspect_ratio; ///< agreed upon sample aspect ratio /* These parameters apply only to audio */ -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * channel layout of current buffer (see libavutil/channel_layout.h) - * @deprecated use ch_layout - */ - attribute_deprecated - uint64_t channel_layout; -#endif int sample_rate; ///< samples per second int format; ///< agreed upon media format diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c index e4f59f56e2..a43c23065c 100644 --- a/libavfilter/avfiltergraph.c +++ b/libavfilter/avfiltergraph.c @@ -734,12 +734,6 @@ static int pick_format(AVFilterLink *link, AVFilterLink *ref) ret = av_channel_layout_copy(&link->ch_layout, &link->incfg.channel_layouts->channel_layouts[0]); if (ret < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - link->channel_layout = link->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - link->ch_layout.u.mask : 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } ff_formats_unref(&link->incfg.formats); diff --git a/libavfilter/buffersink.c b/libavfilter/buffersink.c index 6ba2970dd5..66de58782c 100644 --- a/libavfilter/buffersink.c +++ b/libavfilter/buffersink.c @@ -52,12 +52,6 @@ typedef struct BufferSinkContext { /* only used for audio */ enum AVSampleFormat *sample_fmts; ///< list of accepted sample formats int sample_fmts_size; -#if FF_API_OLD_CHANNEL_LAYOUT - int64_t *channel_layouts; ///< list of accepted channel layouts - int channel_layouts_size; - int *channel_counts; ///< list of accepted channel counts - int channel_counts_size; -#endif char *channel_layouts_str; ///< list of accepted channel layouts int all_channel_counts; int *sample_rates; ///< list of accepted sample rates @@ -68,31 +62,6 @@ typedef struct BufferSinkContext { #define NB_ITEMS(list) (list ## _size / sizeof(*list)) -#if FF_API_OLD_CHANNEL_LAYOUT -static void cleanup_redundant_layouts(AVFilterContext *ctx) -{ - BufferSinkContext *buf = ctx->priv; - int nb_layouts = NB_ITEMS(buf->channel_layouts); - int nb_counts = NB_ITEMS(buf->channel_counts); - uint64_t counts = 0; - int i, lc, n; - - for (i = 0; i < nb_counts; i++) - if (buf->channel_counts[i] < 64) - counts |= (uint64_t)1 << buf->channel_counts[i]; - for (i = lc = 0; i < nb_layouts; i++) { - n = av_popcount64(buf->channel_layouts[i]); - if (n < 64 && (counts & ((uint64_t)1 << n))) - av_log(ctx, AV_LOG_WARNING, - "Removing channel layout 0x%"PRIx64", redundant with %d channels\n", - buf->channel_layouts[i], n); - else - buf->channel_layouts[lc++] = buf->channel_layouts[i]; - } - buf->channel_layouts_size = lc * sizeof(*buf->channel_layouts); -} -#endif - int attribute_align_arg av_buffersink_get_frame(AVFilterContext *ctx, AVFrame *frame) { return av_buffersink_get_frame_flags(ctx, frame, 0); @@ -212,11 +181,6 @@ MAKE_AVFILTERLINK_ACCESSOR(AVRational , sample_aspect_ratio) MAKE_AVFILTERLINK_ACCESSOR(enum AVColorSpace, colorspace) MAKE_AVFILTERLINK_ACCESSOR(enum AVColorRange, color_range) -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS -MAKE_AVFILTERLINK_ACCESSOR(uint64_t , channel_layout ) -FF_ENABLE_DEPRECATION_WARNINGS -#endif MAKE_AVFILTERLINK_ACCESSOR(int , sample_rate ) MAKE_AVFILTERLINK_ACCESSOR(AVBufferRef * , hw_frames_ctx ) @@ -280,10 +244,6 @@ static int asink_query_formats(AVFilterContext *ctx) CHECK_LIST_SIZE(sample_fmts) CHECK_LIST_SIZE(sample_rates) -#if FF_API_OLD_CHANNEL_LAYOUT - CHECK_LIST_SIZE(channel_layouts) - CHECK_LIST_SIZE(channel_counts) -#endif if (buf->sample_fmts_size) { for (i = 0; i < NB_ITEMS(buf->sample_fmts); i++) @@ -293,32 +253,10 @@ static int asink_query_formats(AVFilterContext *ctx) return ret; } - if ( -#if FF_API_OLD_CHANNEL_LAYOUT - buf->channel_layouts_size || buf->channel_counts_size || -#endif - buf->channel_layouts_str || buf->all_channel_counts) { -#if FF_API_OLD_CHANNEL_LAYOUT - cleanup_redundant_layouts(ctx); - for (i = 0; i < NB_ITEMS(buf->channel_layouts); i++) - if ((ret = av_channel_layout_from_mask(&layout, buf->channel_layouts[i])) < 0 || - (ret = ff_add_channel_layout(&layouts, &layout)) < 0) - return ret; - for (i = 0; i < NB_ITEMS(buf->channel_counts); i++) { - layout = FF_COUNT2LAYOUT(buf->channel_counts[i]); - if ((ret = ff_add_channel_layout(&layouts, &layout)) < 0) - return ret; - } -#endif + if (buf->channel_layouts_str || buf->all_channel_counts) { if (buf->channel_layouts_str) { const char *cur = buf->channel_layouts_str; -#if FF_API_OLD_CHANNEL_LAYOUT - if (layouts) - av_log(ctx, AV_LOG_WARNING, - "Conflicting ch_layouts and list of channel_counts/channel_layouts. Ignoring the former\n"); - else -#endif while (cur) { char *next = strchr(cur, '|'); if (next) @@ -372,12 +310,6 @@ static const AVOption buffersink_options[] = { static const AVOption abuffersink_options[] = { { "sample_fmts", "set the supported sample formats", OFFSET(sample_fmts), AV_OPT_TYPE_BINARY, .flags = FLAGS }, { "sample_rates", "set the supported sample rates", OFFSET(sample_rates), AV_OPT_TYPE_BINARY, .flags = FLAGS }, -#if FF_API_OLD_CHANNEL_LAYOUT - { "channel_layouts", "set the supported channel layouts (deprecated, use ch_layouts)", - OFFSET(channel_layouts), AV_OPT_TYPE_BINARY, .flags = FLAGS | AV_OPT_FLAG_DEPRECATED }, - { "channel_counts", "set the supported channel counts (deprecated, use ch_layouts)", - OFFSET(channel_counts), AV_OPT_TYPE_BINARY, .flags = FLAGS | AV_OPT_FLAG_DEPRECATED }, -#endif { "ch_layouts", "set a '|'-separated list of supported channel layouts", OFFSET(channel_layouts_str), AV_OPT_TYPE_STRING, .flags = FLAGS }, { "all_channel_counts", "accept all channel counts", OFFSET(all_channel_counts), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, FLAGS }, diff --git a/libavfilter/buffersink.h b/libavfilter/buffersink.h index a9374b8b4f..49ffc5bb4e 100644 --- a/libavfilter/buffersink.h +++ b/libavfilter/buffersink.h @@ -121,10 +121,6 @@ enum AVColorSpace av_buffersink_get_colorspace (const AVFilterContext *c enum AVColorRange av_buffersink_get_color_range (const AVFilterContext *ctx); int av_buffersink_get_channels (const AVFilterContext *ctx); -#if FF_API_OLD_CHANNEL_LAYOUT -attribute_deprecated -uint64_t av_buffersink_get_channel_layout (const AVFilterContext *ctx); -#endif int av_buffersink_get_ch_layout (const AVFilterContext *ctx, AVChannelLayout *ch_layout); int av_buffersink_get_sample_rate (const AVFilterContext *ctx); diff --git a/libavfilter/buffersrc.c b/libavfilter/buffersrc.c index afe69433b2..e98e31185b 100644 --- a/libavfilter/buffersrc.c +++ b/libavfilter/buffersrc.c @@ -138,16 +138,6 @@ int av_buffersrc_parameters_set(AVFilterContext *ctx, AVBufferSrcParameters *par } if (param->sample_rate > 0) s->sample_rate = param->sample_rate; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - // if the old/new fields are set inconsistently, prefer the old ones - if (param->channel_layout && (param->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - param->ch_layout.u.mask != param->channel_layout)) { - av_channel_layout_uninit(&s->ch_layout); - av_channel_layout_from_mask(&s->ch_layout, param->channel_layout); -FF_ENABLE_DEPRECATION_WARNINGS - } else -#endif if (param->ch_layout.nb_channels) { int ret = av_channel_layout_copy(&s->ch_layout, ¶m->ch_layout); if (ret < 0) @@ -192,16 +182,6 @@ int attribute_align_arg av_buffersrc_add_frame_flags(AVFilterContext *ctx, AVFra AVFrame *copy; int refcounted, ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (frame && frame->channel_layout && - av_get_channel_layout_nb_channels(frame->channel_layout) != frame->channels) { - av_log(ctx, AV_LOG_ERROR, "Layout indicates a different number of channels than actually present\n"); - return AVERROR(EINVAL); - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif - s->nb_failed_requests = 0; if (!frame) @@ -223,13 +203,6 @@ FF_ENABLE_DEPRECATION_WARNINGS break; case AVMEDIA_TYPE_AUDIO: /* For layouts unknown on input but known on link after negotiation. */ -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!frame->channel_layout) - frame->channel_layout = s->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - s->ch_layout.u.mask : 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (frame->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC) { ret = av_channel_layout_copy(&frame->ch_layout, &s->ch_layout); if (ret < 0) @@ -400,22 +373,9 @@ static av_cold int init_audio(AVFilterContext *ctx) if (!s->ch_layout.nb_channels) { ret = av_channel_layout_from_string(&s->ch_layout, s->channel_layout_str); if (ret < 0) { -#if FF_API_OLD_CHANNEL_LAYOUT - uint64_t mask; -FF_DISABLE_DEPRECATION_WARNINGS - mask = av_get_channel_layout(s->channel_layout_str); - if (!mask) { -#endif - av_log(ctx, AV_LOG_ERROR, "Invalid channel layout %s.\n", - s->channel_layout_str); - return AVERROR(EINVAL); -#if FF_API_OLD_CHANNEL_LAYOUT - } -FF_ENABLE_DEPRECATION_WARNINGS - av_log(ctx, AV_LOG_WARNING, "Channel layout '%s' uses a deprecated syntax.\n", + av_log(ctx, AV_LOG_ERROR, "Invalid channel layout %s.\n", s->channel_layout_str); - av_channel_layout_from_mask(&s->ch_layout, mask); -#endif + return AVERROR(EINVAL); } } diff --git a/libavfilter/buffersrc.h b/libavfilter/buffersrc.h index 1e29f0340e..6f3344f445 100644 --- a/libavfilter/buffersrc.h +++ b/libavfilter/buffersrc.h @@ -110,15 +110,6 @@ typedef struct AVBufferSrcParameters { */ int sample_rate; -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * Audio only, the audio channel layout - * @deprecated use ch_layout - */ - attribute_deprecated - uint64_t channel_layout; -#endif - /** * Audio only, the audio channel layout */ diff --git a/libavfilter/f_streamselect.c b/libavfilter/f_streamselect.c index 1328a842f9..c64b33a563 100644 --- a/libavfilter/f_streamselect.c +++ b/libavfilter/f_streamselect.c @@ -119,11 +119,6 @@ static int config_output(AVFilterLink *outlink) case AVMEDIA_TYPE_AUDIO: outlink->sample_rate = inlink->sample_rate; outlink->ch_layout.nb_channels = inlink->ch_layout.nb_channels; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - outlink->channel_layout = inlink->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif break; } diff --git a/libavfilter/formats.c b/libavfilter/formats.c index 681f0b1203..d3f4c7f09c 100644 --- a/libavfilter/formats.c +++ b/libavfilter/formats.c @@ -972,24 +972,8 @@ int ff_parse_channel_layout(AVChannelLayout *ret, int *nret, const char *arg, res = av_channel_layout_from_string(&chlayout, arg); if (res < 0) { -#if FF_API_OLD_CHANNEL_LAYOUT - int64_t mask; - int nb_channels; -FF_DISABLE_DEPRECATION_WARNINGS - if (av_get_extended_channel_layout(arg, &mask, &nb_channels) < 0) { -#endif - av_log(log_ctx, AV_LOG_ERROR, "Invalid channel layout '%s'\n", arg); - return AVERROR(EINVAL); -#if FF_API_OLD_CHANNEL_LAYOUT - } -FF_ENABLE_DEPRECATION_WARNINGS - av_log(log_ctx, AV_LOG_WARNING, "Channel layout '%s' uses a deprecated syntax.\n", - arg); - if (mask) - av_channel_layout_from_mask(&chlayout, mask); - else - chlayout = (AVChannelLayout) { .order = AV_CHANNEL_ORDER_UNSPEC, .nb_channels = nb_channels }; -#endif + av_log(log_ctx, AV_LOG_ERROR, "Invalid channel layout '%s'\n", arg); + return AVERROR(EINVAL); } if (chlayout.order == AV_CHANNEL_ORDER_UNSPEC && !nret) { diff --git a/libavfilter/framepool.c b/libavfilter/framepool.c index 0404589055..841caa0460 100644 --- a/libavfilter/framepool.c +++ b/libavfilter/framepool.c @@ -234,11 +234,6 @@ AVFrame *ff_frame_pool_get(FFFramePool *pool) break; case AVMEDIA_TYPE_AUDIO: frame->nb_samples = pool->nb_samples; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - frame->channels = pool->channels; -FF_ENABLE_DEPRECATION_WARNINGS -#endif frame->ch_layout.nb_channels = pool->channels; frame->format = pool->format; frame->linesize[0] = pool->linesize[0]; diff --git a/libavfilter/tests/formats.c b/libavfilter/tests/formats.c index 2bdceb0d21..ed1de24a4c 100644 --- a/libavfilter/tests/formats.c +++ b/libavfilter/tests/formats.c @@ -118,9 +118,6 @@ int main(void) "65C", "5.1", "stereo", - "1+1+1+1", - "1c+1c+1c+1c", - "2c+1c", "0x3", }; diff --git a/libavformat/demux.c b/libavformat/demux.c index 6f640b92b1..06fa437483 100644 --- a/libavformat/demux.c +++ b/libavformat/demux.c @@ -199,18 +199,6 @@ static int update_stream_avctx(AVFormatContext *s) sti->parser = NULL; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (st->codecpar->ch_layout.nb_channels && - !st->codecpar->channels) { - st->codecpar->channels = st->codecpar->ch_layout.nb_channels; - st->codecpar->channel_layout = st->codecpar->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - st->codecpar->ch_layout.u.mask : 0; - - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif - /* update internal codec context, for the parser */ ret = avcodec_parameters_to_context(sti->avctx, st->codecpar); if (ret < 0) @@ -1356,13 +1344,6 @@ static int read_frame_internal(AVFormatContext *s, AVPacket *pkt) return ret; st->codecpar->sample_rate = sti->avctx->sample_rate; st->codecpar->bit_rate = sti->avctx->bit_rate; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - st->codecpar->channels = sti->avctx->ch_layout.nb_channels; - st->codecpar->channel_layout = sti->avctx->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - sti->avctx->ch_layout.u.mask : 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif ret = av_channel_layout_copy(&st->codecpar->ch_layout, &sti->avctx->ch_layout); if (ret < 0) return ret; diff --git a/libavformat/demux_utils.c b/libavformat/demux_utils.c index 56cc6e15d8..b16bc47a96 100644 --- a/libavformat/demux_utils.c +++ b/libavformat/demux_utils.c @@ -158,18 +158,6 @@ int ff_add_param_change(AVPacket *pkt, int32_t channels, if (!pkt) return AVERROR(EINVAL); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (channels) { - size += 4; - flags |= AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT; - } - if (channel_layout) { - size += 8; - flags |= AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT; - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (sample_rate) { size += 4; flags |= AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE; @@ -182,14 +170,6 @@ FF_ENABLE_DEPRECATION_WARNINGS if (!data) return AVERROR(ENOMEM); bytestream_put_le32(&data, flags); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (channels) - bytestream_put_le32(&data, channels); - if (channel_layout) - bytestream_put_le64(&data, channel_layout); -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (sample_rate) bytestream_put_le32(&data, sample_rate); if (width || height) { diff --git a/libavformat/dfpwmdec.c b/libavformat/dfpwmdec.c index b92b00f13a..4c998bea48 100644 --- a/libavformat/dfpwmdec.c +++ b/libavformat/dfpwmdec.c @@ -31,9 +31,6 @@ typedef struct DFPWMAudioDemuxerContext { AVClass *class; int sample_rate; -#if FF_API_OLD_CHANNEL_LAYOUT - int channels; -#endif AVChannelLayout ch_layout; } DFPWMAudioDemuxerContext; @@ -52,16 +49,9 @@ static int dfpwm_read_header(AVFormatContext *s) par->codec_type = AVMEDIA_TYPE_AUDIO; par->codec_id = AV_CODEC_ID_DFPWM; par->sample_rate = s1->sample_rate; -#if FF_API_OLD_CHANNEL_LAYOUT - if (s1->ch_layout.nb_channels) { -#endif ret = av_channel_layout_copy(&par->ch_layout, &s1->ch_layout); if (ret < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT - } else - par->ch_layout.nb_channels = s1->channels; -#endif par->bits_per_coded_sample = 1; par->block_align = 1; @@ -71,13 +61,8 @@ static int dfpwm_read_header(AVFormatContext *s) static const AVOption dfpwm_options[] = { { "sample_rate", "", offsetof(DFPWMAudioDemuxerContext, sample_rate), AV_OPT_TYPE_INT, {.i64 = 48000}, 0, INT_MAX, AV_OPT_FLAG_DECODING_PARAM }, -#if FF_API_OLD_CHANNEL_LAYOUT - { "channels", "", offsetof(DFPWMAudioDemuxerContext, channels), AV_OPT_TYPE_INT, {.i64 = 1}, 0, INT_MAX, AV_OPT_FLAG_DECODING_PARAM | AV_OPT_FLAG_DEPRECATED }, - { "ch_layout", "", offsetof(DFPWMAudioDemuxerContext, ch_layout), AV_OPT_TYPE_CHLAYOUT, {.str = NULL}, 0, 0, AV_OPT_FLAG_DECODING_PARAM }, -#else { "ch_layout", "", offsetof(DFPWMAudioDemuxerContext, ch_layout), AV_OPT_TYPE_CHLAYOUT, {.str = "mono"}, 0, 0, AV_OPT_FLAG_DECODING_PARAM }, -#endif - { NULL }, +{ NULL }, }; static const AVClass dfpwm_demuxer_class = { .class_name = "dfpwm demuxer", diff --git a/libavformat/dump.c b/libavformat/dump.c index aff51b43f6..b73015d2d8 100644 --- a/libavformat/dump.c +++ b/libavformat/dump.c @@ -175,10 +175,6 @@ static void dump_paramchange(void *ctx, const AVPacketSideData *sd, int log_leve int size = sd->size; const uint8_t *data = sd->data; uint32_t flags, sample_rate, width, height; -#if FF_API_OLD_CHANNEL_LAYOUT - uint32_t channels; - uint64_t layout; -#endif if (!data || sd->size < 4) goto fail; @@ -187,27 +183,6 @@ static void dump_paramchange(void *ctx, const AVPacketSideData *sd, int log_leve data += 4; size -= 4; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT) { - if (size < 4) - goto fail; - channels = AV_RL32(data); - data += 4; - size -= 4; - av_log(ctx, log_level, "channel count %"PRIu32", ", channels); - } - if (flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT) { - if (size < 8) - goto fail; - layout = AV_RL64(data); - data += 8; - size -= 8; - av_log(ctx, log_level, - "channel layout: %s, ", av_get_channel_name(layout)); - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif /* FF_API_OLD_CHANNEL_LAYOUT */ if (flags & AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE) { if (size < 4) goto fail; diff --git a/libavformat/mux.c b/libavformat/mux.c index de10d2c008..659fbbad10 100644 --- a/libavformat/mux.c +++ b/libavformat/mux.c @@ -233,22 +233,6 @@ static int init_muxer(AVFormatContext *s, AVDictionary **options) goto fail; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - /* if the caller is using the deprecated channel layout API, - * convert it to the new style */ - if (!par->ch_layout.nb_channels && - par->channels) { - if (par->channel_layout) { - av_channel_layout_from_mask(&par->ch_layout, par->channel_layout); - } else { - par->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - par->ch_layout.nb_channels = par->channels; - } - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (!par->block_align) par->block_align = par->ch_layout.nb_channels * av_get_bits_per_sample(par->codec_id) >> 3; diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c index afa27b827c..e2b39ccffb 100644 --- a/libavformat/nutdec.c +++ b/libavformat/nutdec.c @@ -969,10 +969,6 @@ static int read_sm_data(AVFormatContext *s, AVIOContext *bc, AVPacket *pkt, int if (!dst) return AVERROR(ENOMEM); bytestream_put_le32(&dst, -#if FF_API_OLD_CHANNEL_LAYOUT - AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT*(!!channels) + - AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT*(!!channel_layout) + -#endif AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE*(!!sample_rate) + AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS*(!!(width|height)) ); diff --git a/libavformat/nutenc.c b/libavformat/nutenc.c index a5198c7ca9..492559062a 100644 --- a/libavformat/nutenc.c +++ b/libavformat/nutenc.c @@ -916,21 +916,6 @@ static int write_sm_data(AVFormatContext *s, AVIOContext *bc, AVPacket *pkt, int break; case AV_PKT_DATA_PARAM_CHANGE: flags = bytestream_get_le32(&data); -#if FF_API_OLD_CHANNEL_LAYOUT - if (flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT) { - put_str(dyn_bc, "Channels"); - put_s(dyn_bc, bytestream_get_le32(&data)); - sm_data_count++; - } - if (flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT) { - put_str(dyn_bc, "ChannelLayout"); - put_s(dyn_bc, -2); - put_str(dyn_bc, "u64"); - put_v(dyn_bc, 8); - avio_write(dyn_bc, data, 8); data+=8; - sm_data_count++; - } -#endif if (flags & AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE) { put_str(dyn_bc, "SampleRate"); put_s(dyn_bc, bytestream_get_le32(&data)); diff --git a/libavformat/pcmdec.c b/libavformat/pcmdec.c index 11ba0b5c0c..377e6d80a1 100644 --- a/libavformat/pcmdec.c +++ b/libavformat/pcmdec.c @@ -33,9 +33,6 @@ typedef struct PCMAudioDemuxerContext { AVClass *class; int sample_rate; -#if FF_API_OLD_CHANNEL_LAYOUT - int channels; -#endif AVChannelLayout ch_layout; } PCMAudioDemuxerContext; @@ -55,16 +52,9 @@ static int pcm_read_header(AVFormatContext *s) par->codec_type = AVMEDIA_TYPE_AUDIO; par->codec_id = s->iformat->raw_codec_id; par->sample_rate = s1->sample_rate; -#if FF_API_OLD_CHANNEL_LAYOUT - if (s1->ch_layout.nb_channels) { -#endif ret = av_channel_layout_copy(&par->ch_layout, &s1->ch_layout); if (ret < 0) return ret; -#if FF_API_OLD_CHANNEL_LAYOUT - } else - par->ch_layout.nb_channels = s1->channels; -#endif av_opt_get(s->pb, "mime_type", AV_OPT_SEARCH_CHILDREN, &mime_type); if (mime_type && s->iformat->mime_type) { @@ -114,12 +104,7 @@ static int pcm_read_header(AVFormatContext *s) static const AVOption pcm_options[] = { { "sample_rate", "", offsetof(PCMAudioDemuxerContext, sample_rate), AV_OPT_TYPE_INT, {.i64 = 44100}, 0, INT_MAX, AV_OPT_FLAG_DECODING_PARAM }, -#if FF_API_OLD_CHANNEL_LAYOUT - { "channels", "", offsetof(PCMAudioDemuxerContext, channels), AV_OPT_TYPE_INT, {.i64 = 1}, 0, INT_MAX, AV_OPT_FLAG_DECODING_PARAM | AV_OPT_FLAG_DEPRECATED }, - { "ch_layout", "", offsetof(PCMAudioDemuxerContext, ch_layout), AV_OPT_TYPE_CHLAYOUT, {.str = NULL}, 0, 0, AV_OPT_FLAG_DECODING_PARAM }, -#else { "ch_layout", "", offsetof(PCMAudioDemuxerContext, ch_layout), AV_OPT_TYPE_CHLAYOUT, {.str = "mono"}, 0, 0, AV_OPT_FLAG_DECODING_PARAM }, -#endif { NULL }, }; static const AVClass pcm_demuxer_class = { @@ -180,12 +165,7 @@ PCMDEF(vidc, "PCM Archimedes VIDC", NULL, VIDC) #if CONFIG_SLN_DEMUXER static const AVOption sln_options[] = { { "sample_rate", "", offsetof(PCMAudioDemuxerContext, sample_rate), AV_OPT_TYPE_INT, {.i64 = 8000}, 0, INT_MAX, AV_OPT_FLAG_DECODING_PARAM }, -#if FF_API_OLD_CHANNEL_LAYOUT - { "channels", "", offsetof(PCMAudioDemuxerContext, channels), AV_OPT_TYPE_INT, {.i64 = 1}, 0, INT_MAX, AV_OPT_FLAG_DECODING_PARAM | AV_OPT_FLAG_DEPRECATED }, - { "ch_layout", "", offsetof(PCMAudioDemuxerContext, ch_layout), AV_OPT_TYPE_CHLAYOUT, {.str = NULL}, 0, 0, AV_OPT_FLAG_DECODING_PARAM }, -#else { "ch_layout", "", offsetof(PCMAudioDemuxerContext, ch_layout), AV_OPT_TYPE_CHLAYOUT, {.str = "mono"}, 0, 0, AV_OPT_FLAG_DECODING_PARAM }, -#endif { NULL }, }; diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c index b59d798f29..35b03078c8 100644 --- a/libavutil/channel_layout.c +++ b/libavutil/channel_layout.c @@ -214,190 +214,6 @@ static const struct channel_layout_name channel_layout_map[] = { { "22.2", AV_CHANNEL_LAYOUT_22POINT2, }, }; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS -static uint64_t get_channel_layout_single(const char *name, int name_len) -{ - int i; - char *end; - int64_t layout; - - for (i = 0; i < FF_ARRAY_ELEMS(channel_layout_map); i++) { - if (strlen(channel_layout_map[i].name) == name_len && - !memcmp(channel_layout_map[i].name, name, name_len)) - return channel_layout_map[i].layout.u.mask; - } - for (i = 0; i < FF_ARRAY_ELEMS(channel_names); i++) - if (channel_names[i].name && - strlen(channel_names[i].name) == name_len && - !memcmp(channel_names[i].name, name, name_len)) - return (int64_t)1 << i; - - errno = 0; - i = strtol(name, &end, 10); - - if (!errno && (end + 1 - name == name_len && *end == 'c')) - return av_get_default_channel_layout(i); - - errno = 0; - layout = strtoll(name, &end, 0); - if (!errno && end - name == name_len) - return FFMAX(layout, 0); - return 0; -} - -uint64_t av_get_channel_layout(const char *name) -{ - const char *n, *e; - const char *name_end = name + strlen(name); - int64_t layout = 0, layout_single; - - for (n = name; n < name_end; n = e + 1) { - for (e = n; e < name_end && *e != '+' && *e != '|'; e++); - layout_single = get_channel_layout_single(n, e - n); - if (!layout_single) - return 0; - layout |= layout_single; - } - return layout; -} - -int av_get_extended_channel_layout(const char *name, uint64_t* channel_layout, int* nb_channels) -{ - int nb = 0; - char *end; - uint64_t layout = av_get_channel_layout(name); - - if (layout) { - *channel_layout = layout; - *nb_channels = av_get_channel_layout_nb_channels(layout); - return 0; - } - - nb = strtol(name, &end, 10); - if (!errno && *end == 'C' && *(end + 1) == '\0' && nb > 0 && nb < 64) { - *channel_layout = 0; - *nb_channels = nb; - return 0; - } - - return AVERROR(EINVAL); -} - -void av_bprint_channel_layout(struct AVBPrint *bp, - int nb_channels, uint64_t channel_layout) -{ - int i; - - if (nb_channels <= 0) - nb_channels = av_get_channel_layout_nb_channels(channel_layout); - - for (i = 0; i < FF_ARRAY_ELEMS(channel_layout_map); i++) - if (nb_channels == channel_layout_map[i].layout.nb_channels && - channel_layout == channel_layout_map[i].layout.u.mask) { - av_bprintf(bp, "%s", channel_layout_map[i].name); - return; - } - - av_bprintf(bp, "%d channels", nb_channels); - if (channel_layout) { - int i, ch; - av_bprintf(bp, " ("); - for (i = 0, ch = 0; i < 64; i++) { - if ((channel_layout & (UINT64_C(1) << i))) { - const char *name = get_channel_name(i); - if (name) { - if (ch > 0) - av_bprintf(bp, "+"); - av_bprintf(bp, "%s", name); - } - ch++; - } - } - av_bprintf(bp, ")"); - } -} - -void av_get_channel_layout_string(char *buf, int buf_size, - int nb_channels, uint64_t channel_layout) -{ - AVBPrint bp; - - av_bprint_init_for_buffer(&bp, buf, buf_size); - av_bprint_channel_layout(&bp, nb_channels, channel_layout); -} - -int av_get_channel_layout_nb_channels(uint64_t channel_layout) -{ - return av_popcount64(channel_layout); -} - -int64_t av_get_default_channel_layout(int nb_channels) { - int i; - for (i = 0; i < FF_ARRAY_ELEMS(channel_layout_map); i++) - if (nb_channels == channel_layout_map[i].layout.nb_channels) - return channel_layout_map[i].layout.u.mask; - return 0; -} - -int av_get_channel_layout_channel_index(uint64_t channel_layout, - uint64_t channel) -{ - if (!(channel_layout & channel) || - av_get_channel_layout_nb_channels(channel) != 1) - return AVERROR(EINVAL); - channel_layout &= channel - 1; - return av_get_channel_layout_nb_channels(channel_layout); -} - -const char *av_get_channel_name(uint64_t channel) -{ - int i; - if (av_get_channel_layout_nb_channels(channel) != 1) - return NULL; - for (i = 0; i < 64; i++) - if ((1ULL<= FF_ARRAY_ELEMS(channel_layout_map)) - return AVERROR_EOF; - if (layout) *layout = channel_layout_map[index].layout.u.mask; - if (name) *name = channel_layout_map[index].name; - return 0; -} -FF_ENABLE_DEPRECATION_WARNINGS -#endif - int av_channel_layout_from_mask(AVChannelLayout *channel_layout, uint64_t mask) { diff --git a/libavutil/channel_layout.h b/libavutil/channel_layout.h index 8dc1a91401..32103a22cd 100644 --- a/libavutil/channel_layout.h +++ b/libavutil/channel_layout.h @@ -192,16 +192,6 @@ enum AVChannelOrder { #define AV_CH_BOTTOM_FRONT_LEFT (1ULL << AV_CHAN_BOTTOM_FRONT_LEFT ) #define AV_CH_BOTTOM_FRONT_RIGHT (1ULL << AV_CHAN_BOTTOM_FRONT_RIGHT ) -#if FF_API_OLD_CHANNEL_LAYOUT -/** Channel mask value used for AVCodecContext.request_channel_layout - to indicate that the user requests the channel order of the decoder output - to be the native codec channel order. - @deprecated channel order is now indicated in a special field in - AVChannelLayout - */ -#define AV_CH_LAYOUT_NATIVE 0x8000000000000000ULL -#endif - /** * @} * @defgroup channel_mask_c Audio channel layouts @@ -430,146 +420,6 @@ typedef struct AVChannelLayout { struct AVBPrint; -#if FF_API_OLD_CHANNEL_LAYOUT -/** - * @name Deprecated Functions - * @{ - */ - -/** - * Return a channel layout id that matches name, or 0 if no match is found. - * - * name can be one or several of the following notations, - * separated by '+' or '|': - * - the name of an usual channel layout (mono, stereo, 4.0, quad, 5.0, - * 5.0(side), 5.1, 5.1(side), 7.1, 7.1(wide), downmix); - * - the name of a single channel (FL, FR, FC, LFE, BL, BR, FLC, FRC, BC, - * SL, SR, TC, TFL, TFC, TFR, TBL, TBC, TBR, DL, DR); - * - a number of channels, in decimal, followed by 'c', yielding - * the default channel layout for that number of channels (@see - * av_get_default_channel_layout); - * - a channel layout mask, in hexadecimal starting with "0x" (see the - * AV_CH_* macros). - * - * Example: "stereo+FC" = "2c+FC" = "2c+1c" = "0x7" - * - * @deprecated use av_channel_layout_from_string() - */ -attribute_deprecated -uint64_t av_get_channel_layout(const char *name); - -/** - * Return a channel layout and the number of channels based on the specified name. - * - * This function is similar to (@see av_get_channel_layout), but can also parse - * unknown channel layout specifications. - * - * @param[in] name channel layout specification string - * @param[out] channel_layout parsed channel layout (0 if unknown) - * @param[out] nb_channels number of channels - * - * @return 0 on success, AVERROR(EINVAL) if the parsing fails. - * @deprecated use av_channel_layout_from_string() - */ -attribute_deprecated -int av_get_extended_channel_layout(const char *name, uint64_t* channel_layout, int* nb_channels); - -/** - * Return a description of a channel layout. - * If nb_channels is <= 0, it is guessed from the channel_layout. - * - * @param buf put here the string containing the channel layout - * @param buf_size size in bytes of the buffer - * @param nb_channels number of channels - * @param channel_layout channel layout bitset - * @deprecated use av_channel_layout_describe() - */ -attribute_deprecated -void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint64_t channel_layout); - -/** - * Append a description of a channel layout to a bprint buffer. - * @deprecated use av_channel_layout_describe() - */ -attribute_deprecated -void av_bprint_channel_layout(struct AVBPrint *bp, int nb_channels, uint64_t channel_layout); - -/** - * Return the number of channels in the channel layout. - * @deprecated use AVChannelLayout.nb_channels - */ -attribute_deprecated -int av_get_channel_layout_nb_channels(uint64_t channel_layout); - -/** - * Return default channel layout for a given number of channels. - * - * @deprecated use av_channel_layout_default() - */ -attribute_deprecated -int64_t av_get_default_channel_layout(int nb_channels); - -/** - * Get the index of a channel in channel_layout. - * - * @param channel_layout channel layout bitset - * @param channel a channel layout describing exactly one channel which must be - * present in channel_layout. - * - * @return index of channel in channel_layout on success, a negative AVERROR - * on error. - * - * @deprecated use av_channel_layout_index_from_channel() - */ -attribute_deprecated -int av_get_channel_layout_channel_index(uint64_t channel_layout, - uint64_t channel); - -/** - * Get the channel with the given index in channel_layout. - * @deprecated use av_channel_layout_channel_from_index() - */ -attribute_deprecated -uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index); - -/** - * Get the name of a given channel. - * - * @return channel name on success, NULL on error. - * - * @deprecated use av_channel_name() - */ -attribute_deprecated -const char *av_get_channel_name(uint64_t channel); - -/** - * Get the description of a given channel. - * - * @param channel a channel layout with a single channel - * @return channel description on success, NULL on error - * @deprecated use av_channel_description() - */ -attribute_deprecated -const char *av_get_channel_description(uint64_t channel); - -/** - * Get the value and name of a standard channel layout. - * - * @param[in] index index in an internal list, starting at 0 - * @param[out] layout channel layout mask - * @param[out] name name of the layout - * @return 0 if the layout exists, - * <0 if index is beyond the limits - * @deprecated use av_channel_layout_standard() - */ -attribute_deprecated -int av_get_standard_channel_layout(unsigned index, uint64_t *layout, - const char **name); -/** - * @} - */ -#endif - /** * Get a human readable string in an abbreviated form describing a given channel. * This is the inverse function of @ref av_channel_from_string(). diff --git a/libavutil/frame.c b/libavutil/frame.c index a3f07ca089..af887b1c76 100644 --- a/libavutil/frame.c +++ b/libavutil/frame.c @@ -28,13 +28,6 @@ #include "samplefmt.h" #include "hwcontext.h" -#if FF_API_OLD_CHANNEL_LAYOUT -#define CHECK_CHANNELS_CONSISTENCY(frame) \ - av_assert2(!(frame)->channel_layout || \ - (frame)->channels == \ - av_get_channel_layout_nb_channels((frame)->channel_layout)) -#endif - static void get_frame_defaults(AVFrame *frame) { memset(frame, 0, sizeof(*frame)); @@ -181,21 +174,6 @@ static int get_audio_buffer(AVFrame *frame, int align) int channels, planes; int ret; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!frame->ch_layout.nb_channels) { - if (frame->channel_layout) { - av_channel_layout_from_mask(&frame->ch_layout, frame->channel_layout); - } else { - frame->ch_layout.nb_channels = frame->channels; - frame->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - } - } - frame->channels = frame->ch_layout.nb_channels; - frame->channel_layout = frame->ch_layout.order == AV_CHANNEL_ORDER_NATIVE ? - frame->ch_layout.u.mask : 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif channels = frame->ch_layout.nb_channels; planes = planar ? channels : 1; if (!frame->linesize[0]) { @@ -245,17 +223,11 @@ int av_frame_get_buffer(AVFrame *frame, int align) if (frame->format < 0) return AVERROR(EINVAL); -FF_DISABLE_DEPRECATION_WARNINGS if (frame->width > 0 && frame->height > 0) return get_video_buffer(frame, align); else if (frame->nb_samples > 0 && - (av_channel_layout_check(&frame->ch_layout) -#if FF_API_OLD_CHANNEL_LAYOUT - || frame->channel_layout || frame->channels > 0 -#endif - )) + (av_channel_layout_check(&frame->ch_layout))) return get_audio_buffer(frame, align); -FF_ENABLE_DEPRECATION_WARNINGS return AVERROR(EINVAL); } @@ -363,11 +335,6 @@ int av_frame_ref(AVFrame *dst, const AVFrame *src) int ret = 0; av_assert1(dst->width == 0 && dst->height == 0); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - av_assert1(dst->channels == 0); -FF_ENABLE_DEPRECATION_WARNINGS -#endif av_assert1(dst->ch_layout.nb_channels == 0 && dst->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC); @@ -375,31 +342,14 @@ FF_ENABLE_DEPRECATION_WARNINGS dst->width = src->width; dst->height = src->height; dst->nb_samples = src->nb_samples; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - dst->channels = src->channels; - dst->channel_layout = src->channel_layout; - if (!av_channel_layout_check(&src->ch_layout)) { - if (src->channel_layout) - av_channel_layout_from_mask(&dst->ch_layout, src->channel_layout); - else { - dst->ch_layout.nb_channels = src->channels; - dst->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - } - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif ret = frame_copy_props(dst, src, 0); if (ret < 0) goto fail; - // this check is needed only until FF_API_OLD_CHANNEL_LAYOUT is out - if (av_channel_layout_check(&src->ch_layout)) { - ret = av_channel_layout_copy(&dst->ch_layout, &src->ch_layout); - if (ret < 0) - goto fail; - } + ret = av_channel_layout_copy(&dst->ch_layout, &src->ch_layout); + if (ret < 0) + goto fail; /* duplicate the frame data if it's not refcounted */ if (!src->buf[0]) { @@ -503,27 +453,10 @@ int av_frame_replace(AVFrame *dst, const AVFrame *src) dst->width = src->width; dst->height = src->height; dst->nb_samples = src->nb_samples; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - dst->channels = src->channels; - dst->channel_layout = src->channel_layout; - if (!av_channel_layout_check(&src->ch_layout)) { - av_channel_layout_uninit(&dst->ch_layout); - if (src->channel_layout) - av_channel_layout_from_mask(&dst->ch_layout, src->channel_layout); - else { - dst->ch_layout.nb_channels = src->channels; - dst->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - } - } else { -#endif + ret = av_channel_layout_copy(&dst->ch_layout, &src->ch_layout); if (ret < 0) goto fail; -#if FF_API_OLD_CHANNEL_LAYOUT - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif wipe_side_data(dst); av_dict_free(&dst->metadata); @@ -649,11 +582,6 @@ void av_frame_unref(AVFrame *frame) void av_frame_move_ref(AVFrame *dst, AVFrame *src) { av_assert1(dst->width == 0 && dst->height == 0); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - av_assert1(dst->channels == 0); -FF_ENABLE_DEPRECATION_WARNINGS -#endif av_assert1(dst->ch_layout.nb_channels == 0 && dst->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC); @@ -692,12 +620,6 @@ int av_frame_make_writable(AVFrame *frame) tmp.format = frame->format; tmp.width = frame->width; tmp.height = frame->height; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - tmp.channels = frame->channels; - tmp.channel_layout = frame->channel_layout; -FF_ENABLE_DEPRECATION_WARNINGS -#endif tmp.nb_samples = frame->nb_samples; ret = av_channel_layout_copy(&tmp.ch_layout, &frame->ch_layout); if (ret < 0) { @@ -745,15 +667,6 @@ AVBufferRef *av_frame_get_plane_buffer(const AVFrame *frame, int plane) if (frame->nb_samples) { int channels = frame->ch_layout.nb_channels; - -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!channels) { - channels = frame->channels; - CHECK_CHANNELS_CONSISTENCY(frame); - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (!channels) return NULL; planes = av_sample_fmt_is_planar(frame->format) ? channels : 1; @@ -860,30 +773,8 @@ static int frame_copy_audio(AVFrame *dst, const AVFrame *src) int channels = dst->ch_layout.nb_channels; int planes = planar ? channels : 1; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - if (!channels || !src->ch_layout.nb_channels) { - if (dst->channels != src->channels || - dst->channel_layout != src->channel_layout) - return AVERROR(EINVAL); - CHECK_CHANNELS_CONSISTENCY(src); - } - if (!channels) { - channels = dst->channels; - planes = planar ? channels : 1; - } -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (dst->nb_samples != src->nb_samples || -#if FF_API_OLD_CHANNEL_LAYOUT - (av_channel_layout_check(&dst->ch_layout) && - av_channel_layout_check(&src->ch_layout) && -#endif av_channel_layout_compare(&dst->ch_layout, &src->ch_layout)) -#if FF_API_OLD_CHANNEL_LAYOUT - ) -#endif return AVERROR(EINVAL); for (int i = 0; i < planes; i++) @@ -901,17 +792,11 @@ int av_frame_copy(AVFrame *dst, const AVFrame *src) if (dst->format != src->format || dst->format < 0) return AVERROR(EINVAL); -FF_DISABLE_DEPRECATION_WARNINGS if (dst->width > 0 && dst->height > 0) return frame_copy_video(dst, src); else if (dst->nb_samples > 0 && - (av_channel_layout_check(&dst->ch_layout) -#if FF_API_OLD_CHANNEL_LAYOUT - || dst->channels > 0 -#endif - )) + (av_channel_layout_check(&dst->ch_layout))) return frame_copy_audio(dst, src); -FF_ENABLE_DEPRECATION_WARNINGS return AVERROR(EINVAL); } diff --git a/libavutil/frame.h b/libavutil/frame.h index c0c1b23db7..96463def3b 100644 --- a/libavutil/frame.h +++ b/libavutil/frame.h @@ -566,15 +566,6 @@ typedef struct AVFrame { */ int sample_rate; -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * Channel layout of the audio data. - * @deprecated use ch_layout instead - */ - attribute_deprecated - uint64_t channel_layout; -#endif - /** * AVBuffer references backing the data for this frame. All the pointers in * data and extended_data must point inside one of the buffers in buf or @@ -720,17 +711,6 @@ typedef struct AVFrame { #define FF_DECODE_ERROR_CONCEALMENT_ACTIVE 4 #define FF_DECODE_ERROR_DECODE_SLICES 8 -#if FF_API_OLD_CHANNEL_LAYOUT - /** - * number of audio channels, only used for audio. - * - encoding: unused - * - decoding: Read by user. - * @deprecated use ch_layout instead - */ - attribute_deprecated - int channels; -#endif - #if FF_API_FRAME_PKT /** * size of the corresponding packet containing the compressed diff --git a/libavutil/opt.c b/libavutil/opt.c index 0908751752..183c7e4108 100644 --- a/libavutil/opt.c +++ b/libavutil/opt.c @@ -72,11 +72,6 @@ static int read_number(const AVOption *o, const void *dst, double *num, int *den case AV_OPT_TYPE_INT: *intnum = *(int *)dst; return 0; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: -FF_ENABLE_DEPRECATION_WARNINGS -#endif case AV_OPT_TYPE_DURATION: case AV_OPT_TYPE_INT64: case AV_OPT_TYPE_UINT64: @@ -131,11 +126,6 @@ static int write_number(void *obj, const AVOption *o, void *dst, double num, int *(int *)dst = llrint(num / den) * intnum; break; case AV_OPT_TYPE_DURATION: -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: -FF_ENABLE_DEPRECATION_WARNINGS -#endif case AV_OPT_TYPE_INT64:{ double d = num / den; if (intnum == 1 && d == (double)INT64_MAX) { @@ -496,9 +486,6 @@ FF_DISABLE_DEPRECATION_WARNINGS o->type != AV_OPT_TYPE_PIXEL_FMT && o->type != AV_OPT_TYPE_SAMPLE_FMT && o->type != AV_OPT_TYPE_IMAGE_SIZE && o->type != AV_OPT_TYPE_DURATION && o->type != AV_OPT_TYPE_COLOR && -#if FF_API_OLD_CHANNEL_LAYOUT - o->type != AV_OPT_TYPE_CHANNEL_LAYOUT && -#endif o->type != AV_OPT_TYPE_BOOL)) return AVERROR(EINVAL); FF_ENABLE_DEPRECATION_WARNINGS @@ -557,23 +544,6 @@ FF_ENABLE_DEPRECATION_WARNINGS } case AV_OPT_TYPE_COLOR: return set_string_color(obj, o, val, dst); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: - if (!val || !strcmp(val, "none")) { - *(int64_t *)dst = 0; - } else { - int64_t cl = av_get_channel_layout(val); - if (!cl) { - av_log(obj, AV_LOG_ERROR, "Unable to parse option value \"%s\" as channel layout\n", val); - ret = AVERROR(EINVAL); - } - *(int64_t *)dst = cl; - return ret; - } - break; -FF_ENABLE_DEPRECATION_WARNINGS -#endif case AV_OPT_TYPE_CHLAYOUT: ret = set_string_channel_layout(obj, o, val, dst); if (ret < 0) { @@ -744,26 +714,6 @@ int av_opt_set_sample_fmt(void *obj, const char *name, enum AVSampleFormat fmt, return set_format(obj, name, fmt, search_flags, AV_OPT_TYPE_SAMPLE_FMT, "sample", AV_SAMPLE_FMT_NB); } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS -int av_opt_set_channel_layout(void *obj, const char *name, int64_t cl, int search_flags) -{ - void *target_obj; - const AVOption *o = av_opt_find2(obj, name, NULL, 0, search_flags, &target_obj); - - if (!o || !target_obj) - return AVERROR_OPTION_NOT_FOUND; - if (o->type != AV_OPT_TYPE_CHANNEL_LAYOUT) { - av_log(obj, AV_LOG_ERROR, - "The value set by option '%s' is not a channel layout.\n", o->name); - return AVERROR(EINVAL); - } - *(int64_t *)(((uint8_t *)target_obj) + o->offset) = cl; - return 0; -} -FF_ENABLE_DEPRECATION_WARNINGS -#endif - int av_opt_set_dict_val(void *obj, const char *name, const AVDictionary *val, int search_flags) { @@ -927,15 +877,6 @@ int av_opt_get(void *obj, const char *name, int search_flags, uint8_t **out_val) (int)((uint8_t *)dst)[0], (int)((uint8_t *)dst)[1], (int)((uint8_t *)dst)[2], (int)((uint8_t *)dst)[3]); break; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: - - i64 = *(int64_t *)dst; - ret = snprintf(buf, sizeof(buf), "0x%"PRIx64, i64); - break; -FF_ENABLE_DEPRECATION_WARNINGS -#endif case AV_OPT_TYPE_CHLAYOUT: ret = av_channel_layout_describe(dst, buf, sizeof(buf)); break; @@ -1080,27 +1021,6 @@ int av_opt_get_sample_fmt(void *obj, const char *name, int search_flags, enum AV return get_format(obj, name, search_flags, out_fmt, AV_OPT_TYPE_SAMPLE_FMT, "sample"); } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS -int av_opt_get_channel_layout(void *obj, const char *name, int search_flags, int64_t *cl) -{ - void *dst, *target_obj; - const AVOption *o = av_opt_find2(obj, name, NULL, 0, search_flags, &target_obj); - if (!o || !target_obj) - return AVERROR_OPTION_NOT_FOUND; - if (o->type != AV_OPT_TYPE_CHANNEL_LAYOUT) { - av_log(obj, AV_LOG_ERROR, - "The value for option '%s' is not a channel layout.\n", name); - return AVERROR(EINVAL); - } - - dst = ((uint8_t*)target_obj) + o->offset; - *cl = *(int64_t *)dst; - return 0; -} -FF_ENABLE_DEPRECATION_WARNINGS -#endif - int av_opt_get_chlayout(void *obj, const char *name, int search_flags, AVChannelLayout *cl) { void *dst, *target_obj; @@ -1309,11 +1229,6 @@ static void opt_list(void *obj, void *av_log_obj, const char *unit, av_log(av_log_obj, AV_LOG_INFO, "%-12s ", ""); break; case AV_OPT_TYPE_CHLAYOUT: -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: -FF_ENABLE_DEPRECATION_WARNINGS -#endif av_log(av_log_obj, AV_LOG_INFO, "%-12s ", ""); break; case AV_OPT_TYPE_BOOL: @@ -1427,13 +1342,6 @@ FF_ENABLE_DEPRECATION_WARNINGS case AV_OPT_TYPE_CHLAYOUT: av_log(av_log_obj, AV_LOG_INFO, "\"%s\"", opt->default_val.str); break; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: - av_log(av_log_obj, AV_LOG_INFO, "0x%"PRIx64, opt->default_val.i64); - break; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } av_log(av_log_obj, AV_LOG_INFO, ")"); } @@ -1483,11 +1391,6 @@ void av_opt_set_defaults2(void *s, int mask, int flags) case AV_OPT_TYPE_INT64: case AV_OPT_TYPE_UINT64: case AV_OPT_TYPE_DURATION: -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: -FF_ENABLE_DEPRECATION_WARNINGS -#endif case AV_OPT_TYPE_PIXEL_FMT: case AV_OPT_TYPE_SAMPLE_FMT: write_number(s, opt, dst, 1, 1, opt->default_val.i64); @@ -1851,11 +1754,6 @@ static int opt_size(enum AVOptionType type) case AV_OPT_TYPE_FLAGS: return sizeof(int); case AV_OPT_TYPE_DURATION: -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: -FF_ENABLE_DEPRECATION_WARNINGS -#endif case AV_OPT_TYPE_INT64: case AV_OPT_TYPE_UINT64: return sizeof(int64_t); @@ -1995,11 +1893,6 @@ int av_opt_query_ranges_default(AVOptionRanges **ranges_arg, void *obj, const ch case AV_OPT_TYPE_DOUBLE: case AV_OPT_TYPE_DURATION: case AV_OPT_TYPE_COLOR: -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: -FF_ENABLE_DEPRECATION_WARNINGS -#endif break; case AV_OPT_TYPE_STRING: range->component_min = 0; @@ -2079,11 +1972,6 @@ int av_opt_is_set_to_default(void *obj, const AVOption *o) case AV_OPT_TYPE_PIXEL_FMT: case AV_OPT_TYPE_SAMPLE_FMT: case AV_OPT_TYPE_INT: -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - case AV_OPT_TYPE_CHANNEL_LAYOUT: -FF_ENABLE_DEPRECATION_WARNINGS -#endif case AV_OPT_TYPE_DURATION: case AV_OPT_TYPE_INT64: case AV_OPT_TYPE_UINT64: diff --git a/libavutil/opt.h b/libavutil/opt.h index 461b5d3b6b..3ceb4f86eb 100644 --- a/libavutil/opt.h +++ b/libavutil/opt.h @@ -238,9 +238,6 @@ enum AVOptionType{ AV_OPT_TYPE_VIDEO_RATE, ///< offset must point to AVRational AV_OPT_TYPE_DURATION, AV_OPT_TYPE_COLOR, -#if FF_API_OLD_CHANNEL_LAYOUT - AV_OPT_TYPE_CHANNEL_LAYOUT, -#endif AV_OPT_TYPE_BOOL, AV_OPT_TYPE_CHLAYOUT, }; @@ -697,10 +694,6 @@ int av_opt_set_image_size(void *obj, const char *name, int w, int h, int search_ int av_opt_set_pixel_fmt (void *obj, const char *name, enum AVPixelFormat fmt, int search_flags); int av_opt_set_sample_fmt(void *obj, const char *name, enum AVSampleFormat fmt, int search_flags); int av_opt_set_video_rate(void *obj, const char *name, AVRational val, int search_flags); -#if FF_API_OLD_CHANNEL_LAYOUT -attribute_deprecated -int av_opt_set_channel_layout(void *obj, const char *name, int64_t ch_layout, int search_flags); -#endif int av_opt_set_chlayout(void *obj, const char *name, const AVChannelLayout *layout, int search_flags); /** * @note Any old dictionary present is discarded and replaced with a copy of the new one. The @@ -756,10 +749,6 @@ int av_opt_get_image_size(void *obj, const char *name, int search_flags, int *w_ int av_opt_get_pixel_fmt (void *obj, const char *name, int search_flags, enum AVPixelFormat *out_fmt); int av_opt_get_sample_fmt(void *obj, const char *name, int search_flags, enum AVSampleFormat *out_fmt); int av_opt_get_video_rate(void *obj, const char *name, int search_flags, AVRational *out_val); -#if FF_API_OLD_CHANNEL_LAYOUT -attribute_deprecated -int av_opt_get_channel_layout(void *obj, const char *name, int search_flags, int64_t *ch_layout); -#endif int av_opt_get_chlayout(void *obj, const char *name, int search_flags, AVChannelLayout *layout); /** * @param[out] out_val The returned dictionary is a copy of the actual value and must diff --git a/libavutil/version.h b/libavutil/version.h index 0f14fc59bb..1936155e46 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_OLD_CHANNEL_LAYOUT (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_AV_FOPEN_UTF8 (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_PKT_DURATION (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_REORDERED_OPAQUE (LIBAVUTIL_VERSION_MAJOR < 59) diff --git a/libswresample/options.c b/libswresample/options.c index d8cf85c053..25c955da63 100644 --- a/libswresample/options.c +++ b/libswresample/options.c @@ -37,18 +37,6 @@ #define DEPREC AV_OPT_FLAG_DEPRECATED static const AVOption options[]={ -#if FF_API_OLD_CHANNEL_LAYOUT -{"ich" , "set input channel count (Deprecated, use ichl)", - OFFSET(user_in_ch_count ), AV_OPT_TYPE_INT, {.i64=0 }, 0 , SWR_CH_MAX, PARAM|DEPREC}, -{"in_channel_count" , "set input channel count (Deprecated, use in_chlayout)", - OFFSET(user_in_ch_count ), AV_OPT_TYPE_INT, {.i64=0 }, 0 , SWR_CH_MAX, PARAM|DEPREC}, -{"och" , "set output channel count (Deprecated, use ochl)", - OFFSET(user_out_ch_count ), AV_OPT_TYPE_INT, {.i64=0 }, 0 , SWR_CH_MAX, PARAM|DEPREC}, -{"out_channel_count" , "set output channel count (Deprecated, use out_chlayout)", - OFFSET(user_out_ch_count ), AV_OPT_TYPE_INT, {.i64=0 }, 0 , SWR_CH_MAX, PARAM|DEPREC}, -{"uch" , "set used channel count" , OFFSET(user_used_ch_count), AV_OPT_TYPE_INT, {.i64=0 }, 0 , SWR_CH_MAX, PARAM|DEPREC}, -{"used_channel_count" , "set used channel count" , OFFSET(user_used_ch_count), AV_OPT_TYPE_INT, {.i64=0 }, 0 , SWR_CH_MAX, PARAM|DEPREC}, -#endif {"isr" , "set input sample rate" , OFFSET( in_sample_rate), AV_OPT_TYPE_INT , {.i64=0 }, 0 , INT_MAX , PARAM}, {"in_sample_rate" , "set input sample rate" , OFFSET( in_sample_rate), AV_OPT_TYPE_INT , {.i64=0 }, 0 , INT_MAX , PARAM}, {"osr" , "set output sample rate" , OFFSET(out_sample_rate), AV_OPT_TYPE_INT , {.i64=0 }, 0 , INT_MAX , PARAM}, @@ -59,16 +47,6 @@ static const AVOption options[]={ {"out_sample_fmt" , "set output sample format" , OFFSET(out_sample_fmt ), AV_OPT_TYPE_SAMPLE_FMT , {.i64=AV_SAMPLE_FMT_NONE}, -1 , INT_MAX, PARAM}, {"tsf" , "set internal sample format" , OFFSET(user_int_sample_fmt), AV_OPT_TYPE_SAMPLE_FMT , {.i64=AV_SAMPLE_FMT_NONE}, -1 , INT_MAX, PARAM}, {"internal_sample_fmt" , "set internal sample format" , OFFSET(user_int_sample_fmt), AV_OPT_TYPE_SAMPLE_FMT , {.i64=AV_SAMPLE_FMT_NONE}, -1 , INT_MAX, PARAM}, -#if FF_API_OLD_CHANNEL_LAYOUT -{"icl" , "set input channel layout (Deprecated, use ichl)", - OFFSET(user_in_ch_layout), AV_OPT_TYPE_CHANNEL_LAYOUT, {.i64=0 }, INT64_MIN, INT64_MAX, PARAM|DEPREC, "channel_layout"}, -{"in_channel_layout" , "set input channel layout (Deprecated, use in_chlayout)", - OFFSET(user_in_ch_layout), AV_OPT_TYPE_CHANNEL_LAYOUT, {.i64=0 }, INT64_MIN, INT64_MAX, PARAM|DEPREC, "channel_layout"}, -{"ocl" , "set output channel layout (Deprecated, use ochl)", - OFFSET(user_out_ch_layout), AV_OPT_TYPE_CHANNEL_LAYOUT, {.i64=0 }, INT64_MIN, INT64_MAX, PARAM|DEPREC, "channel_layout"}, -{"out_channel_layout" , "set output channel layout (Deprecated, use out_chlayout)", - OFFSET(user_out_ch_layout), AV_OPT_TYPE_CHANNEL_LAYOUT, {.i64=0 }, INT64_MIN, INT64_MAX, PARAM|DEPREC, "channel_layout"}, -#endif {"ichl" , "set input channel layout" , OFFSET(user_in_chlayout ), AV_OPT_TYPE_CHLAYOUT, {.str=NULL }, 0, 0 , PARAM, "chlayout"}, {"in_chlayout" , "set input channel layout" , OFFSET(user_in_chlayout ), AV_OPT_TYPE_CHLAYOUT, {.str=NULL }, 0, 0 , PARAM, "chlayout"}, {"ochl" , "set output channel layout" , OFFSET(user_out_chlayout), AV_OPT_TYPE_CHLAYOUT, {.str=NULL }, 0, 0 , PARAM, "chlayout"}, diff --git a/libswresample/rematrix.c b/libswresample/rematrix.c index 79e8a43eac..fb4d9aecf0 100644 --- a/libswresample/rematrix.c +++ b/libswresample/rematrix.c @@ -64,37 +64,14 @@ int swr_set_matrix(struct SwrContext *s, const double *matrix, int stride) { int nb_in, nb_out, in, out; - int user_in_chlayout_nb_channels, user_out_chlayout_nb_channels; if (!s || s->in_convert) // s needs to be allocated but not initialized return AVERROR(EINVAL); memset(s->matrix, 0, sizeof(s->matrix)); memset(s->matrix_flt, 0, sizeof(s->matrix_flt)); -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - user_in_chlayout_nb_channels = av_get_channel_layout_nb_channels(s->user_in_ch_layout); -FF_ENABLE_DEPRECATION_WARNINGS - if (!user_in_chlayout_nb_channels) -#endif - user_in_chlayout_nb_channels = s->user_in_chlayout.nb_channels; - nb_in = -#if FF_API_OLD_CHANNEL_LAYOUT - (s->user_in_ch_count > 0) ? s->user_in_ch_count : -#endif - user_in_chlayout_nb_channels; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - user_out_chlayout_nb_channels = av_get_channel_layout_nb_channels(s->user_out_ch_layout); -FF_ENABLE_DEPRECATION_WARNINGS - if (!user_out_chlayout_nb_channels) -#endif - user_out_chlayout_nb_channels = s->user_out_chlayout.nb_channels; - nb_out = -#if FF_API_OLD_CHANNEL_LAYOUT - (s->user_out_ch_count > 0) ? s->user_out_ch_count : -#endif - user_out_chlayout_nb_channels; + nb_in = s->user_in_chlayout.nb_channels; + nb_out = s->user_out_chlayout.nb_channels; for (out = 0; out < nb_out; out++) { for (in = 0; in < nb_in; in++) s->matrix_flt[out][in] = s->matrix[out][in] = matrix[in]; @@ -146,27 +123,6 @@ static int sane_layout(AVChannelLayout *ch_layout) { return 1; } -#if FF_API_OLD_CHANNEL_LAYOUT -av_cold int swr_build_matrix(uint64_t in_ch_layout_param, uint64_t out_ch_layout_param, - double center_mix_level, double surround_mix_level, - double lfe_mix_level, double maxval, - double rematrix_volume, double *matrix_param, - int stride, enum AVMatrixEncoding matrix_encoding, void *log_context) -{ - AVChannelLayout in_ch_layout = { 0 }, out_ch_layout = { 0 }; - int ret; - - ret = av_channel_layout_from_mask(&in_ch_layout, in_ch_layout_param); - ret |= av_channel_layout_from_mask(&out_ch_layout, out_ch_layout_param); - if (ret < 0) - return ret; - - return swr_build_matrix2(&in_ch_layout, &out_ch_layout, center_mix_level, surround_mix_level, - lfe_mix_level, maxval, rematrix_volume, matrix_param, - stride, matrix_encoding, log_context); -} -#endif - av_cold int swr_build_matrix2(const AVChannelLayout *in_layout, const AVChannelLayout *out_layout, double center_mix_level, double surround_mix_level, double lfe_mix_level, double maxval, diff --git a/libswresample/swresample.c b/libswresample/swresample.c index 1cf83a803f..7e1a9997f1 100644 --- a/libswresample/swresample.c +++ b/libswresample/swresample.c @@ -36,52 +36,6 @@ int swr_set_channel_mapping(struct SwrContext *s, const int *channel_map){ return 0; } -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS -struct SwrContext *swr_alloc_set_opts(struct SwrContext *s, - int64_t out_ch_layout, enum AVSampleFormat out_sample_fmt, int out_sample_rate, - int64_t in_ch_layout, enum AVSampleFormat in_sample_fmt, int in_sample_rate, - int log_offset, void *log_ctx){ - if(!s) s= swr_alloc(); - if(!s) return NULL; - - s->log_level_offset= log_offset; - s->log_ctx= log_ctx; - - if (av_opt_set_int(s, "ocl", out_ch_layout, 0) < 0) - goto fail; - - if (av_opt_set_int(s, "osf", out_sample_fmt, 0) < 0) - goto fail; - - if (av_opt_set_int(s, "osr", out_sample_rate, 0) < 0) - goto fail; - - if (av_opt_set_int(s, "icl", in_ch_layout, 0) < 0) - goto fail; - - if (av_opt_set_int(s, "isf", in_sample_fmt, 0) < 0) - goto fail; - - if (av_opt_set_int(s, "isr", in_sample_rate, 0) < 0) - goto fail; - - if (av_opt_set_int(s, "ich", av_get_channel_layout_nb_channels(s-> user_in_ch_layout), 0) < 0) - goto fail; - - if (av_opt_set_int(s, "och", av_get_channel_layout_nb_channels(s->user_out_ch_layout), 0) < 0) - goto fail; - - av_opt_set_int(s, "uch", 0, 0); - return s; -fail: - av_log(s, AV_LOG_ERROR, "Failed to set option\n"); - swr_free(&s); - return NULL; -} -FF_ENABLE_DEPRECATION_WARNINGS -#endif - int swr_alloc_set_opts2(struct SwrContext **ps, const AVChannelLayout *out_ch_layout, enum AVSampleFormat out_sample_fmt, int out_sample_rate, const AVChannelLayout *in_ch_layout, enum AVSampleFormat in_sample_fmt, int in_sample_rate, @@ -117,14 +71,6 @@ int swr_alloc_set_opts2(struct SwrContext **ps, av_opt_set_int(s, "uch", 0, 0); -#if FF_API_OLD_CHANNEL_LAYOUT - // Clear old API values so they don't take precedence in swr_init() - av_opt_set_int(s, "icl", 0, 0); - av_opt_set_int(s, "ocl", 0, 0); - av_opt_set_int(s, "ich", 0, 0); - av_opt_set_int(s, "och", 0, 0); -#endif - return 0; fail: av_log(s, AV_LOG_ERROR, "Failed to set option\n"); @@ -213,65 +159,7 @@ av_cold int swr_init(struct SwrContext *s){ av_log(s, AV_LOG_ERROR, "Requested output sample rate %d is invalid\n", s->out_sample_rate); return AVERROR(EINVAL); } -#if FF_API_OLD_CHANNEL_LAYOUT - s->out.ch_count = s-> user_out_ch_count; - s-> in.ch_count = s-> user_in_ch_count; - - // if the old/new fields are set inconsistently, prefer the old ones - if (s->user_used_ch_count && s->user_used_ch_count != s->user_used_chlayout.nb_channels) { - av_channel_layout_uninit(&s->used_ch_layout); - s->used_ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - s->used_ch_layout.nb_channels = s->user_used_ch_count; - } else if (av_channel_layout_check(&s->user_used_chlayout)) { - ret = av_channel_layout_copy(&s->used_ch_layout, &s->user_used_chlayout); - if (ret < 0) - return ret; - } - if ((s->user_in_ch_count && s->user_in_ch_count != s->user_in_chlayout.nb_channels) || - (s->user_in_ch_layout && (s->user_in_chlayout.order != AV_CHANNEL_ORDER_NATIVE || - s->user_in_chlayout.u.mask != s->user_in_ch_layout))) { - av_channel_layout_uninit(&s->in_ch_layout); - if (s->user_in_ch_layout) - av_channel_layout_from_mask(&s->in_ch_layout, s->user_in_ch_layout); - else { - s->in_ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - s->in_ch_layout.nb_channels = s->user_in_ch_count; - } - } else if (av_channel_layout_check(&s->user_in_chlayout)) - av_channel_layout_copy(&s->in_ch_layout, &s->user_in_chlayout); - - if ((s->user_out_ch_count && s->user_out_ch_count != s->user_out_chlayout.nb_channels) || - (s->user_out_ch_layout && (s->user_out_chlayout.order != AV_CHANNEL_ORDER_NATIVE || - s->user_out_chlayout.u.mask != s->user_out_ch_layout))) { - av_channel_layout_uninit(&s->out_ch_layout); - if (s->user_out_ch_layout) - av_channel_layout_from_mask(&s->out_ch_layout, s->user_out_ch_layout); - else { - s->out_ch_layout.order = AV_CHANNEL_ORDER_UNSPEC; - s->out_ch_layout.nb_channels = s->user_out_ch_count; - } - } else if (av_channel_layout_check(&s->user_out_chlayout)) - av_channel_layout_copy(&s->out_ch_layout, &s->user_out_chlayout); - - if (!s->out.ch_count) - s->out.ch_count = s->out_ch_layout.nb_channels; - if (!s-> in.ch_count) - s-> in.ch_count = s->in_ch_layout.nb_channels; - - if (!(ret = av_channel_layout_check(&s->in_ch_layout)) || s->in_ch_layout.nb_channels > SWR_CH_MAX) { - if (ret) - av_channel_layout_describe(&s->in_ch_layout, l1, sizeof(l1)); - av_log(s, AV_LOG_WARNING, "Input channel layout \"%s\" is invalid or unsupported.\n", ret ? l1 : ""); - return AVERROR(EINVAL); - } - if (!(ret = av_channel_layout_check(&s->out_ch_layout)) || s->out_ch_layout.nb_channels > SWR_CH_MAX) { - if (ret) - av_channel_layout_describe(&s->out_ch_layout, l2, sizeof(l2)); - av_log(s, AV_LOG_WARNING, "Output channel layout \"%s\" is invalid or unsupported.\n", ret ? l2 : ""); - return AVERROR(EINVAL); - } -#else s->out.ch_count = s-> user_out_chlayout.nb_channels; s-> in.ch_count = s-> user_in_chlayout.nb_channels; @@ -294,7 +182,6 @@ av_cold int swr_init(struct SwrContext *s){ ret |= av_channel_layout_copy(&s->used_ch_layout, &s->user_used_chlayout); if (ret < 0) return ret; -#endif s->int_sample_fmt= s->user_int_sample_fmt; @@ -423,13 +310,6 @@ av_cold int swr_init(struct SwrContext *s){ } av_channel_layout_describe(&s->out_ch_layout, l2, sizeof(l2)); -#if FF_API_OLD_CHANNEL_LAYOUT - if (s->out_ch_layout.order != AV_CHANNEL_ORDER_UNSPEC && s->out.ch_count != s->out_ch_layout.nb_channels) { - av_log(s, AV_LOG_ERROR, "Output channel layout %s mismatches specified channel count %d\n", l2, s->out.ch_count); - ret = AVERROR(EINVAL); - goto fail; - } -#endif av_channel_layout_describe(&s->in_ch_layout, l1, sizeof(l1)); if (s->in_ch_layout.order != AV_CHANNEL_ORDER_UNSPEC && s->used_ch_layout.nb_channels != s->in_ch_layout.nb_channels) { av_log(s, AV_LOG_ERROR, "Input channel layout %s mismatches specified channel count %d\n", l1, s->used_ch_layout.nb_channels); diff --git a/libswresample/swresample.h b/libswresample/swresample.h index d4dcaebdcf..6c245845db 100644 --- a/libswresample/swresample.h +++ b/libswresample/swresample.h @@ -234,35 +234,6 @@ int swr_init(struct SwrContext *s); */ int swr_is_initialized(struct SwrContext *s); -#if FF_API_OLD_CHANNEL_LAYOUT -/** - * Allocate SwrContext if needed and set/reset common parameters. - * - * This function does not require s to be allocated with swr_alloc(). On the - * other hand, swr_alloc() can use swr_alloc_set_opts() to set the parameters - * on the allocated context. - * - * @param s existing Swr context if available, or NULL if not - * @param out_ch_layout output channel layout (AV_CH_LAYOUT_*) - * @param out_sample_fmt output sample format (AV_SAMPLE_FMT_*). - * @param out_sample_rate output sample rate (frequency in Hz) - * @param in_ch_layout input channel layout (AV_CH_LAYOUT_*) - * @param in_sample_fmt input sample format (AV_SAMPLE_FMT_*). - * @param in_sample_rate input sample rate (frequency in Hz) - * @param log_offset logging level offset - * @param log_ctx parent logging context, can be NULL - * - * @see swr_init(), swr_free() - * @return NULL on error, allocated context otherwise - * @deprecated use @ref swr_alloc_set_opts2() - */ -attribute_deprecated -struct SwrContext *swr_alloc_set_opts(struct SwrContext *s, - int64_t out_ch_layout, enum AVSampleFormat out_sample_fmt, int out_sample_rate, - int64_t in_ch_layout, enum AVSampleFormat in_sample_fmt, int in_sample_rate, - int log_offset, void *log_ctx); -#endif - /** * Allocate SwrContext if needed and set/reset common parameters. * @@ -399,40 +370,6 @@ int swr_set_compensation(struct SwrContext *s, int sample_delta, int compensatio */ int swr_set_channel_mapping(struct SwrContext *s, const int *channel_map); -#if FF_API_OLD_CHANNEL_LAYOUT -/** - * Generate a channel mixing matrix. - * - * This function is the one used internally by libswresample for building the - * default mixing matrix. It is made public just as a utility function for - * building custom matrices. - * - * @param in_layout input channel layout - * @param out_layout output channel layout - * @param center_mix_level mix level for the center channel - * @param surround_mix_level mix level for the surround channel(s) - * @param lfe_mix_level mix level for the low-frequency effects channel - * @param rematrix_maxval if 1.0, coefficients will be normalized to prevent - * overflow. if INT_MAX, coefficients will not be - * normalized. - * @param[out] matrix mixing coefficients; matrix[i + stride * o] is - * the weight of input channel i in output channel o. - * @param stride distance between adjacent input channels in the - * matrix array - * @param matrix_encoding matrixed stereo downmix mode (e.g. dplii) - * @param log_ctx parent logging context, can be NULL - * @return 0 on success, negative AVERROR code on failure - * @deprecated use @ref swr_build_matrix2() - */ -attribute_deprecated -int swr_build_matrix(uint64_t in_layout, uint64_t out_layout, - double center_mix_level, double surround_mix_level, - double lfe_mix_level, double rematrix_maxval, - double rematrix_volume, double *matrix, - int stride, enum AVMatrixEncoding matrix_encoding, - void *log_ctx); -#endif - /** * Generate a channel mixing matrix. * diff --git a/libswresample/swresample_frame.c b/libswresample/swresample_frame.c index 8726ee58e9..52e942f9c6 100644 --- a/libswresample/swresample_frame.c +++ b/libswresample/swresample_frame.c @@ -32,15 +32,6 @@ int swr_config_frame(SwrContext *s, const AVFrame *out, const AVFrame *in) swr_close(s); if (in) { -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - // if the old/new fields are set inconsistently, prefer the old ones - if ((in->channel_layout && (in->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - in->ch_layout.u.mask != in->channel_layout))) { - av_channel_layout_from_mask(&ch_layout, in->channel_layout); -FF_ENABLE_DEPRECATION_WARNINGS - } else -#endif if ((ret = av_channel_layout_copy(&ch_layout, &in->ch_layout)) < 0) goto fail; if ((ret = av_opt_set_chlayout(s, "ichl", &ch_layout, 0)) < 0) @@ -52,16 +43,6 @@ FF_ENABLE_DEPRECATION_WARNINGS } if (out) { -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - // if the old/new fields are set inconsistently, prefer the old ones - if ((out->channel_layout && (out->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - out->ch_layout.u.mask != out->channel_layout))) { - av_channel_layout_uninit(&ch_layout); - av_channel_layout_from_mask(&ch_layout, out->channel_layout); -FF_ENABLE_DEPRECATION_WARNINGS - } else -#endif if ((ret = av_channel_layout_copy(&ch_layout, &out->ch_layout)) < 0) goto fail; if ((ret = av_opt_set_chlayout(s, "ochl", &ch_layout, 0)) < 0) @@ -87,15 +68,6 @@ static int config_changed(SwrContext *s, int ret = 0, err; if (in) { -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - // if the old/new fields are set inconsistently, prefer the old ones - if ((in->channel_layout && (in->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - in->ch_layout.u.mask != in->channel_layout))) { - av_channel_layout_from_mask(&ch_layout, in->channel_layout); -FF_ENABLE_DEPRECATION_WARNINGS - } else -#endif if ((err = av_channel_layout_copy(&ch_layout, &in->ch_layout)) < 0) return err; if (av_channel_layout_compare(&s->in_ch_layout, &ch_layout) || @@ -106,16 +78,6 @@ FF_ENABLE_DEPRECATION_WARNINGS } if (out) { -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - // if the old/new fields are set inconsistently, prefer the old ones - if ((out->channel_layout && (out->ch_layout.order != AV_CHANNEL_ORDER_NATIVE || - out->ch_layout.u.mask != out->channel_layout))) { - av_channel_layout_uninit(&ch_layout); - av_channel_layout_from_mask(&ch_layout, out->channel_layout); -FF_ENABLE_DEPRECATION_WARNINGS - } else -#endif if ((err = av_channel_layout_copy(&ch_layout, &out->ch_layout)) < 0) return err; if (av_channel_layout_compare(&s->out_ch_layout, &ch_layout) || @@ -169,14 +131,7 @@ static inline int available_samples(AVFrame *out) if (av_sample_fmt_is_planar(out->format)) { return samples; } else { - int channels; -#if FF_API_OLD_CHANNEL_LAYOUT -FF_DISABLE_DEPRECATION_WARNINGS - channels = av_get_channel_layout_nb_channels(out->channel_layout); -FF_ENABLE_DEPRECATION_WARNINGS - if (!channels) -#endif - channels = out->ch_layout.nb_channels; + int channels = out->ch_layout.nb_channels; return samples / channels; } } diff --git a/libswresample/swresample_internal.h b/libswresample/swresample_internal.h index ad902d73fa..7e46b16fb2 100644 --- a/libswresample/swresample_internal.h +++ b/libswresample/swresample_internal.h @@ -114,13 +114,6 @@ struct SwrContext { const int *channel_map; ///< channel index (or -1 if muted channel) map int engine; -#if FF_API_OLD_CHANNEL_LAYOUT - int user_used_ch_count; ///< User set used channel count - int user_in_ch_count; ///< User set input channel count - int user_out_ch_count; ///< User set output channel count - int64_t user_in_ch_layout; ///< User set input channel layout - int64_t user_out_ch_layout; ///< User set output channel layout -#endif AVChannelLayout user_used_chlayout; ///< User set used channel layout AVChannelLayout user_in_chlayout; ///< User set input channel layout AVChannelLayout user_out_chlayout; ///< User set output channel layout diff --git a/tests/ref/fate/filter-formats b/tests/ref/fate/filter-formats index a4fc2f921f..75d7c1e21a 100644 --- a/tests/ref/fate/filter-formats +++ b/tests/ref/fate/filter-formats @@ -82,7 +82,4 @@ quad(side) 0 = ff_parse_channel_layout(0000000000000000, 65, 65C); 0 = ff_parse_channel_layout(000000000000003F, 6, 5.1); 0 = ff_parse_channel_layout(0000000000000003, 2, stereo); -0 = ff_parse_channel_layout(0000000000000001, 1, 1+1+1+1); -0 = ff_parse_channel_layout(0000000000000004, 1, 1c+1c+1c+1c); -0 = ff_parse_channel_layout(0000000000000007, 3, 2c+1c); 0 = ff_parse_channel_layout(0000000000000003, 2, 0x3); From patchwork Thu Jan 25 13:43:40 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45826 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp81909pzf; Thu, 25 Jan 2024 05:47:18 -0800 (PST) X-Google-Smtp-Source: AGHT+IGvvIgp72N2bQCmjzXuzWOIHaAsEyMmoxPt10TtrbkulEWh/FVl3CcXB4EpMoFeKMhGmyCM X-Received: by 2002:a2e:a4bc:0:b0:2cd:f047:7892 with SMTP id g28-20020a2ea4bc000000b002cdf0477892mr353941ljm.91.1706190438080; Thu, 25 Jan 2024 05:47:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190436; cv=none; d=google.com; s=arc-20160816; b=QotIycLHZK48MePCsabnrsXTGVmGIy1pqOkDIb6VjBSx7Ic42IWCoTPZAVXqyR+1pZ apim4WmWaZN84zOwwExACYRDy3yCg+rH+7+ZjUlpCosO9ZKbI5FSstRLZXrSb4sCOYak VCvzuw8sxy+W8IV51dkMXOyJs05eRCBPVqdgiHyaN8h8DmPmpcWF5GWmDClwOWdYY1+6 GOPd9uWQoJQfgfvtAYg8WFmeaPW3pY++s5v0AURmeLDOH4ZKq1kZuCMYMxlnvUAIxipN Ur7Ivkg9nldEzSgoj6Lr0DfNKLAswlfDvTaG26Qbpu5I/xiLx+u2jE8M4xF578LLYbua DLJQ== 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=1ZEnlLTFfrEzIvO0L8M/fcPmW1qAyXW84vALPAcCE/E=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=Vvsmi+WDOkKJt+xD/42qHHdVXYOvY/ErzMBFHhOKR0Ja+7qasmIJEaEDGzZXunfOgj nfyX3cLmI+EUxIdbHeU4mA8+bJjKhOZ4DazZaIAfdNkdsofXFZthjcnlyJx+shKAewne cl5OLUQppaMTt7V9+UmSGcT7hpauxlxxDXt+eum9m8qLtuR3msqz3PyiAgsCoyIrf42Z TxOTjcJnLb47bcQHMruCXcPMlTdsQQnuDS3KnXMR/dJcZ5iqR1bi0f3RR/iRTcYSJdN0 UAHIJr7pYzPi5gvkABkhVvTEebXWz4MjHA69hgpGTzSNl/q3n+KV30B1HJFj63PeU3Zm vorg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b="T5m5/+j9"; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id es18-20020a056402381200b0055a82fd812esi6335192edb.215.2024.01.25.05.47.16; Thu, 25 Jan 2024 05:47:16 -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=@gmail.com header.s=20230601 header.b="T5m5/+j9"; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CD9A268D163; Thu, 25 Jan 2024 15:45:02 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BD35E68D17A for ; Thu, 25 Jan 2024 15:44:56 +0200 (EET) Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-1d76943baafso28826945ad.2 for ; Thu, 25 Jan 2024 05:44:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190294; x=1706795094; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=2A1tznKlV5HQ9OxWIJ6t3nKRggzlc3qC0JApA1scDCM=; b=T5m5/+j9eKHiaZ4Srfcut/WI42qybooWlchMTLbQSd0xdcihgyRZBs2ytSht7XDnOy 4soIf8VS9SYxOjm5H9mFM58rnjRfeyXuE2wiCf05rpxTF7kqWHXmAugAcaKIqFvP84Wb hSB41HpbI2Dopw6w+J3O7V+mosJ9B/8WHq2zPfphb5xPBlqVgrrWCpRsBM4J4TFAY6Ou 16BaesYjGoSRATsrLN81fGVRQvjZMLVF81oDGbInJh5bnjCsppadQ+dbKOTfEDjEhdYb q2dLdQlDcwDZF8mB83yjGg3jmRBA1PkxWl8S3wf0vnZznRdAnh4Hudp6M63ExO1aJhFZ 978g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190294; x=1706795094; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2A1tznKlV5HQ9OxWIJ6t3nKRggzlc3qC0JApA1scDCM=; b=biXJLM9+PpWPRjjWGyojrmTr0G1tHwETYHMwXJelcCuETSz69STni8KVGnw96PkClk 1ZFF7rq/X24Enpl8HMxdozpoJGcKRQjEGEbCpemZEuzJqd0BkJVmOA8klSsTSVimdThG 2E9MBoeyemBKdTYoRKFDCX4jXphiJqRW0I+8uYOqCoKYY7TZe9E4US1XPWXDESxFKvWC RitMUdgwrf967md+cpGOVVMPzBnK7OAc1ZiAKQl0TTX3Ob5iD2p16PV8eFfIewCTM7KJ 52QLoFFV9ktqbG7z4ouvjbh+uGsMdD0N4Dlq7nDy0Fkxo/I9YBAYTV7/VxJYXbhk80T5 +8kA== X-Gm-Message-State: AOJu0YyzgAAgAty/xP+tTOnyifJSp5nR2OWfa0ULOofxkIWW7eeTLh2a IG1Dy/WbZoxWVEkWKXe0eJsD6xAe8nhWQyUSZM2AJag5/SCCmZ0NdOFm9FV5 X-Received: by 2002:a17:902:f7c3:b0:1d4:cb8c:fafe with SMTP id h3-20020a170902f7c300b001d4cb8cfafemr769810plw.74.1706190293973; Thu, 25 Jan 2024 05:44:53 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.52 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:53 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:40 -0300 Message-ID: <20240125134425.374-18-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 17/24] avutil: remove deprecated FF_API_AV_FOPEN_UTF8 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: HPfQYCwkKwt0 Signed-off-by: James Almer --- libavutil/avutil.h | 13 ------------- libavutil/file.c | 6 ------ libavutil/file.h | 17 ----------------- libavutil/file_open.c | 7 ------- libavutil/version.h | 1 - 5 files changed, 44 deletions(-) diff --git a/libavutil/avutil.h b/libavutil/avutil.h index a362c8baa8..d2900dcb48 100644 --- a/libavutil/avutil.h +++ b/libavutil/avutil.h @@ -335,19 +335,6 @@ unsigned av_int_list_length_for_size(unsigned elsize, #define av_int_list_length(list, term) \ av_int_list_length_for_size(sizeof(*(list)), list, term) -#if FF_API_AV_FOPEN_UTF8 -/** - * Open a file using a UTF-8 filename. - * The API of this function matches POSIX fopen(), errors are returned through - * errno. - * @deprecated Avoid using it, as on Windows, the FILE* allocated by this - * function may be allocated with a different CRT than the caller - * who uses the FILE*. No replacement provided in public API. - */ -attribute_deprecated -FILE *av_fopen_utf8(const char *path, const char *mode); -#endif - /** * Return the fractional representation of the internal time base. */ diff --git a/libavutil/file.c b/libavutil/file.c index cc17885bcc..2d1063b6a2 100644 --- a/libavutil/file.c +++ b/libavutil/file.c @@ -155,9 +155,3 @@ void av_file_unmap(uint8_t *bufptr, size_t size) av_free(bufptr); #endif } - -#if FF_API_AV_FOPEN_UTF8 -int av_tempfile(const char *prefix, char **filename, int log_offset, void *log_ctx) { - return avpriv_tempfile(prefix, filename, log_offset, log_ctx); -} -#endif diff --git a/libavutil/file.h b/libavutil/file.h index fc87a9cd6a..b5a762c28f 100644 --- a/libavutil/file.h +++ b/libavutil/file.h @@ -60,21 +60,4 @@ int av_file_map(const char *filename, uint8_t **bufptr, size_t *size, */ void av_file_unmap(uint8_t *bufptr, size_t size); -#if FF_API_AV_FOPEN_UTF8 -/** - * Wrapper to work around the lack of mkstemp() on mingw. - * Also, tries to create file in /tmp first, if possible. - * *prefix can be a character constant; *filename will be allocated internally. - * @return file descriptor of opened file (or negative value corresponding to an - * AVERROR code on error) - * and opened file name in **filename. - * @note On very old libcs it is necessary to set a secure umask before - * calling this, av_tempfile() can't call umask itself as it is used in - * libraries and could interfere with the calling application. - * @deprecated as fd numbers cannot be passed saftely between libs on some platforms - */ -attribute_deprecated -int av_tempfile(const char *prefix, char **filename, int log_offset, void *log_ctx); -#endif - #endif /* AVUTIL_FILE_H */ diff --git a/libavutil/file_open.c b/libavutil/file_open.c index 9aa4e4ac61..24ef33e3da 100644 --- a/libavutil/file_open.c +++ b/libavutil/file_open.c @@ -189,10 +189,3 @@ FILE *avpriv_fopen_utf8(const char *path, const char *mode) return NULL; return fdopen(fd, mode); } - -#if FF_API_AV_FOPEN_UTF8 -FILE *av_fopen_utf8(const char *path, const char *mode) -{ - return avpriv_fopen_utf8(path, mode); -} -#endif diff --git a/libavutil/version.h b/libavutil/version.h index 1936155e46..2dc913bbfd 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_AV_FOPEN_UTF8 (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_PKT_DURATION (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_REORDERED_OPAQUE (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_FRAME_PICTURE_NUMBER (LIBAVUTIL_VERSION_MAJOR < 59) From patchwork Thu Jan 25 13:43:41 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45810 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82227pzf; Thu, 25 Jan 2024 05:47:48 -0800 (PST) X-Google-Smtp-Source: AGHT+IH9WEO4H0KoaiSd3ZU6UawKDxPTTMg10zwSlbkoF6VvYyPmFP+Pi7LBZP7cqigWBnuLilZ2 X-Received: by 2002:a17:906:2787:b0:a27:e0e1:c11f with SMTP id j7-20020a170906278700b00a27e0e1c11fmr420066ejc.94.1706190468264; Thu, 25 Jan 2024 05:47:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190468; cv=none; d=google.com; s=arc-20160816; b=JEM2x5w2A4bf2hdaCnEI6SbwcbFfOrmvd6tGLJ/OjKlKd3e8gCJ1pxWnluJOdHrCGX 8WrWRpgiXdehKoxyPSvgI01cGfvrST19xUHxzQM50hKbOtWTm+/HMLGo85RaZAYZ0y38 L9UzUIYAE69n32RJWPmvlG2kzM665kg6riLsld06dCc91h+qewgCByHzwJQMl3YzhK6I NBTPBNRwMIMboww4ZXU743JDtTx4WrcSuPW+9I6pUo8McDCnER7dbG869dqJ9MVvMYpi OC+qLgC7Mm0a0rqX9wF98l3gPFu0kDTeuqWY7GvK9iBE+cy+jknM4tnIeiCHX/YBDKu5 XAsA== 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=ZPWk/wmuYVmSSDj2wNltHkpk/msbf5oT8zcXc8hBlNA=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=H98yW7H56IuTRbUjvytEN/g4VK7s7vcEECg4ConeYdkghE/dQwz1Kw50L05eytzvKZ oLf206tSShvWgBCVSiqt8ZaZ9iQOottT2csGwCrRs746vfZFOajZ366HuJwX19iNVgQ4 Eld62YcPmZpmm8aCqGOCVsgGAPLMzJsy6u1J3ZoklYrcuA6AB1ZNAnIMUtcioMzRHSHJ FwUl3ED0tkZnZtvX/KxoVVZ+t+z4SbcnD7XA6z2YTJtIcOkwPRqfTGKXMjoQ6/wgyW89 0/PRwoU7gBUnG8Cmqz1MlY15ASvXb+tbD4zM9hGyQo+8n0hiLHYUrhjpm5uDbvdY/y9T JpwA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=lpMJ8RWi; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id g19-20020a170906595300b00a31fff99d58si262488ejr.532.2024.01.25.05.47.47; Thu, 25 Jan 2024 05:47:48 -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=@gmail.com header.s=20230601 header.b=lpMJ8RWi; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2C78768D1AF; Thu, 25 Jan 2024 15:45:07 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id CC69468D060 for ; Thu, 25 Jan 2024 15:45:00 +0200 (EET) Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-1d71cb97937so43154705ad.3 for ; Thu, 25 Jan 2024 05:45:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190298; x=1706795098; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=j8gPO0ihLGtZ3/CCuugTOLpVGS/phtw0eGiNVQlu69k=; b=lpMJ8RWi+DyZqeflVZ11IVFu2jsGp2b8jwi3c337bUTrwwhBzVDoITWOvzfNaOW9n8 exQnAXC65WpQIhKorsn93ODD0O4nCJq/A5NkRDPwI6i6vmikQisjLsHJlzd/lenw0JhO ++U8kFUXMK5wHC+4ryfBkGTnvDrtpZEty0WBpSqyBDqjnyqnSGCW9E7Ye8c2Bb/KCNSv C7HLRqC8YgWzEnrxFuztgmZ3BxZ4dnTxQBu5ypJ2mCwX9zL9/REMeFznbHI1Dch9YOVg P2X5I+Hz9JLQJheSozjLOCLEH7gpX1tn7AmCt80aMSz+IFXbUS5DmaG7zAn+zg5W52dI C84A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190298; x=1706795098; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=j8gPO0ihLGtZ3/CCuugTOLpVGS/phtw0eGiNVQlu69k=; b=uoFEuzXcc4uBFZeQZ5OerWMTXEMLex2kJMKXBathJuGAlznJj/puSj5aQnPjnF5NNi 7Jc2q5PYriJsTmVsxhB1SXZJpIPKVUDSPd+IRHQNAbCSEMv0eUNpPwhj9SCuJ9EAZEAn vhaSPn/IcoNqm2ope0/zUU4R/Nt/sSLeSD6GjaWbfJVfsGqbXoB+LCxcMhber1rIUY5f oftq70/OV8QFLf1xWvkKPGqMlgqmYYzwY0JlwtLdLTRMViO1WonUQvrdAh8tHwNlFtBM +PLdN/SSyFp9WuqeAyao18VPhtKaHC4XWblHNlt5xdwNKqtyc/xVFkfo1oz8oAZ98pGI YZlQ== X-Gm-Message-State: AOJu0YyBhp2t8z5i1kC7A7pSD9hi99YpmR9FqE7c6Mih+b8mVn5AHTpR ko2di6br2muLgKjoafzQ7k0r3V9o/AZ2kz7CAle8XHzmOIUWSpNwnEhfj5DG X-Received: by 2002:a17:902:e844:b0:1d7:2f9a:9fcf with SMTP id t4-20020a170902e84400b001d72f9a9fcfmr1019921plg.2.1706190296578; Thu, 25 Jan 2024 05:44:56 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.54 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:56 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:41 -0300 Message-ID: <20240125134425.374-19-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 18/24] avutil: remove deprecated FF_API_PKT_DURATION 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: y4lojUNghrz+ Signed-off-by: James Almer --- doc/ffprobe.xsd | 2 - fftools/ffmpeg_filter.c | 5 - fftools/ffprobe.c | 6 - libavcodec/decode.c | 6 - libavdevice/alsa_enc.c | 7 - libavdevice/pulse_audio_enc.c | 7 - libavfilter/avfilter.c | 5 - libavfilter/buffersrc.c | 7 - libavfilter/vf_deshake_opencl.c | 7 - libavfilter/vf_drawtext.c | 15 - libavfilter/vsrc_testsrc.c | 5 - libavformat/mux.c | 7 - libavutil/frame.c | 10 - libavutil/frame.h | 13 - libavutil/version.h | 1 - tests/ref/fate/exif-image-embedded | 44 --- tests/ref/fate/exif-image-jpg | 2 - tests/ref/fate/exif-image-tiff | 2 - tests/ref/fate/exif-image-webp | 2 - tests/ref/fate/ffprobe_compact | 28 +- tests/ref/fate/ffprobe_csv | 28 +- tests/ref/fate/ffprobe_default | 28 -- tests/ref/fate/ffprobe_flat | 28 -- tests/ref/fate/ffprobe_ini | 28 -- tests/ref/fate/ffprobe_json | 28 -- tests/ref/fate/ffprobe_xml | 28 +- tests/ref/fate/ffprobe_xsd | 28 +- tests/ref/fate/flcl1905 | 350 +++++++++---------- tests/ref/fate/gaplessenc-itunes-to-ipod-aac | 32 +- tests/ref/fate/gaplessenc-pcm-to-mov-aac | 32 +- tests/ref/fate/gaplessinfo-itunes1 | 32 +- tests/ref/fate/gaplessinfo-itunes2 | 32 +- tests/ref/fate/h264-dts_5frames | 10 - tests/ref/fate/jpg-icc | 2 - tests/ref/fate/mov-zombie | 130 +++---- tests/ref/fate/png-icc | 2 - tests/ref/fate/png-side-data | 2 - 37 files changed, 360 insertions(+), 641 deletions(-) diff --git a/doc/ffprobe.xsd b/doc/ffprobe.xsd index 23d97ed11a..1131e2c940 100644 --- a/doc/ffprobe.xsd +++ b/doc/ffprobe.xsd @@ -105,8 +105,6 @@ - - diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 82ee4fae7d..b5c9db04f9 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -2714,11 +2714,6 @@ static int send_frame(FilterGraph *fg, FilterGraphThread *fgt, frame->pts = av_rescale_q(frame->pts, frame->time_base, ifp->time_base); frame->duration = av_rescale_q(frame->duration, frame->time_base, ifp->time_base); frame->time_base = ifp->time_base; -#if LIBAVUTIL_VERSION_MAJOR < 59 - AV_NOWARN_DEPRECATED( - frame->pkt_duration = frame->duration; - ) -#endif fd = frame_data(frame); if (!fd) diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index f33e2471cb..122e37075e 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -2726,12 +2726,6 @@ static void show_frame(WriterContext *w, AVFrame *frame, AVStream *stream, print_time("pkt_dts_time", frame->pkt_dts, &stream->time_base); print_ts ("best_effort_timestamp", frame->best_effort_timestamp); print_time("best_effort_timestamp_time", frame->best_effort_timestamp, &stream->time_base); -#if LIBAVUTIL_VERSION_MAJOR < 59 - AV_NOWARN_DEPRECATED( - print_duration_ts ("pkt_duration", frame->pkt_duration); - print_duration_time("pkt_duration_time", frame->pkt_duration, &stream->time_base); - ) -#endif print_duration_ts ("duration", frame->duration); print_duration_time("duration_time", frame->duration, &stream->time_base); if (fd && fd->pkt_pos != -1) print_fmt ("pkt_pos", "%"PRId64, fd->pkt_pos); diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 145138d657..4dc308ef64 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -634,12 +634,6 @@ FF_ENABLE_DEPRECATION_WARNINGS frame->pts, frame->pkt_dts); -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - frame->pkt_duration = frame->duration; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - /* the only case where decode data is not set should be decoders * that do not call ff_get_buffer() */ av_assert0((frame->private_ref && frame->private_ref->size == sizeof(FrameDecodeData)) || diff --git a/libavdevice/alsa_enc.c b/libavdevice/alsa_enc.c index 4c7805065e..0b4c7834f7 100644 --- a/libavdevice/alsa_enc.c +++ b/libavdevice/alsa_enc.c @@ -132,13 +132,6 @@ static int audio_write_frame(AVFormatContext *s1, int stream_index, pkt.data = (*frame)->data[0]; pkt.size = (*frame)->nb_samples * s->frame_size; pkt.dts = (*frame)->pkt_dts; -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - if ((*frame)->pkt_duration) - pkt.duration = (*frame)->pkt_duration; - else -FF_ENABLE_DEPRECATION_WARNINGS -#endif pkt.duration = (*frame)->duration; return audio_write_packet(s1, &pkt); } diff --git a/libavdevice/pulse_audio_enc.c b/libavdevice/pulse_audio_enc.c index f051df3e72..4955b3b884 100644 --- a/libavdevice/pulse_audio_enc.c +++ b/libavdevice/pulse_audio_enc.c @@ -687,13 +687,6 @@ static int pulse_write_frame(AVFormatContext *h, int stream_index, pkt.data = (*frame)->data[0]; pkt.size = (*frame)->nb_samples * av_get_bytes_per_sample((*frame)->format) * (*frame)->ch_layout.nb_channels; pkt.dts = (*frame)->pkt_dts; -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - if ((*frame)->pkt_duration) - pkt.duration = (*frame)->pkt_duration; - else -FF_ENABLE_DEPRECATION_WARNINGS -#endif pkt.duration = (*frame)->duration; return pulse_write_packet(h, &pkt); } diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index 31300bb515..befcda48cb 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -1020,11 +1020,6 @@ int ff_filter_frame(AVFilterLink *link, AVFrame *frame) frame->duration = av_rescale_q(frame->nb_samples, (AVRational){ 1, frame->sample_rate }, link->time_base); -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - frame->pkt_duration = frame->duration; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } link->frame_blocked_in = link->frame_wanted_out = 0; diff --git a/libavfilter/buffersrc.c b/libavfilter/buffersrc.c index e98e31185b..bcb1b0cece 100644 --- a/libavfilter/buffersrc.c +++ b/libavfilter/buffersrc.c @@ -227,13 +227,6 @@ int attribute_align_arg av_buffersrc_add_frame_flags(AVFilterContext *ctx, AVFra return AVERROR(ENOMEM); } -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - if (copy->pkt_duration && copy->pkt_duration != copy->duration) - copy->duration = copy->pkt_duration; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - #if FF_API_INTERLACED_FRAME FF_DISABLE_DEPRECATION_WARNINGS if (copy->interlaced_frame) diff --git a/libavfilter/vf_deshake_opencl.c b/libavfilter/vf_deshake_opencl.c index cddd5558e2..e49c808a8e 100644 --- a/libavfilter/vf_deshake_opencl.c +++ b/libavfilter/vf_deshake_opencl.c @@ -1412,13 +1412,6 @@ static int filter_frame(AVFilterLink *link, AVFrame *input_frame) &debug_matches, 1); } -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - if (input_frame->pkt_duration) { - duration = input_frame->pkt_duration; - } else -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (input_frame->duration) { duration = input_frame->duration; } else { diff --git a/libavfilter/vf_drawtext.c b/libavfilter/vf_drawtext.c index fe7e6ace27..4c516f3b57 100644 --- a/libavfilter/vf_drawtext.c +++ b/libavfilter/vf_drawtext.c @@ -104,9 +104,6 @@ static const char *const var_names[] = { #if FF_API_FRAME_PKT "pkt_pos", #endif -#if FF_API_PKT_DURATION - "pkt_duration", -#endif #if FF_API_FRAME_PKT "pkt_size", #endif @@ -155,9 +152,6 @@ enum var_name { #if FF_API_FRAME_PKT VAR_PKT_POS, #endif -#if FF_API_PKT_DURATION - VAR_PKT_DURATION, -#endif #if FF_API_FRAME_PKT VAR_PKT_SIZE, #endif @@ -1877,15 +1871,6 @@ FF_DISABLE_DEPRECATION_WARNINGS s->var_values[VAR_PKT_POS] = frame->pkt_pos; s->var_values[VAR_PKT_SIZE] = frame->pkt_size; FF_ENABLE_DEPRECATION_WARNINGS -#endif -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - s->var_values[VAR_PKT_DURATION] = frame->pkt_duration * av_q2d(inlink->time_base); - - if (frame->pkt_duration) - s->var_values[VAR_DURATION] = frame->pkt_duration * av_q2d(inlink->time_base); - else -FF_ENABLE_DEPRECATION_WARNINGS #endif s->var_values[VAR_DURATION] = frame->duration * av_q2d(inlink->time_base); diff --git a/libavfilter/vsrc_testsrc.c b/libavfilter/vsrc_testsrc.c index 3b5536badc..2a92b638b6 100644 --- a/libavfilter/vsrc_testsrc.c +++ b/libavfilter/vsrc_testsrc.c @@ -202,11 +202,6 @@ static int activate(AVFilterContext *ctx) return AVERROR(ENOMEM); frame->pts = test->pts; frame->duration = 1; -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - frame->key_frame = 1; -FF_ENABLE_DEPRECATION_WARNINGS -#endif frame->flags |= AV_FRAME_FLAG_KEY; #if FF_API_INTERLACED_FRAME FF_DISABLE_DEPRECATION_WARNINGS diff --git a/libavformat/mux.c b/libavformat/mux.c index 659fbbad10..7a27e28503 100644 --- a/libavformat/mux.c +++ b/libavformat/mux.c @@ -1441,13 +1441,6 @@ static int write_uncoded_frame_internal(AVFormatContext *s, int stream_index, pkt->size = sizeof(frame); pkt->pts = pkt->dts = frame->pts; -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - if (frame->pkt_duration) - pkt->duration = frame->pkt_duration; - else -FF_ENABLE_DEPRECATION_WARNINGS -#endif pkt->duration = frame->duration; pkt->stream_index = stream_index; pkt->flags |= AV_PKT_FLAG_UNCODED_FRAME; diff --git a/libavutil/frame.c b/libavutil/frame.c index af887b1c76..dc80d71adf 100644 --- a/libavutil/frame.c +++ b/libavutil/frame.c @@ -36,11 +36,6 @@ static void get_frame_defaults(AVFrame *frame) frame->pkt_dts = AV_NOPTS_VALUE; frame->best_effort_timestamp = AV_NOPTS_VALUE; frame->duration = 0; -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - frame->pkt_duration = 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif #if FF_API_FRAME_PKT FF_DISABLE_DEPRECATION_WARNINGS frame->pkt_pos = -1; @@ -269,11 +264,6 @@ FF_DISABLE_DEPRECATION_WARNINGS dst->pkt_pos = src->pkt_pos; dst->pkt_size = src->pkt_size; FF_ENABLE_DEPRECATION_WARNINGS -#endif -#if FF_API_PKT_DURATION -FF_DISABLE_DEPRECATION_WARNINGS - dst->pkt_duration = src->pkt_duration; -FF_ENABLE_DEPRECATION_WARNINGS #endif dst->time_base = src->time_base; #if FF_API_REORDERED_OPAQUE diff --git a/libavutil/frame.h b/libavutil/frame.h index 96463def3b..84a431f14c 100644 --- a/libavutil/frame.h +++ b/libavutil/frame.h @@ -678,19 +678,6 @@ typedef struct AVFrame { int64_t pkt_pos; #endif -#if FF_API_PKT_DURATION - /** - * duration of the corresponding packet, expressed in - * AVStream->time_base units, 0 if unknown. - * - encoding: unused - * - decoding: Read by user. - * - * @deprecated use duration instead - */ - attribute_deprecated - int64_t pkt_duration; -#endif - /** * metadata. * - encoding: Set by user. diff --git a/libavutil/version.h b/libavutil/version.h index 2dc913bbfd..8a20312016 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_PKT_DURATION (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_REORDERED_OPAQUE (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_FRAME_PICTURE_NUMBER (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_HDR_VIVID_THREE_SPLINE (LIBAVUTIL_VERSION_MAJOR < 59) diff --git a/tests/ref/fate/exif-image-embedded b/tests/ref/fate/exif-image-embedded index d5937e9f86..3e0cc69490 100644 --- a/tests/ref/fate/exif-image-embedded +++ b/tests/ref/fate/exif-image-embedded @@ -8,8 +8,6 @@ pkt_dts=N/A pkt_dts_time=N/A best_effort_timestamp=N/A best_effort_timestamp_time=N/A -pkt_duration=N/A -pkt_duration_time=N/A duration=N/A duration_time=N/A pkt_pos=N/A @@ -46,8 +44,6 @@ pkt_dts=353600 pkt_dts_time=0.025057 best_effort_timestamp=353600 best_effort_timestamp_time=0.025057 -pkt_duration=15040 -pkt_duration_time=0.001066 duration=15040 duration_time=0.001066 pkt_pos=16292 @@ -67,8 +63,6 @@ pkt_dts=368640 pkt_dts_time=0.026122 best_effort_timestamp=368640 best_effort_timestamp_time=0.026122 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=16709 @@ -88,8 +82,6 @@ pkt_dts=737280 pkt_dts_time=0.052245 best_effort_timestamp=737280 best_effort_timestamp_time=0.052245 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=17127 @@ -109,8 +101,6 @@ pkt_dts=1105920 pkt_dts_time=0.078367 best_effort_timestamp=1105920 best_effort_timestamp_time=0.078367 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=17545 @@ -130,8 +120,6 @@ pkt_dts=1474560 pkt_dts_time=0.104490 best_effort_timestamp=1474560 best_effort_timestamp_time=0.104490 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=17963 @@ -151,8 +139,6 @@ pkt_dts=1843200 pkt_dts_time=0.130612 best_effort_timestamp=1843200 best_effort_timestamp_time=0.130612 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=18381 @@ -172,8 +158,6 @@ pkt_dts=2211840 pkt_dts_time=0.156735 best_effort_timestamp=2211840 best_effort_timestamp_time=0.156735 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=18799 @@ -193,8 +177,6 @@ pkt_dts=2580480 pkt_dts_time=0.182857 best_effort_timestamp=2580480 best_effort_timestamp_time=0.182857 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=19217 @@ -214,8 +196,6 @@ pkt_dts=2949120 pkt_dts_time=0.208980 best_effort_timestamp=2949120 best_effort_timestamp_time=0.208980 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=19635 @@ -235,8 +215,6 @@ pkt_dts=3317760 pkt_dts_time=0.235102 best_effort_timestamp=3317760 best_effort_timestamp_time=0.235102 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=20053 @@ -256,8 +234,6 @@ pkt_dts=3686400 pkt_dts_time=0.261224 best_effort_timestamp=3686400 best_effort_timestamp_time=0.261224 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=20471 @@ -277,8 +253,6 @@ pkt_dts=4055040 pkt_dts_time=0.287347 best_effort_timestamp=4055040 best_effort_timestamp_time=0.287347 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=20889 @@ -298,8 +272,6 @@ pkt_dts=4423680 pkt_dts_time=0.313469 best_effort_timestamp=4423680 best_effort_timestamp_time=0.313469 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=21307 @@ -319,8 +291,6 @@ pkt_dts=4792320 pkt_dts_time=0.339592 best_effort_timestamp=4792320 best_effort_timestamp_time=0.339592 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=21725 @@ -340,8 +310,6 @@ pkt_dts=5160960 pkt_dts_time=0.365714 best_effort_timestamp=5160960 best_effort_timestamp_time=0.365714 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=22143 @@ -361,8 +329,6 @@ pkt_dts=5529600 pkt_dts_time=0.391837 best_effort_timestamp=5529600 best_effort_timestamp_time=0.391837 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=22561 @@ -382,8 +348,6 @@ pkt_dts=5898240 pkt_dts_time=0.417959 best_effort_timestamp=5898240 best_effort_timestamp_time=0.417959 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=22979 @@ -403,8 +367,6 @@ pkt_dts=6266880 pkt_dts_time=0.444082 best_effort_timestamp=6266880 best_effort_timestamp_time=0.444082 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=23397 @@ -424,8 +386,6 @@ pkt_dts=6635520 pkt_dts_time=0.470204 best_effort_timestamp=6635520 best_effort_timestamp_time=0.470204 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=23815 @@ -445,8 +405,6 @@ pkt_dts=7004160 pkt_dts_time=0.496327 best_effort_timestamp=7004160 best_effort_timestamp_time=0.496327 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=24233 @@ -466,8 +424,6 @@ pkt_dts=7372800 pkt_dts_time=0.522449 best_effort_timestamp=7372800 best_effort_timestamp_time=0.522449 -pkt_duration=368640 -pkt_duration_time=0.026122 duration=368640 duration_time=0.026122 pkt_pos=24651 diff --git a/tests/ref/fate/exif-image-jpg b/tests/ref/fate/exif-image-jpg index bed265b717..239f4c3366 100644 --- a/tests/ref/fate/exif-image-jpg +++ b/tests/ref/fate/exif-image-jpg @@ -8,8 +8,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1 -pkt_duration_time=0.040000 duration=1 duration_time=0.040000 pkt_pos=N/A diff --git a/tests/ref/fate/exif-image-tiff b/tests/ref/fate/exif-image-tiff index 6b1c4dca66..7741edb0f4 100644 --- a/tests/ref/fate/exif-image-tiff +++ b/tests/ref/fate/exif-image-tiff @@ -8,8 +8,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1 -pkt_duration_time=0.040000 duration=1 duration_time=0.040000 pkt_pos=0 diff --git a/tests/ref/fate/exif-image-webp b/tests/ref/fate/exif-image-webp index 783abefc60..e51e36c788 100644 --- a/tests/ref/fate/exif-image-webp +++ b/tests/ref/fate/exif-image-webp @@ -8,8 +8,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1 -pkt_duration_time=0.040000 duration=1 duration_time=0.040000 pkt_pos=0 diff --git a/tests/ref/fate/ffprobe_compact b/tests/ref/fate/ffprobe_compact index dfcd7d3f3c..2b751b214d 100644 --- a/tests/ref/fate/ffprobe_compact +++ b/tests/ref/fate/ffprobe_compact @@ -1,31 +1,31 @@ packet|codec_type=audio|stream_index=0|pts=0|pts_time=0.000000|dts=0|dts_time=0.000000|duration=1024|duration_time=0.023220|size=2048|pos=669|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|pkt_duration=1024|pkt_duration_time=0.023220|duration=1024|duration_time=0.023220|pkt_pos=669|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=1024|duration_time=0.023220|pkt_pos=669|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=0|pts_time=0.000000|dts=0|dts_time=0.000000|duration=2048|duration_time=0.040000|size=230400|pos=2744|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=2744|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=2048|duration_time=0.040000|pkt_pos=2744|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=0|pts_time=0.000000|dts=0|dts_time=0.000000|duration=2048|duration_time=0.040000|size=30000|pos=233165|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=233165|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=2048|duration_time=0.040000|pkt_pos=233165|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=audio|stream_index=0|pts=1024|pts_time=0.023220|dts=1024|dts_time=0.023220|duration=1024|duration_time=0.023220|size=2048|pos=263170|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=1024|pts_time=0.023220|pkt_dts=1024|pkt_dts_time=0.023220|best_effort_timestamp=1024|best_effort_timestamp_time=0.023220|pkt_duration=1024|pkt_duration_time=0.023220|duration=1024|duration_time=0.023220|pkt_pos=263170|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=1024|pts_time=0.023220|pkt_dts=1024|pkt_dts_time=0.023220|best_effort_timestamp=1024|best_effort_timestamp_time=0.023220|duration=1024|duration_time=0.023220|pkt_pos=263170|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=2048|pts_time=0.040000|dts=2048|dts_time=0.040000|duration=2048|duration_time=0.040000|size=230400|pos=265248|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=265248|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=265248|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=2048|pts_time=0.040000|dts=2048|dts_time=0.040000|duration=2048|duration_time=0.040000|size=30000|pos=495672|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=495672|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=495672|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=audio|stream_index=0|pts=2048|pts_time=0.046440|dts=2048|dts_time=0.046440|duration=1024|duration_time=0.023220|size=2048|pos=525677|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=2048|pts_time=0.046440|pkt_dts=2048|pkt_dts_time=0.046440|best_effort_timestamp=2048|best_effort_timestamp_time=0.046440|pkt_duration=1024|pkt_duration_time=0.023220|duration=1024|duration_time=0.023220|pkt_pos=525677|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=2048|pts_time=0.046440|pkt_dts=2048|pkt_dts_time=0.046440|best_effort_timestamp=2048|best_effort_timestamp_time=0.046440|duration=1024|duration_time=0.023220|pkt_pos=525677|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=3072|pts_time=0.069660|dts=3072|dts_time=0.069660|duration=1024|duration_time=0.023220|size=2048|pos=527748|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=3072|pts_time=0.069660|pkt_dts=3072|pkt_dts_time=0.069660|best_effort_timestamp=3072|best_effort_timestamp_time=0.069660|pkt_duration=1024|pkt_duration_time=0.023220|duration=1024|duration_time=0.023220|pkt_pos=527748|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=3072|pts_time=0.069660|pkt_dts=3072|pkt_dts_time=0.069660|best_effort_timestamp=3072|best_effort_timestamp_time=0.069660|duration=1024|duration_time=0.023220|pkt_pos=527748|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=4096|pts_time=0.080000|dts=4096|dts_time=0.080000|duration=2048|duration_time=0.040000|size=230400|pos=529826|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=529826|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|duration=2048|duration_time=0.040000|pkt_pos=529826|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=4096|pts_time=0.080000|dts=4096|dts_time=0.080000|duration=2048|duration_time=0.040000|size=30000|pos=760250|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=760250|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|duration=2048|duration_time=0.040000|pkt_pos=760250|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=audio|stream_index=0|pts=4096|pts_time=0.092880|dts=4096|dts_time=0.092880|duration=1024|duration_time=0.023220|size=2048|pos=790255|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=4096|pts_time=0.092880|pkt_dts=4096|pkt_dts_time=0.092880|best_effort_timestamp=4096|best_effort_timestamp_time=0.092880|pkt_duration=1024|pkt_duration_time=0.023220|duration=1024|duration_time=0.023220|pkt_pos=790255|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=4096|pts_time=0.092880|pkt_dts=4096|pkt_dts_time=0.092880|best_effort_timestamp=4096|best_effort_timestamp_time=0.092880|duration=1024|duration_time=0.023220|pkt_pos=790255|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=5120|pts_time=0.116100|dts=5120|dts_time=0.116100|duration=393|duration_time=0.008912|size=786|pos=792326|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=5120|pts_time=0.116100|pkt_dts=5120|pkt_dts_time=0.116100|best_effort_timestamp=5120|best_effort_timestamp_time=0.116100|pkt_duration=393|pkt_duration_time=0.008912|duration=393|duration_time=0.008912|pkt_pos=792326|pkt_size=786|sample_fmt=s16|nb_samples=393|channels=1|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=5120|pts_time=0.116100|pkt_dts=5120|pkt_dts_time=0.116100|best_effort_timestamp=5120|best_effort_timestamp_time=0.116100|duration=393|duration_time=0.008912|pkt_pos=792326|pkt_size=786|sample_fmt=s16|nb_samples=393|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=6144|pts_time=0.120000|dts=6144|dts_time=0.120000|duration=2048|duration_time=0.040000|size=230400|pos=793142|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=793142|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|duration=2048|duration_time=0.040000|pkt_pos=793142|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=6144|pts_time=0.120000|dts=6144|dts_time=0.120000|duration=2048|duration_time=0.040000|size=30000|pos=1023566|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|pkt_duration=2048|pkt_duration_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=1023566|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|duration=2048|duration_time=0.040000|pkt_pos=1023566|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified stream|index=0|codec_name=pcm_s16le|profile=unknown|codec_type=audio|codec_tag_string=PSD[16]|codec_tag=0x10445350|sample_fmt=s16|sample_rate=44100|channels=1|channel_layout=unknown|bits_per_sample=16|initial_padding=0|id=N/A|r_frame_rate=0/0|avg_frame_rate=0/0|time_base=1/44100|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=705600|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=6|nb_read_packets=6|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:E=mc²|tag:encoder=Lavc pcm_s16le stream|index=1|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=320|height=240|coded_width=320|coded_height=240|closed_captions=0|film_grain=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=4:3|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=1|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:title=foobar|tag:duration_ts=field-and-tags-conflict-attempt|tag:encoder=Lavc rawvideo stream|index=2|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=100|height=100|coded_width=100|coded_height=100|closed_captions=0|film_grain=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=1:1|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:encoder=Lavc rawvideo diff --git a/tests/ref/fate/ffprobe_csv b/tests/ref/fate/ffprobe_csv index 677b352dfd..1bbb996a48 100644 --- a/tests/ref/fate/ffprobe_csv +++ b/tests/ref/fate/ffprobe_csv @@ -1,31 +1,31 @@ packet,audio,0,0,0.000000,0,0.000000,1024,0.023220,2048,669,K__ -frame,audio,0,1,0,0.000000,0,0.000000,0,0.000000,1024,0.023220,1024,0.023220,669,2048,s16,1024,1,unknown +frame,audio,0,1,0,0.000000,0,0.000000,0,0.000000,1024,0.023220,669,2048,s16,1024,1,unknown packet,video,1,0,0.000000,0,0.000000,2048,0.040000,230400,2744,K__ -frame,video,1,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,2048,0.040000,2744,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,2744,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,0,0.000000,0,0.000000,2048,0.040000,30000,233165,K__ -frame,video,2,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,2048,0.040000,233165,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,233165,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,audio,0,1024,0.023220,1024,0.023220,1024,0.023220,2048,263170,K__ -frame,audio,0,1,1024,0.023220,1024,0.023220,1024,0.023220,1024,0.023220,1024,0.023220,263170,2048,s16,1024,1,unknown +frame,audio,0,1,1024,0.023220,1024,0.023220,1024,0.023220,1024,0.023220,263170,2048,s16,1024,1,unknown packet,video,1,2048,0.040000,2048,0.040000,2048,0.040000,230400,265248,K__ -frame,video,1,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,265248,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,265248,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,2048,0.040000,2048,0.040000,2048,0.040000,30000,495672,K__ -frame,video,2,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,495672,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,495672,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,audio,0,2048,0.046440,2048,0.046440,1024,0.023220,2048,525677,K__ -frame,audio,0,1,2048,0.046440,2048,0.046440,2048,0.046440,1024,0.023220,1024,0.023220,525677,2048,s16,1024,1,unknown +frame,audio,0,1,2048,0.046440,2048,0.046440,2048,0.046440,1024,0.023220,525677,2048,s16,1024,1,unknown packet,audio,0,3072,0.069660,3072,0.069660,1024,0.023220,2048,527748,K__ -frame,audio,0,1,3072,0.069660,3072,0.069660,3072,0.069660,1024,0.023220,1024,0.023220,527748,2048,s16,1024,1,unknown +frame,audio,0,1,3072,0.069660,3072,0.069660,3072,0.069660,1024,0.023220,527748,2048,s16,1024,1,unknown packet,video,1,4096,0.080000,4096,0.080000,2048,0.040000,230400,529826,K__ -frame,video,1,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,2048,0.040000,529826,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,529826,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,4096,0.080000,4096,0.080000,2048,0.040000,30000,760250,K__ -frame,video,2,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,2048,0.040000,760250,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,760250,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,audio,0,4096,0.092880,4096,0.092880,1024,0.023220,2048,790255,K__ -frame,audio,0,1,4096,0.092880,4096,0.092880,4096,0.092880,1024,0.023220,1024,0.023220,790255,2048,s16,1024,1,unknown +frame,audio,0,1,4096,0.092880,4096,0.092880,4096,0.092880,1024,0.023220,790255,2048,s16,1024,1,unknown packet,audio,0,5120,0.116100,5120,0.116100,393,0.008912,786,792326,K__ -frame,audio,0,1,5120,0.116100,5120,0.116100,5120,0.116100,393,0.008912,393,0.008912,792326,786,s16,393,1,unknown +frame,audio,0,1,5120,0.116100,5120,0.116100,5120,0.116100,393,0.008912,792326,786,s16,393,1,unknown packet,video,1,6144,0.120000,6144,0.120000,2048,0.040000,230400,793142,K__ -frame,video,1,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,2048,0.040000,793142,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,793142,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,6144,0.120000,6144,0.120000,2048,0.040000,30000,1023566,K__ -frame,video,2,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,2048,0.040000,1023566,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,1023566,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified stream,0,pcm_s16le,unknown,audio,PSD[16],0x10445350,s16,44100,1,unknown,16,0,N/A,0/0,0/0,1/44100,0,0.000000,N/A,N/A,705600,N/A,N/A,N/A,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,mc²,Lavc pcm_s16le stream,1,rawvideo,unknown,video,RGB[24],0x18424752,320,240,320,240,0,0,0,1:1,4:3,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,foobar,field-and-tags-conflict-attempt,Lavc rawvideo stream,2,rawvideo,unknown,video,RGB[24],0x18424752,100,100,100,100,0,0,0,1:1,1:1,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Lavc rawvideo diff --git a/tests/ref/fate/ffprobe_default b/tests/ref/fate/ffprobe_default index 954725b91b..229c004042 100644 --- a/tests/ref/fate/ffprobe_default +++ b/tests/ref/fate/ffprobe_default @@ -21,8 +21,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=669 @@ -55,8 +53,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=2744 @@ -104,8 +100,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=233165 @@ -153,8 +147,6 @@ pkt_dts=1024 pkt_dts_time=0.023220 best_effort_timestamp=1024 best_effort_timestamp_time=0.023220 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=263170 @@ -187,8 +179,6 @@ pkt_dts=2048 pkt_dts_time=0.040000 best_effort_timestamp=2048 best_effort_timestamp_time=0.040000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=265248 @@ -236,8 +226,6 @@ pkt_dts=2048 pkt_dts_time=0.040000 best_effort_timestamp=2048 best_effort_timestamp_time=0.040000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=495672 @@ -285,8 +273,6 @@ pkt_dts=2048 pkt_dts_time=0.046440 best_effort_timestamp=2048 best_effort_timestamp_time=0.046440 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=525677 @@ -319,8 +305,6 @@ pkt_dts=3072 pkt_dts_time=0.069660 best_effort_timestamp=3072 best_effort_timestamp_time=0.069660 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=527748 @@ -353,8 +337,6 @@ pkt_dts=4096 pkt_dts_time=0.080000 best_effort_timestamp=4096 best_effort_timestamp_time=0.080000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=529826 @@ -402,8 +384,6 @@ pkt_dts=4096 pkt_dts_time=0.080000 best_effort_timestamp=4096 best_effort_timestamp_time=0.080000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=760250 @@ -451,8 +431,6 @@ pkt_dts=4096 pkt_dts_time=0.092880 best_effort_timestamp=4096 best_effort_timestamp_time=0.092880 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=790255 @@ -485,8 +463,6 @@ pkt_dts=5120 pkt_dts_time=0.116100 best_effort_timestamp=5120 best_effort_timestamp_time=0.116100 -pkt_duration=393 -pkt_duration_time=0.008912 duration=393 duration_time=0.008912 pkt_pos=792326 @@ -519,8 +495,6 @@ pkt_dts=6144 pkt_dts_time=0.120000 best_effort_timestamp=6144 best_effort_timestamp_time=0.120000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=793142 @@ -568,8 +542,6 @@ pkt_dts=6144 pkt_dts_time=0.120000 best_effort_timestamp=6144 best_effort_timestamp_time=0.120000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=1023566 diff --git a/tests/ref/fate/ffprobe_flat b/tests/ref/fate/ffprobe_flat index cea6039307..d1e290ddda 100644 --- a/tests/ref/fate/ffprobe_flat +++ b/tests/ref/fate/ffprobe_flat @@ -18,8 +18,6 @@ packets_and_frames.frame.0.pkt_dts=0 packets_and_frames.frame.0.pkt_dts_time="0.000000" packets_and_frames.frame.0.best_effort_timestamp=0 packets_and_frames.frame.0.best_effort_timestamp_time="0.000000" -packets_and_frames.frame.0.pkt_duration=1024 -packets_and_frames.frame.0.pkt_duration_time="0.023220" packets_and_frames.frame.0.duration=1024 packets_and_frames.frame.0.duration_time="0.023220" packets_and_frames.frame.0.pkt_pos="669" @@ -48,8 +46,6 @@ packets_and_frames.frame.1.pkt_dts=0 packets_and_frames.frame.1.pkt_dts_time="0.000000" packets_and_frames.frame.1.best_effort_timestamp=0 packets_and_frames.frame.1.best_effort_timestamp_time="0.000000" -packets_and_frames.frame.1.pkt_duration=2048 -packets_and_frames.frame.1.pkt_duration_time="0.040000" packets_and_frames.frame.1.duration=2048 packets_and_frames.frame.1.duration_time="0.040000" packets_and_frames.frame.1.pkt_pos="2744" @@ -93,8 +89,6 @@ packets_and_frames.frame.2.pkt_dts=0 packets_and_frames.frame.2.pkt_dts_time="0.000000" packets_and_frames.frame.2.best_effort_timestamp=0 packets_and_frames.frame.2.best_effort_timestamp_time="0.000000" -packets_and_frames.frame.2.pkt_duration=2048 -packets_and_frames.frame.2.pkt_duration_time="0.040000" packets_and_frames.frame.2.duration=2048 packets_and_frames.frame.2.duration_time="0.040000" packets_and_frames.frame.2.pkt_pos="233165" @@ -138,8 +132,6 @@ packets_and_frames.frame.3.pkt_dts=1024 packets_and_frames.frame.3.pkt_dts_time="0.023220" packets_and_frames.frame.3.best_effort_timestamp=1024 packets_and_frames.frame.3.best_effort_timestamp_time="0.023220" -packets_and_frames.frame.3.pkt_duration=1024 -packets_and_frames.frame.3.pkt_duration_time="0.023220" packets_and_frames.frame.3.duration=1024 packets_and_frames.frame.3.duration_time="0.023220" packets_and_frames.frame.3.pkt_pos="263170" @@ -168,8 +160,6 @@ packets_and_frames.frame.4.pkt_dts=2048 packets_and_frames.frame.4.pkt_dts_time="0.040000" packets_and_frames.frame.4.best_effort_timestamp=2048 packets_and_frames.frame.4.best_effort_timestamp_time="0.040000" -packets_and_frames.frame.4.pkt_duration=2048 -packets_and_frames.frame.4.pkt_duration_time="0.040000" packets_and_frames.frame.4.duration=2048 packets_and_frames.frame.4.duration_time="0.040000" packets_and_frames.frame.4.pkt_pos="265248" @@ -213,8 +203,6 @@ packets_and_frames.frame.5.pkt_dts=2048 packets_and_frames.frame.5.pkt_dts_time="0.040000" packets_and_frames.frame.5.best_effort_timestamp=2048 packets_and_frames.frame.5.best_effort_timestamp_time="0.040000" -packets_and_frames.frame.5.pkt_duration=2048 -packets_and_frames.frame.5.pkt_duration_time="0.040000" packets_and_frames.frame.5.duration=2048 packets_and_frames.frame.5.duration_time="0.040000" packets_and_frames.frame.5.pkt_pos="495672" @@ -258,8 +246,6 @@ packets_and_frames.frame.6.pkt_dts=2048 packets_and_frames.frame.6.pkt_dts_time="0.046440" packets_and_frames.frame.6.best_effort_timestamp=2048 packets_and_frames.frame.6.best_effort_timestamp_time="0.046440" -packets_and_frames.frame.6.pkt_duration=1024 -packets_and_frames.frame.6.pkt_duration_time="0.023220" packets_and_frames.frame.6.duration=1024 packets_and_frames.frame.6.duration_time="0.023220" packets_and_frames.frame.6.pkt_pos="525677" @@ -288,8 +274,6 @@ packets_and_frames.frame.7.pkt_dts=3072 packets_and_frames.frame.7.pkt_dts_time="0.069660" packets_and_frames.frame.7.best_effort_timestamp=3072 packets_and_frames.frame.7.best_effort_timestamp_time="0.069660" -packets_and_frames.frame.7.pkt_duration=1024 -packets_and_frames.frame.7.pkt_duration_time="0.023220" packets_and_frames.frame.7.duration=1024 packets_and_frames.frame.7.duration_time="0.023220" packets_and_frames.frame.7.pkt_pos="527748" @@ -318,8 +302,6 @@ packets_and_frames.frame.8.pkt_dts=4096 packets_and_frames.frame.8.pkt_dts_time="0.080000" packets_and_frames.frame.8.best_effort_timestamp=4096 packets_and_frames.frame.8.best_effort_timestamp_time="0.080000" -packets_and_frames.frame.8.pkt_duration=2048 -packets_and_frames.frame.8.pkt_duration_time="0.040000" packets_and_frames.frame.8.duration=2048 packets_and_frames.frame.8.duration_time="0.040000" packets_and_frames.frame.8.pkt_pos="529826" @@ -363,8 +345,6 @@ packets_and_frames.frame.9.pkt_dts=4096 packets_and_frames.frame.9.pkt_dts_time="0.080000" packets_and_frames.frame.9.best_effort_timestamp=4096 packets_and_frames.frame.9.best_effort_timestamp_time="0.080000" -packets_and_frames.frame.9.pkt_duration=2048 -packets_and_frames.frame.9.pkt_duration_time="0.040000" packets_and_frames.frame.9.duration=2048 packets_and_frames.frame.9.duration_time="0.040000" packets_and_frames.frame.9.pkt_pos="760250" @@ -408,8 +388,6 @@ packets_and_frames.frame.10.pkt_dts=4096 packets_and_frames.frame.10.pkt_dts_time="0.092880" packets_and_frames.frame.10.best_effort_timestamp=4096 packets_and_frames.frame.10.best_effort_timestamp_time="0.092880" -packets_and_frames.frame.10.pkt_duration=1024 -packets_and_frames.frame.10.pkt_duration_time="0.023220" packets_and_frames.frame.10.duration=1024 packets_and_frames.frame.10.duration_time="0.023220" packets_and_frames.frame.10.pkt_pos="790255" @@ -438,8 +416,6 @@ packets_and_frames.frame.11.pkt_dts=5120 packets_and_frames.frame.11.pkt_dts_time="0.116100" packets_and_frames.frame.11.best_effort_timestamp=5120 packets_and_frames.frame.11.best_effort_timestamp_time="0.116100" -packets_and_frames.frame.11.pkt_duration=393 -packets_and_frames.frame.11.pkt_duration_time="0.008912" packets_and_frames.frame.11.duration=393 packets_and_frames.frame.11.duration_time="0.008912" packets_and_frames.frame.11.pkt_pos="792326" @@ -468,8 +444,6 @@ packets_and_frames.frame.12.pkt_dts=6144 packets_and_frames.frame.12.pkt_dts_time="0.120000" packets_and_frames.frame.12.best_effort_timestamp=6144 packets_and_frames.frame.12.best_effort_timestamp_time="0.120000" -packets_and_frames.frame.12.pkt_duration=2048 -packets_and_frames.frame.12.pkt_duration_time="0.040000" packets_and_frames.frame.12.duration=2048 packets_and_frames.frame.12.duration_time="0.040000" packets_and_frames.frame.12.pkt_pos="793142" @@ -513,8 +487,6 @@ packets_and_frames.frame.13.pkt_dts=6144 packets_and_frames.frame.13.pkt_dts_time="0.120000" packets_and_frames.frame.13.best_effort_timestamp=6144 packets_and_frames.frame.13.best_effort_timestamp_time="0.120000" -packets_and_frames.frame.13.pkt_duration=2048 -packets_and_frames.frame.13.pkt_duration_time="0.040000" packets_and_frames.frame.13.duration=2048 packets_and_frames.frame.13.duration_time="0.040000" packets_and_frames.frame.13.pkt_pos="1023566" diff --git a/tests/ref/fate/ffprobe_ini b/tests/ref/fate/ffprobe_ini index 497154ee7e..6716094d68 100644 --- a/tests/ref/fate/ffprobe_ini +++ b/tests/ref/fate/ffprobe_ini @@ -23,8 +23,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=669 @@ -57,8 +55,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=2744 @@ -106,8 +102,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=233165 @@ -155,8 +149,6 @@ pkt_dts=1024 pkt_dts_time=0.023220 best_effort_timestamp=1024 best_effort_timestamp_time=0.023220 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=263170 @@ -189,8 +181,6 @@ pkt_dts=2048 pkt_dts_time=0.040000 best_effort_timestamp=2048 best_effort_timestamp_time=0.040000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=265248 @@ -238,8 +228,6 @@ pkt_dts=2048 pkt_dts_time=0.040000 best_effort_timestamp=2048 best_effort_timestamp_time=0.040000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=495672 @@ -287,8 +275,6 @@ pkt_dts=2048 pkt_dts_time=0.046440 best_effort_timestamp=2048 best_effort_timestamp_time=0.046440 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=525677 @@ -321,8 +307,6 @@ pkt_dts=3072 pkt_dts_time=0.069660 best_effort_timestamp=3072 best_effort_timestamp_time=0.069660 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=527748 @@ -355,8 +339,6 @@ pkt_dts=4096 pkt_dts_time=0.080000 best_effort_timestamp=4096 best_effort_timestamp_time=0.080000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=529826 @@ -404,8 +386,6 @@ pkt_dts=4096 pkt_dts_time=0.080000 best_effort_timestamp=4096 best_effort_timestamp_time=0.080000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=760250 @@ -453,8 +433,6 @@ pkt_dts=4096 pkt_dts_time=0.092880 best_effort_timestamp=4096 best_effort_timestamp_time=0.092880 -pkt_duration=1024 -pkt_duration_time=0.023220 duration=1024 duration_time=0.023220 pkt_pos=790255 @@ -487,8 +465,6 @@ pkt_dts=5120 pkt_dts_time=0.116100 best_effort_timestamp=5120 best_effort_timestamp_time=0.116100 -pkt_duration=393 -pkt_duration_time=0.008912 duration=393 duration_time=0.008912 pkt_pos=792326 @@ -521,8 +497,6 @@ pkt_dts=6144 pkt_dts_time=0.120000 best_effort_timestamp=6144 best_effort_timestamp_time=0.120000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=793142 @@ -570,8 +544,6 @@ pkt_dts=6144 pkt_dts_time=0.120000 best_effort_timestamp=6144 best_effort_timestamp_time=0.120000 -pkt_duration=2048 -pkt_duration_time=0.040000 duration=2048 duration_time=0.040000 pkt_pos=1023566 diff --git a/tests/ref/fate/ffprobe_json b/tests/ref/fate/ffprobe_json index fe392fb47a..cf5b4eae1e 100644 --- a/tests/ref/fate/ffprobe_json +++ b/tests/ref/fate/ffprobe_json @@ -25,8 +25,6 @@ "pkt_dts_time": "0.000000", "best_effort_timestamp": 0, "best_effort_timestamp_time": "0.000000", - "pkt_duration": 1024, - "pkt_duration_time": "0.023220", "duration": 1024, "duration_time": "0.023220", "pkt_pos": "669", @@ -60,8 +58,6 @@ "pkt_dts_time": "0.000000", "best_effort_timestamp": 0, "best_effort_timestamp_time": "0.000000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "2744", @@ -106,8 +102,6 @@ "pkt_dts_time": "0.000000", "best_effort_timestamp": 0, "best_effort_timestamp_time": "0.000000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "233165", @@ -152,8 +146,6 @@ "pkt_dts_time": "0.023220", "best_effort_timestamp": 1024, "best_effort_timestamp_time": "0.023220", - "pkt_duration": 1024, - "pkt_duration_time": "0.023220", "duration": 1024, "duration_time": "0.023220", "pkt_pos": "263170", @@ -187,8 +179,6 @@ "pkt_dts_time": "0.040000", "best_effort_timestamp": 2048, "best_effort_timestamp_time": "0.040000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "265248", @@ -233,8 +223,6 @@ "pkt_dts_time": "0.040000", "best_effort_timestamp": 2048, "best_effort_timestamp_time": "0.040000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "495672", @@ -279,8 +267,6 @@ "pkt_dts_time": "0.046440", "best_effort_timestamp": 2048, "best_effort_timestamp_time": "0.046440", - "pkt_duration": 1024, - "pkt_duration_time": "0.023220", "duration": 1024, "duration_time": "0.023220", "pkt_pos": "525677", @@ -314,8 +300,6 @@ "pkt_dts_time": "0.069660", "best_effort_timestamp": 3072, "best_effort_timestamp_time": "0.069660", - "pkt_duration": 1024, - "pkt_duration_time": "0.023220", "duration": 1024, "duration_time": "0.023220", "pkt_pos": "527748", @@ -349,8 +333,6 @@ "pkt_dts_time": "0.080000", "best_effort_timestamp": 4096, "best_effort_timestamp_time": "0.080000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "529826", @@ -395,8 +377,6 @@ "pkt_dts_time": "0.080000", "best_effort_timestamp": 4096, "best_effort_timestamp_time": "0.080000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "760250", @@ -441,8 +421,6 @@ "pkt_dts_time": "0.092880", "best_effort_timestamp": 4096, "best_effort_timestamp_time": "0.092880", - "pkt_duration": 1024, - "pkt_duration_time": "0.023220", "duration": 1024, "duration_time": "0.023220", "pkt_pos": "790255", @@ -476,8 +454,6 @@ "pkt_dts_time": "0.116100", "best_effort_timestamp": 5120, "best_effort_timestamp_time": "0.116100", - "pkt_duration": 393, - "pkt_duration_time": "0.008912", "duration": 393, "duration_time": "0.008912", "pkt_pos": "792326", @@ -511,8 +487,6 @@ "pkt_dts_time": "0.120000", "best_effort_timestamp": 6144, "best_effort_timestamp_time": "0.120000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "793142", @@ -557,8 +531,6 @@ "pkt_dts_time": "0.120000", "best_effort_timestamp": 6144, "best_effort_timestamp_time": "0.120000", - "pkt_duration": 2048, - "pkt_duration_time": "0.040000", "duration": 2048, "duration_time": "0.040000", "pkt_pos": "1023566", diff --git a/tests/ref/fate/ffprobe_xml b/tests/ref/fate/ffprobe_xml index 038dd36372..eb1d265100 100644 --- a/tests/ref/fate/ffprobe_xml +++ b/tests/ref/fate/ffprobe_xml @@ -2,33 +2,33 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/tests/ref/fate/ffprobe_xsd b/tests/ref/fate/ffprobe_xsd index 7ecaaa4ec0..1d0a4d0e38 100644 --- a/tests/ref/fate/ffprobe_xsd +++ b/tests/ref/fate/ffprobe_xsd @@ -2,33 +2,33 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/tests/ref/fate/flcl1905 b/tests/ref/fate/flcl1905 index c8b9d8bce4..9cc192f230 100644 --- a/tests/ref/fate/flcl1905 +++ b/tests/ref/fate/flcl1905 @@ -1,192 +1,192 @@ packet|codec_type=audio|stream_index=0|pts=0|pts_time=0.000000|dts=0|dts_time=0.000000|duration=22528|duration_time=0.510839|size=4092|pos=56|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=56|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=22528|pts_time=0.510839|dts=22528|dts_time=0.510839|duration=22528|duration_time=0.510839|size=4092|pos=4148|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=22528|pts_time=0.510839|pkt_dts=22528|pkt_dts_time=0.510839|best_effort_timestamp=22528|best_effort_timestamp_time=0.510839|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=22528|pts_time=0.510839|pkt_dts=22528|pkt_dts_time=0.510839|best_effort_timestamp=22528|best_effort_timestamp_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=4148|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=45056|pts_time=1.021678|dts=45056|dts_time=1.021678|duration=22528|duration_time=0.510839|size=4092|pos=8240|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=45056|pts_time=1.021678|pkt_dts=45056|pkt_dts_time=1.021678|best_effort_timestamp=45056|best_effort_timestamp_time=1.021678|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=45056|pts_time=1.021678|pkt_dts=45056|pkt_dts_time=1.021678|best_effort_timestamp=45056|best_effort_timestamp_time=1.021678|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=8240|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=67584|pts_time=1.532517|dts=67584|dts_time=1.532517|duration=22528|duration_time=0.510839|size=4092|pos=12332|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=67584|pts_time=1.532517|pkt_dts=67584|pkt_dts_time=1.532517|best_effort_timestamp=67584|best_effort_timestamp_time=1.532517|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=67584|pts_time=1.532517|pkt_dts=67584|pkt_dts_time=1.532517|best_effort_timestamp=67584|best_effort_timestamp_time=1.532517|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=12332|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=90112|pts_time=2.043356|dts=90112|dts_time=2.043356|duration=22528|duration_time=0.510839|size=4092|pos=16424|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=90112|pts_time=2.043356|pkt_dts=90112|pkt_dts_time=2.043356|best_effort_timestamp=90112|best_effort_timestamp_time=2.043356|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=90112|pts_time=2.043356|pkt_dts=90112|pkt_dts_time=2.043356|best_effort_timestamp=90112|best_effort_timestamp_time=2.043356|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=16424|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=112640|pts_time=2.554195|dts=112640|dts_time=2.554195|duration=22528|duration_time=0.510839|size=4092|pos=20516|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=112640|pts_time=2.554195|pkt_dts=112640|pkt_dts_time=2.554195|best_effort_timestamp=112640|best_effort_timestamp_time=2.554195|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=112640|pts_time=2.554195|pkt_dts=112640|pkt_dts_time=2.554195|best_effort_timestamp=112640|best_effort_timestamp_time=2.554195|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=20516|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=135168|pts_time=3.065034|dts=135168|dts_time=3.065034|duration=22528|duration_time=0.510839|size=4092|pos=24608|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=135168|pts_time=3.065034|pkt_dts=135168|pkt_dts_time=3.065034|best_effort_timestamp=135168|best_effort_timestamp_time=3.065034|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=135168|pts_time=3.065034|pkt_dts=135168|pkt_dts_time=3.065034|best_effort_timestamp=135168|best_effort_timestamp_time=3.065034|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=24608|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=157696|pts_time=3.575873|dts=157696|dts_time=3.575873|duration=22528|duration_time=0.510839|size=4092|pos=28700|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=157696|pts_time=3.575873|pkt_dts=157696|pkt_dts_time=3.575873|best_effort_timestamp=157696|best_effort_timestamp_time=3.575873|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=157696|pts_time=3.575873|pkt_dts=157696|pkt_dts_time=3.575873|best_effort_timestamp=157696|best_effort_timestamp_time=3.575873|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=28700|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=180224|pts_time=4.086712|dts=180224|dts_time=4.086712|duration=22528|duration_time=0.510839|size=4092|pos=32792|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=180224|pts_time=4.086712|pkt_dts=180224|pkt_dts_time=4.086712|best_effort_timestamp=180224|best_effort_timestamp_time=4.086712|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=180224|pts_time=4.086712|pkt_dts=180224|pkt_dts_time=4.086712|best_effort_timestamp=180224|best_effort_timestamp_time=4.086712|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=32792|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=202752|pts_time=4.597551|dts=202752|dts_time=4.597551|duration=22528|duration_time=0.510839|size=4092|pos=36884|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=202752|pts_time=4.597551|pkt_dts=202752|pkt_dts_time=4.597551|best_effort_timestamp=202752|best_effort_timestamp_time=4.597551|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=202752|pts_time=4.597551|pkt_dts=202752|pkt_dts_time=4.597551|best_effort_timestamp=202752|best_effort_timestamp_time=4.597551|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=36884|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=225280|pts_time=5.108390|dts=225280|dts_time=5.108390|duration=22528|duration_time=0.510839|size=4092|pos=40976|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=225280|pts_time=5.108390|pkt_dts=225280|pkt_dts_time=5.108390|best_effort_timestamp=225280|best_effort_timestamp_time=5.108390|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=225280|pts_time=5.108390|pkt_dts=225280|pkt_dts_time=5.108390|best_effort_timestamp=225280|best_effort_timestamp_time=5.108390|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=40976|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=247808|pts_time=5.619229|dts=247808|dts_time=5.619229|duration=22528|duration_time=0.510839|size=4092|pos=45068|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=247808|pts_time=5.619229|pkt_dts=247808|pkt_dts_time=5.619229|best_effort_timestamp=247808|best_effort_timestamp_time=5.619229|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=247808|pts_time=5.619229|pkt_dts=247808|pkt_dts_time=5.619229|best_effort_timestamp=247808|best_effort_timestamp_time=5.619229|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=45068|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=270336|pts_time=6.130068|dts=270336|dts_time=6.130068|duration=22528|duration_time=0.510839|size=4092|pos=49160|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=270336|pts_time=6.130068|pkt_dts=270336|pkt_dts_time=6.130068|best_effort_timestamp=270336|best_effort_timestamp_time=6.130068|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=270336|pts_time=6.130068|pkt_dts=270336|pkt_dts_time=6.130068|best_effort_timestamp=270336|best_effort_timestamp_time=6.130068|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=49160|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=292864|pts_time=6.640907|dts=292864|dts_time=6.640907|duration=22528|duration_time=0.510839|size=4092|pos=53252|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=292864|pts_time=6.640907|pkt_dts=292864|pkt_dts_time=6.640907|best_effort_timestamp=292864|best_effort_timestamp_time=6.640907|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=292864|pts_time=6.640907|pkt_dts=292864|pkt_dts_time=6.640907|best_effort_timestamp=292864|best_effort_timestamp_time=6.640907|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=53252|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=315392|pts_time=7.151746|dts=315392|dts_time=7.151746|duration=22528|duration_time=0.510839|size=4092|pos=57344|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=315392|pts_time=7.151746|pkt_dts=315392|pkt_dts_time=7.151746|best_effort_timestamp=315392|best_effort_timestamp_time=7.151746|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=315392|pts_time=7.151746|pkt_dts=315392|pkt_dts_time=7.151746|best_effort_timestamp=315392|best_effort_timestamp_time=7.151746|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=57344|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=337920|pts_time=7.662585|dts=337920|dts_time=7.662585|duration=22528|duration_time=0.510839|size=4092|pos=61436|flags=K__ -frame|media_type=audio|stream_index=0|key_frame=1|pts=337920|pts_time=7.662585|pkt_dts=337920|pkt_dts_time=7.662585|best_effort_timestamp=337920|best_effort_timestamp_time=7.662585|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=22528|pkt_duration_time=0.510839|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=337920|pts_time=7.662585|pkt_dts=337920|pkt_dts_time=7.662585|best_effort_timestamp=337920|best_effort_timestamp_time=7.662585|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=22528|duration_time=0.510839|pkt_pos=61436|pkt_size=4092|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=360448|pts_time=8.173424|dts=360448|dts_time=8.173424|duration=44|duration_time=0.000998|size=8|pos=65528|flags=K_C -frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|pkt_duration=44|pkt_duration_time=0.000998|duration=44|duration_time=0.000998|pkt_pos=65528|pkt_size=8|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown +frame|media_type=audio|stream_index=0|key_frame=1|pts=N/A|pts_time=N/A|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=N/A|best_effort_timestamp_time=N/A|duration=44|duration_time=0.000998|pkt_pos=65528|pkt_size=8|sample_fmt=fltp|nb_samples=2048|channels=2|channel_layout=unknown diff --git a/tests/ref/fate/gaplessenc-itunes-to-ipod-aac b/tests/ref/fate/gaplessenc-itunes-to-ipod-aac index 5f4f27a779..41c9f03b20 100644 --- a/tests/ref/fate/gaplessenc-itunes-to-ipod-aac +++ b/tests/ref/fate/gaplessenc-itunes-to-ipod-aac @@ -24,20 +24,20 @@ packet|pts=100352|dts=100352|duration=1024|flags=K__ packet|pts=101376|dts=101376|duration=1024|flags=K__ packet|pts=102400|dts=102400|duration=926|flags=K__ stream|nb_read_packets=102 -frame|pts=0|pkt_dts=0|best_effort_timestamp=0|pkt_duration=1024|nb_samples=1024 -frame|pts=1024|pkt_dts=1024|best_effort_timestamp=1024|pkt_duration=1024|nb_samples=1024 -frame|pts=2048|pkt_dts=2048|best_effort_timestamp=2048|pkt_duration=1024|nb_samples=1024 -frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|pkt_duration=1024|nb_samples=1024 -frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|pkt_duration=1024|nb_samples=1024 -frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|pkt_duration=1024|nb_samples=1024 -frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|pkt_duration=1024|nb_samples=1024 -frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|pkt_duration=1024|nb_samples=1024 -frame|pts=95232|pkt_dts=95232|best_effort_timestamp=95232|pkt_duration=1024|nb_samples=1024 -frame|pts=96256|pkt_dts=96256|best_effort_timestamp=96256|pkt_duration=1024|nb_samples=1024 -frame|pts=97280|pkt_dts=97280|best_effort_timestamp=97280|pkt_duration=1024|nb_samples=1024 -frame|pts=98304|pkt_dts=98304|best_effort_timestamp=98304|pkt_duration=1024|nb_samples=1024 -frame|pts=99328|pkt_dts=99328|best_effort_timestamp=99328|pkt_duration=1024|nb_samples=1024 -frame|pts=100352|pkt_dts=100352|best_effort_timestamp=100352|pkt_duration=1024|nb_samples=1024 -frame|pts=101376|pkt_dts=101376|best_effort_timestamp=101376|pkt_duration=1024|nb_samples=1024 -frame|pts=102400|pkt_dts=102400|best_effort_timestamp=102400|pkt_duration=926|nb_samples=1024 +frame|pts=0|pkt_dts=0|best_effort_timestamp=0|nb_samples=1024 +frame|pts=1024|pkt_dts=1024|best_effort_timestamp=1024|nb_samples=1024 +frame|pts=2048|pkt_dts=2048|best_effort_timestamp=2048|nb_samples=1024 +frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|nb_samples=1024 +frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|nb_samples=1024 +frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|nb_samples=1024 +frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|nb_samples=1024 +frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|nb_samples=1024 +frame|pts=95232|pkt_dts=95232|best_effort_timestamp=95232|nb_samples=1024 +frame|pts=96256|pkt_dts=96256|best_effort_timestamp=96256|nb_samples=1024 +frame|pts=97280|pkt_dts=97280|best_effort_timestamp=97280|nb_samples=1024 +frame|pts=98304|pkt_dts=98304|best_effort_timestamp=98304|nb_samples=1024 +frame|pts=99328|pkt_dts=99328|best_effort_timestamp=99328|nb_samples=1024 +frame|pts=100352|pkt_dts=100352|best_effort_timestamp=100352|nb_samples=1024 +frame|pts=101376|pkt_dts=101376|best_effort_timestamp=101376|nb_samples=1024 +frame|pts=102400|pkt_dts=102400|best_effort_timestamp=102400|nb_samples=1024 stream|nb_read_frames=101 diff --git a/tests/ref/fate/gaplessenc-pcm-to-mov-aac b/tests/ref/fate/gaplessenc-pcm-to-mov-aac index 76a3118b47..09ffaed58d 100644 --- a/tests/ref/fate/gaplessenc-pcm-to-mov-aac +++ b/tests/ref/fate/gaplessenc-pcm-to-mov-aac @@ -24,20 +24,20 @@ packet|pts=526336|dts=526336|duration=1024|flags=K__ packet|pts=527360|dts=527360|duration=1024|flags=K__ packet|pts=528384|dts=528384|duration=816|flags=K__ stream|nb_read_packets=518 -frame|pts=0|pkt_dts=0|best_effort_timestamp=0|pkt_duration=1024|nb_samples=1024 -frame|pts=1024|pkt_dts=1024|best_effort_timestamp=1024|pkt_duration=1024|nb_samples=1024 -frame|pts=2048|pkt_dts=2048|best_effort_timestamp=2048|pkt_duration=1024|nb_samples=1024 -frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|pkt_duration=1024|nb_samples=1024 -frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|pkt_duration=1024|nb_samples=1024 -frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|pkt_duration=1024|nb_samples=1024 -frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|pkt_duration=1024|nb_samples=1024 -frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|pkt_duration=1024|nb_samples=1024 -frame|pts=521216|pkt_dts=521216|best_effort_timestamp=521216|pkt_duration=1024|nb_samples=1024 -frame|pts=522240|pkt_dts=522240|best_effort_timestamp=522240|pkt_duration=1024|nb_samples=1024 -frame|pts=523264|pkt_dts=523264|best_effort_timestamp=523264|pkt_duration=1024|nb_samples=1024 -frame|pts=524288|pkt_dts=524288|best_effort_timestamp=524288|pkt_duration=1024|nb_samples=1024 -frame|pts=525312|pkt_dts=525312|best_effort_timestamp=525312|pkt_duration=1024|nb_samples=1024 -frame|pts=526336|pkt_dts=526336|best_effort_timestamp=526336|pkt_duration=1024|nb_samples=1024 -frame|pts=527360|pkt_dts=527360|best_effort_timestamp=527360|pkt_duration=1024|nb_samples=1024 -frame|pts=528384|pkt_dts=528384|best_effort_timestamp=528384|pkt_duration=816|nb_samples=1024 +frame|pts=0|pkt_dts=0|best_effort_timestamp=0|nb_samples=1024 +frame|pts=1024|pkt_dts=1024|best_effort_timestamp=1024|nb_samples=1024 +frame|pts=2048|pkt_dts=2048|best_effort_timestamp=2048|nb_samples=1024 +frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|nb_samples=1024 +frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|nb_samples=1024 +frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|nb_samples=1024 +frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|nb_samples=1024 +frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|nb_samples=1024 +frame|pts=521216|pkt_dts=521216|best_effort_timestamp=521216|nb_samples=1024 +frame|pts=522240|pkt_dts=522240|best_effort_timestamp=522240|nb_samples=1024 +frame|pts=523264|pkt_dts=523264|best_effort_timestamp=523264|nb_samples=1024 +frame|pts=524288|pkt_dts=524288|best_effort_timestamp=524288|nb_samples=1024 +frame|pts=525312|pkt_dts=525312|best_effort_timestamp=525312|nb_samples=1024 +frame|pts=526336|pkt_dts=526336|best_effort_timestamp=526336|nb_samples=1024 +frame|pts=527360|pkt_dts=527360|best_effort_timestamp=527360|nb_samples=1024 +frame|pts=528384|pkt_dts=528384|best_effort_timestamp=528384|nb_samples=1024 stream|nb_read_frames=517 diff --git a/tests/ref/fate/gaplessinfo-itunes1 b/tests/ref/fate/gaplessinfo-itunes1 index 82c471fa51..f888130d8a 100644 --- a/tests/ref/fate/gaplessinfo-itunes1 +++ b/tests/ref/fate/gaplessinfo-itunes1 @@ -24,20 +24,20 @@ packet|pts=1291264|dts=1291264|duration=1024|flags=K__ packet|pts=1292288|dts=1292288|duration=1024|flags=K__ packet|pts=1293312|dts=1293312|duration=1024|flags=K__ stream|nb_read_packets=1264 -frame|pts=2112|pkt_dts=2112|best_effort_timestamp=2112|pkt_duration=960|nb_samples=960 -frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|pkt_duration=1024|nb_samples=1024 -frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|pkt_duration=1024|nb_samples=1024 -frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|pkt_duration=1024|nb_samples=1024 -frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|pkt_duration=1024|nb_samples=1024 -frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|pkt_duration=1024|nb_samples=1024 -frame|pts=8192|pkt_dts=8192|best_effort_timestamp=8192|pkt_duration=1024|nb_samples=1024 -frame|pts=9216|pkt_dts=9216|best_effort_timestamp=9216|pkt_duration=1024|nb_samples=1024 -frame|pts=1286144|pkt_dts=1286144|best_effort_timestamp=1286144|pkt_duration=1024|nb_samples=1024 -frame|pts=1287168|pkt_dts=1287168|best_effort_timestamp=1287168|pkt_duration=1024|nb_samples=1024 -frame|pts=1288192|pkt_dts=1288192|best_effort_timestamp=1288192|pkt_duration=1024|nb_samples=1024 -frame|pts=1289216|pkt_dts=1289216|best_effort_timestamp=1289216|pkt_duration=1024|nb_samples=1024 -frame|pts=1290240|pkt_dts=1290240|best_effort_timestamp=1290240|pkt_duration=1024|nb_samples=1024 -frame|pts=1291264|pkt_dts=1291264|best_effort_timestamp=1291264|pkt_duration=1024|nb_samples=1024 -frame|pts=1292288|pkt_dts=1292288|best_effort_timestamp=1292288|pkt_duration=1024|nb_samples=1024 -frame|pts=1293312|pkt_dts=1293312|best_effort_timestamp=1293312|pkt_duration=1024|nb_samples=1024 +frame|pts=2112|pkt_dts=2112|best_effort_timestamp=2112|nb_samples=960 +frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|nb_samples=1024 +frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|nb_samples=1024 +frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|nb_samples=1024 +frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|nb_samples=1024 +frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|nb_samples=1024 +frame|pts=8192|pkt_dts=8192|best_effort_timestamp=8192|nb_samples=1024 +frame|pts=9216|pkt_dts=9216|best_effort_timestamp=9216|nb_samples=1024 +frame|pts=1286144|pkt_dts=1286144|best_effort_timestamp=1286144|nb_samples=1024 +frame|pts=1287168|pkt_dts=1287168|best_effort_timestamp=1287168|nb_samples=1024 +frame|pts=1288192|pkt_dts=1288192|best_effort_timestamp=1288192|nb_samples=1024 +frame|pts=1289216|pkt_dts=1289216|best_effort_timestamp=1289216|nb_samples=1024 +frame|pts=1290240|pkt_dts=1290240|best_effort_timestamp=1290240|nb_samples=1024 +frame|pts=1291264|pkt_dts=1291264|best_effort_timestamp=1291264|nb_samples=1024 +frame|pts=1292288|pkt_dts=1292288|best_effort_timestamp=1292288|nb_samples=1024 +frame|pts=1293312|pkt_dts=1293312|best_effort_timestamp=1293312|nb_samples=1024 stream|nb_read_frames=1262 diff --git a/tests/ref/fate/gaplessinfo-itunes2 b/tests/ref/fate/gaplessinfo-itunes2 index 7581b4dfae..057e282305 100644 --- a/tests/ref/fate/gaplessinfo-itunes2 +++ b/tests/ref/fate/gaplessinfo-itunes2 @@ -24,20 +24,20 @@ packet|pts=102400|dts=102400|duration=1024|flags=K__ packet|pts=103424|dts=103424|duration=1024|flags=K__ packet|pts=104448|dts=104448|duration=1024|flags=K__ stream|nb_read_packets=103 -frame|pts=2112|pkt_dts=2112|best_effort_timestamp=2112|pkt_duration=960|nb_samples=960 -frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|pkt_duration=1024|nb_samples=1024 -frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|pkt_duration=1024|nb_samples=1024 -frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|pkt_duration=1024|nb_samples=1024 -frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|pkt_duration=1024|nb_samples=1024 -frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|pkt_duration=1024|nb_samples=1024 -frame|pts=8192|pkt_dts=8192|best_effort_timestamp=8192|pkt_duration=1024|nb_samples=1024 -frame|pts=9216|pkt_dts=9216|best_effort_timestamp=9216|pkt_duration=1024|nb_samples=1024 -frame|pts=97280|pkt_dts=97280|best_effort_timestamp=97280|pkt_duration=1024|nb_samples=1024 -frame|pts=98304|pkt_dts=98304|best_effort_timestamp=98304|pkt_duration=1024|nb_samples=1024 -frame|pts=99328|pkt_dts=99328|best_effort_timestamp=99328|pkt_duration=1024|nb_samples=1024 -frame|pts=100352|pkt_dts=100352|best_effort_timestamp=100352|pkt_duration=1024|nb_samples=1024 -frame|pts=101376|pkt_dts=101376|best_effort_timestamp=101376|pkt_duration=1024|nb_samples=1024 -frame|pts=102400|pkt_dts=102400|best_effort_timestamp=102400|pkt_duration=1024|nb_samples=1024 -frame|pts=103424|pkt_dts=103424|best_effort_timestamp=103424|pkt_duration=1024|nb_samples=1024 -frame|pts=104448|pkt_dts=104448|best_effort_timestamp=104448|pkt_duration=1024|nb_samples=1024 +frame|pts=2112|pkt_dts=2112|best_effort_timestamp=2112|nb_samples=960 +frame|pts=3072|pkt_dts=3072|best_effort_timestamp=3072|nb_samples=1024 +frame|pts=4096|pkt_dts=4096|best_effort_timestamp=4096|nb_samples=1024 +frame|pts=5120|pkt_dts=5120|best_effort_timestamp=5120|nb_samples=1024 +frame|pts=6144|pkt_dts=6144|best_effort_timestamp=6144|nb_samples=1024 +frame|pts=7168|pkt_dts=7168|best_effort_timestamp=7168|nb_samples=1024 +frame|pts=8192|pkt_dts=8192|best_effort_timestamp=8192|nb_samples=1024 +frame|pts=9216|pkt_dts=9216|best_effort_timestamp=9216|nb_samples=1024 +frame|pts=97280|pkt_dts=97280|best_effort_timestamp=97280|nb_samples=1024 +frame|pts=98304|pkt_dts=98304|best_effort_timestamp=98304|nb_samples=1024 +frame|pts=99328|pkt_dts=99328|best_effort_timestamp=99328|nb_samples=1024 +frame|pts=100352|pkt_dts=100352|best_effort_timestamp=100352|nb_samples=1024 +frame|pts=101376|pkt_dts=101376|best_effort_timestamp=101376|nb_samples=1024 +frame|pts=102400|pkt_dts=102400|best_effort_timestamp=102400|nb_samples=1024 +frame|pts=103424|pkt_dts=103424|best_effort_timestamp=103424|nb_samples=1024 +frame|pts=104448|pkt_dts=104448|best_effort_timestamp=104448|nb_samples=1024 stream|nb_read_frames=101 diff --git a/tests/ref/fate/h264-dts_5frames b/tests/ref/fate/h264-dts_5frames index f0a9258717..74f6582814 100644 --- a/tests/ref/fate/h264-dts_5frames +++ b/tests/ref/fate/h264-dts_5frames @@ -8,8 +8,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=166 -pkt_duration_time=0.166000 duration=166 duration_time=0.166000 pkt_pos=651 @@ -44,8 +42,6 @@ pkt_dts=167 pkt_dts_time=0.167000 best_effort_timestamp=167 best_effort_timestamp_time=0.167000 -pkt_duration=166 -pkt_duration_time=0.166000 duration=166 duration_time=0.166000 pkt_pos=15085 @@ -80,8 +76,6 @@ pkt_dts=333 pkt_dts_time=0.333000 best_effort_timestamp=333 best_effort_timestamp_time=0.333000 -pkt_duration=166 -pkt_duration_time=0.166000 duration=166 duration_time=0.166000 pkt_pos=15102 @@ -116,8 +110,6 @@ pkt_dts=500 pkt_dts_time=0.500000 best_effort_timestamp=500 best_effort_timestamp_time=0.500000 -pkt_duration=166 -pkt_duration_time=0.166000 duration=166 duration_time=0.166000 pkt_pos=15119 @@ -152,8 +144,6 @@ pkt_dts=667 pkt_dts_time=0.667000 best_effort_timestamp=667 best_effort_timestamp_time=0.667000 -pkt_duration=166 -pkt_duration_time=0.166000 duration=166 duration_time=0.166000 pkt_pos=15136 diff --git a/tests/ref/fate/jpg-icc b/tests/ref/fate/jpg-icc index cc7ab604e1..8e4c382747 100644 --- a/tests/ref/fate/jpg-icc +++ b/tests/ref/fate/jpg-icc @@ -16,8 +16,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1 -pkt_duration_time=0.040000 duration=1 duration_time=0.040000 pkt_pos=0 diff --git a/tests/ref/fate/mov-zombie b/tests/ref/fate/mov-zombie index 553b753474..955b8a4767 100644 --- a/tests/ref/fate/mov-zombie +++ b/tests/ref/fate/mov-zombie @@ -1,132 +1,132 @@ packet|codec_type=video|stream_index=0|pts=0|pts_time=0.000000|dts=-3004|dts_time=-0.033378|duration=3003|duration_time=0.033367|size=4133|pos=11309|flags=K__ packet|codec_type=video|stream_index=0|pts=5440|pts_time=0.060444|dts=-567|dts_time=-0.006300|duration=3003|duration_time=0.033367|size=1077|pos=15442|flags=___ -frame|media_type=video|stream_index=0|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=-567|pkt_dts_time=-0.006300|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=11309|pkt_size=4133|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=-567|pkt_dts_time=-0.006300|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=3003|duration_time=0.033367|pkt_pos=11309|pkt_size=4133|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=2437|pts_time=0.027078|dts=2436|dts_time=0.027067|duration=3003|duration_time=0.033367|size=355|pos=16519|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=2437|pts_time=0.027078|pkt_dts=2436|pkt_dts_time=0.027067|best_effort_timestamp=2437|best_effort_timestamp_time=0.027078|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=16519|pkt_size=355|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=2|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=2437|pts_time=0.027078|pkt_dts=2436|pkt_dts_time=0.027067|best_effort_timestamp=2437|best_effort_timestamp_time=0.027078|duration=3003|duration_time=0.033367|pkt_pos=16519|pkt_size=355|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=2|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=11446|pts_time=0.127178|dts=5439|dts_time=0.060433|duration=3003|duration_time=0.033367|size=1110|pos=16874|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=5440|pts_time=0.060444|pkt_dts=5439|pkt_dts_time=0.060433|best_effort_timestamp=5440|best_effort_timestamp_time=0.060444|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=15442|pkt_size=1077|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=1|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=5440|pts_time=0.060444|pkt_dts=5439|pkt_dts_time=0.060433|best_effort_timestamp=5440|best_effort_timestamp_time=0.060444|duration=3003|duration_time=0.033367|pkt_pos=15442|pkt_size=1077|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=1|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=8443|pts_time=0.093811|dts=8442|dts_time=0.093800|duration=3003|duration_time=0.033367|size=430|pos=17984|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=8443|pts_time=0.093811|pkt_dts=8442|pkt_dts_time=0.093800|best_effort_timestamp=8443|best_effort_timestamp_time=0.093811|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=17984|pkt_size=430|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=4|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=8443|pts_time=0.093811|pkt_dts=8442|pkt_dts_time=0.093800|best_effort_timestamp=8443|best_effort_timestamp_time=0.093811|duration=3003|duration_time=0.033367|pkt_pos=17984|pkt_size=430|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=4|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=17452|pts_time=0.193911|dts=11445|dts_time=0.127167|duration=3003|duration_time=0.033367|size=1485|pos=18414|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=11446|pts_time=0.127178|pkt_dts=11445|pkt_dts_time=0.127167|best_effort_timestamp=11446|best_effort_timestamp_time=0.127178|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=16874|pkt_size=1110|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=3|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=11446|pts_time=0.127178|pkt_dts=11445|pkt_dts_time=0.127167|best_effort_timestamp=11446|best_effort_timestamp_time=0.127178|duration=3003|duration_time=0.033367|pkt_pos=16874|pkt_size=1110|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=3|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=14449|pts_time=0.160544|dts=14448|dts_time=0.160533|duration=3003|duration_time=0.033367|size=1005|pos=19899|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=14449|pts_time=0.160544|pkt_dts=14448|pkt_dts_time=0.160533|best_effort_timestamp=14449|best_effort_timestamp_time=0.160544|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=19899|pkt_size=1005|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=6|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=14449|pts_time=0.160544|pkt_dts=14448|pkt_dts_time=0.160533|best_effort_timestamp=14449|best_effort_timestamp_time=0.160544|duration=3003|duration_time=0.033367|pkt_pos=19899|pkt_size=1005|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=6|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=23458|pts_time=0.260644|dts=17451|dts_time=0.193900|duration=3003|duration_time=0.033367|size=1976|pos=20904|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=17452|pts_time=0.193911|pkt_dts=17451|pkt_dts_time=0.193900|best_effort_timestamp=17452|best_effort_timestamp_time=0.193911|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=18414|pkt_size=1485|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=5|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=17452|pts_time=0.193911|pkt_dts=17451|pkt_dts_time=0.193900|best_effort_timestamp=17452|best_effort_timestamp_time=0.193911|duration=3003|duration_time=0.033367|pkt_pos=18414|pkt_size=1485|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=5|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=20455|pts_time=0.227278|dts=20454|dts_time=0.227267|duration=3003|duration_time=0.033367|size=904|pos=22880|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=20455|pts_time=0.227278|pkt_dts=20454|pkt_dts_time=0.227267|best_effort_timestamp=20455|best_effort_timestamp_time=0.227278|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=22880|pkt_size=904|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=8|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=20455|pts_time=0.227278|pkt_dts=20454|pkt_dts_time=0.227267|best_effort_timestamp=20455|best_effort_timestamp_time=0.227278|duration=3003|duration_time=0.033367|pkt_pos=22880|pkt_size=904|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=8|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=29464|pts_time=0.327378|dts=23457|dts_time=0.260633|duration=3003|duration_time=0.033367|size=1254|pos=23784|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=23458|pts_time=0.260644|pkt_dts=23457|pkt_dts_time=0.260633|best_effort_timestamp=23458|best_effort_timestamp_time=0.260644|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=20904|pkt_size=1976|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=7|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=23458|pts_time=0.260644|pkt_dts=23457|pkt_dts_time=0.260633|best_effort_timestamp=23458|best_effort_timestamp_time=0.260644|duration=3003|duration_time=0.033367|pkt_pos=20904|pkt_size=1976|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=7|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=26461|pts_time=0.294011|dts=26460|dts_time=0.294000|duration=3003|duration_time=0.033367|size=700|pos=25038|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=26461|pts_time=0.294011|pkt_dts=26460|pkt_dts_time=0.294000|best_effort_timestamp=26461|best_effort_timestamp_time=0.294011|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=25038|pkt_size=700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=10|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=26461|pts_time=0.294011|pkt_dts=26460|pkt_dts_time=0.294000|best_effort_timestamp=26461|best_effort_timestamp_time=0.294011|duration=3003|duration_time=0.033367|pkt_pos=25038|pkt_size=700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=10|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=35470|pts_time=0.394111|dts=29463|dts_time=0.327367|duration=3003|duration_time=0.033367|size=1311|pos=25738|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=29464|pts_time=0.327378|pkt_dts=29463|pkt_dts_time=0.327367|best_effort_timestamp=29464|best_effort_timestamp_time=0.327378|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=23784|pkt_size=1254|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=9|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=29464|pts_time=0.327378|pkt_dts=29463|pkt_dts_time=0.327367|best_effort_timestamp=29464|best_effort_timestamp_time=0.327378|duration=3003|duration_time=0.033367|pkt_pos=23784|pkt_size=1254|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=9|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=32467|pts_time=0.360744|dts=32466|dts_time=0.360733|duration=3003|duration_time=0.033367|size=631|pos=27049|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=32467|pts_time=0.360744|pkt_dts=32466|pkt_dts_time=0.360733|best_effort_timestamp=32467|best_effort_timestamp_time=0.360744|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=27049|pkt_size=631|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=12|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=32467|pts_time=0.360744|pkt_dts=32466|pkt_dts_time=0.360733|best_effort_timestamp=32467|best_effort_timestamp_time=0.360744|duration=3003|duration_time=0.033367|pkt_pos=27049|pkt_size=631|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=12|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=41476|pts_time=0.460844|dts=35469|dts_time=0.394100|duration=3003|duration_time=0.033367|size=1296|pos=27680|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=35470|pts_time=0.394111|pkt_dts=35469|pkt_dts_time=0.394100|best_effort_timestamp=35470|best_effort_timestamp_time=0.394111|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=25738|pkt_size=1311|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=11|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=35470|pts_time=0.394111|pkt_dts=35469|pkt_dts_time=0.394100|best_effort_timestamp=35470|best_effort_timestamp_time=0.394111|duration=3003|duration_time=0.033367|pkt_pos=25738|pkt_size=1311|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=11|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=38473|pts_time=0.427478|dts=38472|dts_time=0.427467|duration=3003|duration_time=0.033367|size=466|pos=28976|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=38473|pts_time=0.427478|pkt_dts=38472|pkt_dts_time=0.427467|best_effort_timestamp=38473|best_effort_timestamp_time=0.427478|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=28976|pkt_size=466|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=14|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=38473|pts_time=0.427478|pkt_dts=38472|pkt_dts_time=0.427467|best_effort_timestamp=38473|best_effort_timestamp_time=0.427478|duration=3003|duration_time=0.033367|pkt_pos=28976|pkt_size=466|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=14|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=47482|pts_time=0.527578|dts=41475|dts_time=0.460833|duration=3003|duration_time=0.033367|size=1638|pos=29442|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=41476|pts_time=0.460844|pkt_dts=41475|pkt_dts_time=0.460833|best_effort_timestamp=41476|best_effort_timestamp_time=0.460844|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=27680|pkt_size=1296|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=13|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=41476|pts_time=0.460844|pkt_dts=41475|pkt_dts_time=0.460833|best_effort_timestamp=41476|best_effort_timestamp_time=0.460844|duration=3003|duration_time=0.033367|pkt_pos=27680|pkt_size=1296|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=13|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=44479|pts_time=0.494211|dts=44478|dts_time=0.494200|duration=3003|duration_time=0.033367|size=907|pos=31080|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=44479|pts_time=0.494211|pkt_dts=44478|pkt_dts_time=0.494200|best_effort_timestamp=44479|best_effort_timestamp_time=0.494211|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=31080|pkt_size=907|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=16|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=44479|pts_time=0.494211|pkt_dts=44478|pkt_dts_time=0.494200|best_effort_timestamp=44479|best_effort_timestamp_time=0.494211|duration=3003|duration_time=0.033367|pkt_pos=31080|pkt_size=907|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=16|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=53488|pts_time=0.594311|dts=47481|dts_time=0.527567|duration=3003|duration_time=0.033367|size=1362|pos=31987|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=47482|pts_time=0.527578|pkt_dts=47481|pkt_dts_time=0.527567|best_effort_timestamp=47482|best_effort_timestamp_time=0.527578|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=29442|pkt_size=1638|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=15|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=47482|pts_time=0.527578|pkt_dts=47481|pkt_dts_time=0.527567|best_effort_timestamp=47482|best_effort_timestamp_time=0.527578|duration=3003|duration_time=0.033367|pkt_pos=29442|pkt_size=1638|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=15|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=50485|pts_time=0.560944|dts=50484|dts_time=0.560933|duration=3003|duration_time=0.033367|size=682|pos=33349|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=50485|pts_time=0.560944|pkt_dts=50484|pkt_dts_time=0.560933|best_effort_timestamp=50485|best_effort_timestamp_time=0.560944|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=33349|pkt_size=682|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=18|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=50485|pts_time=0.560944|pkt_dts=50484|pkt_dts_time=0.560933|best_effort_timestamp=50485|best_effort_timestamp_time=0.560944|duration=3003|duration_time=0.033367|pkt_pos=33349|pkt_size=682|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=18|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=59494|pts_time=0.661044|dts=53487|dts_time=0.594300|duration=3003|duration_time=0.033367|size=2917|pos=34031|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=53488|pts_time=0.594311|pkt_dts=53487|pkt_dts_time=0.594300|best_effort_timestamp=53488|best_effort_timestamp_time=0.594311|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=31987|pkt_size=1362|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=17|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=53488|pts_time=0.594311|pkt_dts=53487|pkt_dts_time=0.594300|best_effort_timestamp=53488|best_effort_timestamp_time=0.594311|duration=3003|duration_time=0.033367|pkt_pos=31987|pkt_size=1362|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=17|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=56491|pts_time=0.627678|dts=56490|dts_time=0.627667|duration=3003|duration_time=0.033367|size=1174|pos=36948|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=56491|pts_time=0.627678|pkt_dts=56490|pkt_dts_time=0.627667|best_effort_timestamp=56491|best_effort_timestamp_time=0.627678|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=36948|pkt_size=1174|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=20|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=56491|pts_time=0.627678|pkt_dts=56490|pkt_dts_time=0.627667|best_effort_timestamp=56491|best_effort_timestamp_time=0.627678|duration=3003|duration_time=0.033367|pkt_pos=36948|pkt_size=1174|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=20|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=65500|pts_time=0.727778|dts=59493|dts_time=0.661033|duration=3003|duration_time=0.033367|size=1748|pos=38122|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=59494|pts_time=0.661044|pkt_dts=59493|pkt_dts_time=0.661033|best_effort_timestamp=59494|best_effort_timestamp_time=0.661044|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=34031|pkt_size=2917|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=19|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=59494|pts_time=0.661044|pkt_dts=59493|pkt_dts_time=0.661033|best_effort_timestamp=59494|best_effort_timestamp_time=0.661044|duration=3003|duration_time=0.033367|pkt_pos=34031|pkt_size=2917|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=19|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=62497|pts_time=0.694411|dts=62496|dts_time=0.694400|duration=3003|duration_time=0.033367|size=926|pos=39870|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=62497|pts_time=0.694411|pkt_dts=62496|pkt_dts_time=0.694400|best_effort_timestamp=62497|best_effort_timestamp_time=0.694411|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=39870|pkt_size=926|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=22|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=62497|pts_time=0.694411|pkt_dts=62496|pkt_dts_time=0.694400|best_effort_timestamp=62497|best_effort_timestamp_time=0.694411|duration=3003|duration_time=0.033367|pkt_pos=39870|pkt_size=926|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=22|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=68503|pts_time=0.761144|dts=65499|dts_time=0.727767|duration=3003|duration_time=0.033367|size=918|pos=40796|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=65500|pts_time=0.727778|pkt_dts=65499|pkt_dts_time=0.727767|best_effort_timestamp=65500|best_effort_timestamp_time=0.727778|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=38122|pkt_size=1748|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=21|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=65500|pts_time=0.727778|pkt_dts=65499|pkt_dts_time=0.727767|best_effort_timestamp=65500|best_effort_timestamp_time=0.727778|duration=3003|duration_time=0.033367|pkt_pos=38122|pkt_size=1748|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=21|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=71506|pts_time=0.794511|dts=68502|dts_time=0.761133|duration=3003|duration_time=0.033367|size=3846|pos=41714|flags=K__ -frame|media_type=video|stream_index=0|key_frame=0|pts=68503|pts_time=0.761144|pkt_dts=68502|pkt_dts_time=0.761133|best_effort_timestamp=68503|best_effort_timestamp_time=0.761144|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=40796|pkt_size=918|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=23|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=68503|pts_time=0.761144|pkt_dts=68502|pkt_dts_time=0.761133|best_effort_timestamp=68503|best_effort_timestamp_time=0.761144|duration=3003|duration_time=0.033367|pkt_pos=40796|pkt_size=918|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=23|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=77512|pts_time=0.861244|dts=71505|dts_time=0.794500|duration=3003|duration_time=0.033367|size=1932|pos=45560|flags=___ -frame|media_type=video|stream_index=0|key_frame=1|pts=71506|pts_time=0.794511|pkt_dts=71505|pkt_dts_time=0.794500|best_effort_timestamp=71506|best_effort_timestamp_time=0.794511|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=41714|pkt_size=3846|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=24|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=1|pts=71506|pts_time=0.794511|pkt_dts=71505|pkt_dts_time=0.794500|best_effort_timestamp=71506|best_effort_timestamp_time=0.794511|duration=3003|duration_time=0.033367|pkt_pos=41714|pkt_size=3846|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=24|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=74509|pts_time=0.827878|dts=74508|dts_time=0.827867|duration=3003|duration_time=0.033367|size=1159|pos=47492|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=74509|pts_time=0.827878|pkt_dts=74508|pkt_dts_time=0.827867|best_effort_timestamp=74509|best_effort_timestamp_time=0.827878|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=47492|pkt_size=1159|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=26|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=74509|pts_time=0.827878|pkt_dts=74508|pkt_dts_time=0.827867|best_effort_timestamp=74509|best_effort_timestamp_time=0.827878|duration=3003|duration_time=0.033367|pkt_pos=47492|pkt_size=1159|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=26|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=83518|pts_time=0.927978|dts=77511|dts_time=0.861233|duration=3003|duration_time=0.033367|size=1522|pos=48651|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=77512|pts_time=0.861244|pkt_dts=77511|pkt_dts_time=0.861233|best_effort_timestamp=77512|best_effort_timestamp_time=0.861244|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=45560|pkt_size=1932|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=25|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=77512|pts_time=0.861244|pkt_dts=77511|pkt_dts_time=0.861233|best_effort_timestamp=77512|best_effort_timestamp_time=0.861244|duration=3003|duration_time=0.033367|pkt_pos=45560|pkt_size=1932|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=25|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=80515|pts_time=0.894611|dts=80514|dts_time=0.894600|duration=3003|duration_time=0.033367|size=719|pos=50173|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=80515|pts_time=0.894611|pkt_dts=80514|pkt_dts_time=0.894600|best_effort_timestamp=80515|best_effort_timestamp_time=0.894611|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=50173|pkt_size=719|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=28|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=80515|pts_time=0.894611|pkt_dts=80514|pkt_dts_time=0.894600|best_effort_timestamp=80515|best_effort_timestamp_time=0.894611|duration=3003|duration_time=0.033367|pkt_pos=50173|pkt_size=719|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=28|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=89524|pts_time=0.994711|dts=83517|dts_time=0.927967|duration=3003|duration_time=0.033367|size=1700|pos=50892|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=83518|pts_time=0.927978|pkt_dts=83517|pkt_dts_time=0.927967|best_effort_timestamp=83518|best_effort_timestamp_time=0.927978|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=48651|pkt_size=1522|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=27|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=83518|pts_time=0.927978|pkt_dts=83517|pkt_dts_time=0.927967|best_effort_timestamp=83518|best_effort_timestamp_time=0.927978|duration=3003|duration_time=0.033367|pkt_pos=48651|pkt_size=1522|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=27|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=86521|pts_time=0.961344|dts=86520|dts_time=0.961333|duration=3003|duration_time=0.033367|size=1099|pos=52592|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=86521|pts_time=0.961344|pkt_dts=86520|pkt_dts_time=0.961333|best_effort_timestamp=86521|best_effort_timestamp_time=0.961344|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=52592|pkt_size=1099|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=30|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=86521|pts_time=0.961344|pkt_dts=86520|pkt_dts_time=0.961333|best_effort_timestamp=86521|best_effort_timestamp_time=0.961344|duration=3003|duration_time=0.033367|pkt_pos=52592|pkt_size=1099|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=30|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=95530|pts_time=1.061444|dts=89523|dts_time=0.994700|duration=3003|duration_time=0.033367|size=2558|pos=53691|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=89524|pts_time=0.994711|pkt_dts=89523|pkt_dts_time=0.994700|best_effort_timestamp=89524|best_effort_timestamp_time=0.994711|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=50892|pkt_size=1700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=29|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=89524|pts_time=0.994711|pkt_dts=89523|pkt_dts_time=0.994700|best_effort_timestamp=89524|best_effort_timestamp_time=0.994711|duration=3003|duration_time=0.033367|pkt_pos=50892|pkt_size=1700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=29|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=92527|pts_time=1.028078|dts=92526|dts_time=1.028067|duration=3003|duration_time=0.033367|size=1008|pos=56249|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=92527|pts_time=1.028078|pkt_dts=92526|pkt_dts_time=1.028067|best_effort_timestamp=92527|best_effort_timestamp_time=1.028078|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=56249|pkt_size=1008|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=32|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=92527|pts_time=1.028078|pkt_dts=92526|pkt_dts_time=1.028067|best_effort_timestamp=92527|best_effort_timestamp_time=1.028078|duration=3003|duration_time=0.033367|pkt_pos=56249|pkt_size=1008|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=32|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=101536|pts_time=1.128178|dts=95529|dts_time=1.061433|duration=3003|duration_time=0.033367|size=1236|pos=57257|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=95530|pts_time=1.061444|pkt_dts=95529|pkt_dts_time=1.061433|best_effort_timestamp=95530|best_effort_timestamp_time=1.061444|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=53691|pkt_size=2558|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=31|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=95530|pts_time=1.061444|pkt_dts=95529|pkt_dts_time=1.061433|best_effort_timestamp=95530|best_effort_timestamp_time=1.061444|duration=3003|duration_time=0.033367|pkt_pos=53691|pkt_size=2558|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=31|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=98533|pts_time=1.094811|dts=98532|dts_time=1.094800|duration=3003|duration_time=0.033367|size=607|pos=58493|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=98533|pts_time=1.094811|pkt_dts=98532|pkt_dts_time=1.094800|best_effort_timestamp=98533|best_effort_timestamp_time=1.094811|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=58493|pkt_size=607|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=34|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=98533|pts_time=1.094811|pkt_dts=98532|pkt_dts_time=1.094800|best_effort_timestamp=98533|best_effort_timestamp_time=1.094811|duration=3003|duration_time=0.033367|pkt_pos=58493|pkt_size=607|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=34|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=107542|pts_time=1.194911|dts=101535|dts_time=1.128167|duration=3003|duration_time=0.033367|size=1883|pos=59100|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=101536|pts_time=1.128178|pkt_dts=101535|pkt_dts_time=1.128167|best_effort_timestamp=101536|best_effort_timestamp_time=1.128178|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=57257|pkt_size=1236|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=33|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=101536|pts_time=1.128178|pkt_dts=101535|pkt_dts_time=1.128167|best_effort_timestamp=101536|best_effort_timestamp_time=1.128178|duration=3003|duration_time=0.033367|pkt_pos=57257|pkt_size=1236|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=33|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=104539|pts_time=1.161544|dts=104538|dts_time=1.161533|duration=3003|duration_time=0.033367|size=893|pos=60983|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=104539|pts_time=1.161544|pkt_dts=104538|pkt_dts_time=1.161533|best_effort_timestamp=104539|best_effort_timestamp_time=1.161544|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=60983|pkt_size=893|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=36|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=104539|pts_time=1.161544|pkt_dts=104538|pkt_dts_time=1.161533|best_effort_timestamp=104539|best_effort_timestamp_time=1.161544|duration=3003|duration_time=0.033367|pkt_pos=60983|pkt_size=893|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=36|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=113548|pts_time=1.261644|dts=107541|dts_time=1.194900|duration=3003|duration_time=0.033367|size=1305|pos=61876|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=107542|pts_time=1.194911|pkt_dts=107541|pkt_dts_time=1.194900|best_effort_timestamp=107542|best_effort_timestamp_time=1.194911|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=59100|pkt_size=1883|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=35|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=107542|pts_time=1.194911|pkt_dts=107541|pkt_dts_time=1.194900|best_effort_timestamp=107542|best_effort_timestamp_time=1.194911|duration=3003|duration_time=0.033367|pkt_pos=59100|pkt_size=1883|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=35|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=110545|pts_time=1.228278|dts=110544|dts_time=1.228267|duration=3003|duration_time=0.033367|size=472|pos=63181|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=110545|pts_time=1.228278|pkt_dts=110544|pkt_dts_time=1.228267|best_effort_timestamp=110545|best_effort_timestamp_time=1.228278|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=63181|pkt_size=472|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=38|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=110545|pts_time=1.228278|pkt_dts=110544|pkt_dts_time=1.228267|best_effort_timestamp=110545|best_effort_timestamp_time=1.228278|duration=3003|duration_time=0.033367|pkt_pos=63181|pkt_size=472|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=38|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=119554|pts_time=1.328378|dts=113547|dts_time=1.261633|duration=3003|duration_time=0.033367|size=1411|pos=63653|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=113548|pts_time=1.261644|pkt_dts=113547|pkt_dts_time=1.261633|best_effort_timestamp=113548|best_effort_timestamp_time=1.261644|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=61876|pkt_size=1305|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=37|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=113548|pts_time=1.261644|pkt_dts=113547|pkt_dts_time=1.261633|best_effort_timestamp=113548|best_effort_timestamp_time=1.261644|duration=3003|duration_time=0.033367|pkt_pos=61876|pkt_size=1305|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=37|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=116551|pts_time=1.295011|dts=116550|dts_time=1.295000|duration=3003|duration_time=0.033367|size=616|pos=65064|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=116551|pts_time=1.295011|pkt_dts=116550|pkt_dts_time=1.295000|best_effort_timestamp=116551|best_effort_timestamp_time=1.295011|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=65064|pkt_size=616|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=40|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=116551|pts_time=1.295011|pkt_dts=116550|pkt_dts_time=1.295000|best_effort_timestamp=116551|best_effort_timestamp_time=1.295011|duration=3003|duration_time=0.033367|pkt_pos=65064|pkt_size=616|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=40|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=125560|pts_time=1.395111|dts=119553|dts_time=1.328367|duration=3003|duration_time=0.033367|size=1291|pos=65680|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=119554|pts_time=1.328378|pkt_dts=119553|pkt_dts_time=1.328367|best_effort_timestamp=119554|best_effort_timestamp_time=1.328378|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=63653|pkt_size=1411|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=39|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=119554|pts_time=1.328378|pkt_dts=119553|pkt_dts_time=1.328367|best_effort_timestamp=119554|best_effort_timestamp_time=1.328378|duration=3003|duration_time=0.033367|pkt_pos=63653|pkt_size=1411|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=39|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=122557|pts_time=1.361744|dts=122556|dts_time=1.361733|duration=3003|duration_time=0.033367|size=470|pos=66971|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=122557|pts_time=1.361744|pkt_dts=122556|pkt_dts_time=1.361733|best_effort_timestamp=122557|best_effort_timestamp_time=1.361744|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=66971|pkt_size=470|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=42|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=122557|pts_time=1.361744|pkt_dts=122556|pkt_dts_time=1.361733|best_effort_timestamp=122557|best_effort_timestamp_time=1.361744|duration=3003|duration_time=0.033367|pkt_pos=66971|pkt_size=470|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=42|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=131566|pts_time=1.461844|dts=125559|dts_time=1.395100|duration=3003|duration_time=0.033367|size=1977|pos=67441|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=125560|pts_time=1.395111|pkt_dts=125559|pkt_dts_time=1.395100|best_effort_timestamp=125560|best_effort_timestamp_time=1.395111|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=65680|pkt_size=1291|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=41|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=125560|pts_time=1.395111|pkt_dts=125559|pkt_dts_time=1.395100|best_effort_timestamp=125560|best_effort_timestamp_time=1.395111|duration=3003|duration_time=0.033367|pkt_pos=65680|pkt_size=1291|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=41|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=128563|pts_time=1.428478|dts=128562|dts_time=1.428467|duration=3003|duration_time=0.033367|size=436|pos=69418|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=128563|pts_time=1.428478|pkt_dts=128562|pkt_dts_time=1.428467|best_effort_timestamp=128563|best_effort_timestamp_time=1.428478|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=69418|pkt_size=436|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=44|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=128563|pts_time=1.428478|pkt_dts=128562|pkt_dts_time=1.428467|best_effort_timestamp=128563|best_effort_timestamp_time=1.428478|duration=3003|duration_time=0.033367|pkt_pos=69418|pkt_size=436|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=44|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=137572|pts_time=1.528578|dts=131565|dts_time=1.461833|duration=3003|duration_time=0.033367|size=2566|pos=69854|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=131566|pts_time=1.461844|pkt_dts=131565|pkt_dts_time=1.461833|best_effort_timestamp=131566|best_effort_timestamp_time=1.461844|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=67441|pkt_size=1977|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=43|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=131566|pts_time=1.461844|pkt_dts=131565|pkt_dts_time=1.461833|best_effort_timestamp=131566|best_effort_timestamp_time=1.461844|duration=3003|duration_time=0.033367|pkt_pos=67441|pkt_size=1977|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=43|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=134569|pts_time=1.495211|dts=134568|dts_time=1.495200|duration=3003|duration_time=0.033367|size=886|pos=72420|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=134569|pts_time=1.495211|pkt_dts=134568|pkt_dts_time=1.495200|best_effort_timestamp=134569|best_effort_timestamp_time=1.495211|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=72420|pkt_size=886|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=46|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=134569|pts_time=1.495211|pkt_dts=134568|pkt_dts_time=1.495200|best_effort_timestamp=134569|best_effort_timestamp_time=1.495211|duration=3003|duration_time=0.033367|pkt_pos=72420|pkt_size=886|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=46|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=140575|pts_time=1.561944|dts=137571|dts_time=1.528567|duration=3003|duration_time=0.033367|size=1330|pos=73306|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=137572|pts_time=1.528578|pkt_dts=137571|pkt_dts_time=1.528567|best_effort_timestamp=137572|best_effort_timestamp_time=1.528578|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=69854|pkt_size=2566|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=45|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=137572|pts_time=1.528578|pkt_dts=137571|pkt_dts_time=1.528567|best_effort_timestamp=137572|best_effort_timestamp_time=1.528578|duration=3003|duration_time=0.033367|pkt_pos=69854|pkt_size=2566|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=45|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=143578|pts_time=1.595311|dts=140574|dts_time=1.561933|duration=3003|duration_time=0.033367|size=2227|pos=74636|flags=K__ -frame|media_type=video|stream_index=0|key_frame=0|pts=140575|pts_time=1.561944|pkt_dts=140574|pkt_dts_time=1.561933|best_effort_timestamp=140575|best_effort_timestamp_time=1.561944|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=73306|pkt_size=1330|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=47|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=140575|pts_time=1.561944|pkt_dts=140574|pkt_dts_time=1.561933|best_effort_timestamp=140575|best_effort_timestamp_time=1.561944|duration=3003|duration_time=0.033367|pkt_pos=73306|pkt_size=1330|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=47|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=149584|pts_time=1.662044|dts=143577|dts_time=1.595300|duration=3003|duration_time=0.033367|size=2210|pos=76863|flags=___ -frame|media_type=video|stream_index=0|key_frame=1|pts=143578|pts_time=1.595311|pkt_dts=143577|pkt_dts_time=1.595300|best_effort_timestamp=143578|best_effort_timestamp_time=1.595311|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=74636|pkt_size=2227|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=48|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=1|pts=143578|pts_time=1.595311|pkt_dts=143577|pkt_dts_time=1.595300|best_effort_timestamp=143578|best_effort_timestamp_time=1.595311|duration=3003|duration_time=0.033367|pkt_pos=74636|pkt_size=2227|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=48|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=146581|pts_time=1.628678|dts=146580|dts_time=1.628667|duration=3003|duration_time=0.033367|size=1498|pos=79073|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=146581|pts_time=1.628678|pkt_dts=146580|pkt_dts_time=1.628667|best_effort_timestamp=146581|best_effort_timestamp_time=1.628678|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=79073|pkt_size=1498|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=50|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=146581|pts_time=1.628678|pkt_dts=146580|pkt_dts_time=1.628667|best_effort_timestamp=146581|best_effort_timestamp_time=1.628678|duration=3003|duration_time=0.033367|pkt_pos=79073|pkt_size=1498|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=50|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=155590|pts_time=1.728778|dts=149583|dts_time=1.662033|duration=3003|duration_time=0.033367|size=1721|pos=80571|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=149584|pts_time=1.662044|pkt_dts=149583|pkt_dts_time=1.662033|best_effort_timestamp=149584|best_effort_timestamp_time=1.662044|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=76863|pkt_size=2210|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=49|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=149584|pts_time=1.662044|pkt_dts=149583|pkt_dts_time=1.662033|best_effort_timestamp=149584|best_effort_timestamp_time=1.662044|duration=3003|duration_time=0.033367|pkt_pos=76863|pkt_size=2210|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=49|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=152587|pts_time=1.695411|dts=152586|dts_time=1.695400|duration=3003|duration_time=0.033367|size=1238|pos=82292|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=152587|pts_time=1.695411|pkt_dts=152586|pkt_dts_time=1.695400|best_effort_timestamp=152587|best_effort_timestamp_time=1.695411|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=82292|pkt_size=1238|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=52|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=152587|pts_time=1.695411|pkt_dts=152586|pkt_dts_time=1.695400|best_effort_timestamp=152587|best_effort_timestamp_time=1.695411|duration=3003|duration_time=0.033367|pkt_pos=82292|pkt_size=1238|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=52|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=161596|pts_time=1.795511|dts=155589|dts_time=1.728767|duration=3003|duration_time=0.033367|size=1753|pos=83530|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=155590|pts_time=1.728778|pkt_dts=155589|pkt_dts_time=1.728767|best_effort_timestamp=155590|best_effort_timestamp_time=1.728778|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=80571|pkt_size=1721|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=51|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=155590|pts_time=1.728778|pkt_dts=155589|pkt_dts_time=1.728767|best_effort_timestamp=155590|best_effort_timestamp_time=1.728778|duration=3003|duration_time=0.033367|pkt_pos=80571|pkt_size=1721|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=51|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=158593|pts_time=1.762144|dts=158592|dts_time=1.762133|duration=3003|duration_time=0.033367|size=1014|pos=85283|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=158593|pts_time=1.762144|pkt_dts=158592|pkt_dts_time=1.762133|best_effort_timestamp=158593|best_effort_timestamp_time=1.762144|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=85283|pkt_size=1014|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=54|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=158593|pts_time=1.762144|pkt_dts=158592|pkt_dts_time=1.762133|best_effort_timestamp=158593|best_effort_timestamp_time=1.762144|duration=3003|duration_time=0.033367|pkt_pos=85283|pkt_size=1014|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=54|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=167602|pts_time=1.862244|dts=161595|dts_time=1.795500|duration=3003|duration_time=0.033367|size=2408|pos=86297|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=161596|pts_time=1.795511|pkt_dts=161595|pkt_dts_time=1.795500|best_effort_timestamp=161596|best_effort_timestamp_time=1.795511|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=83530|pkt_size=1753|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=53|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=161596|pts_time=1.795511|pkt_dts=161595|pkt_dts_time=1.795500|best_effort_timestamp=161596|best_effort_timestamp_time=1.795511|duration=3003|duration_time=0.033367|pkt_pos=83530|pkt_size=1753|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=53|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=164599|pts_time=1.828878|dts=164598|dts_time=1.828867|duration=3003|duration_time=0.033367|size=1727|pos=88705|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=164599|pts_time=1.828878|pkt_dts=164598|pkt_dts_time=1.828867|best_effort_timestamp=164599|best_effort_timestamp_time=1.828878|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=88705|pkt_size=1727|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=56|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=164599|pts_time=1.828878|pkt_dts=164598|pkt_dts_time=1.828867|best_effort_timestamp=164599|best_effort_timestamp_time=1.828878|duration=3003|duration_time=0.033367|pkt_pos=88705|pkt_size=1727|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=56|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=173608|pts_time=1.928978|dts=167601|dts_time=1.862233|duration=3003|duration_time=0.033367|size=1504|pos=90432|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=167602|pts_time=1.862244|pkt_dts=167601|pkt_dts_time=1.862233|best_effort_timestamp=167602|best_effort_timestamp_time=1.862244|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=86297|pkt_size=2408|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=55|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=167602|pts_time=1.862244|pkt_dts=167601|pkt_dts_time=1.862233|best_effort_timestamp=167602|best_effort_timestamp_time=1.862244|duration=3003|duration_time=0.033367|pkt_pos=86297|pkt_size=2408|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=55|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=170605|pts_time=1.895611|dts=170604|dts_time=1.895600|duration=3003|duration_time=0.033367|size=957|pos=91936|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=170605|pts_time=1.895611|pkt_dts=170604|pkt_dts_time=1.895600|best_effort_timestamp=170605|best_effort_timestamp_time=1.895611|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=91936|pkt_size=957|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=58|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=170605|pts_time=1.895611|pkt_dts=170604|pkt_dts_time=1.895600|best_effort_timestamp=170605|best_effort_timestamp_time=1.895611|duration=3003|duration_time=0.033367|pkt_pos=91936|pkt_size=957|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=58|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=179614|pts_time=1.995711|dts=173607|dts_time=1.928967|duration=3003|duration_time=0.033367|size=1890|pos=92893|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=173608|pts_time=1.928978|pkt_dts=173607|pkt_dts_time=1.928967|best_effort_timestamp=173608|best_effort_timestamp_time=1.928978|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=90432|pkt_size=1504|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=57|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=173608|pts_time=1.928978|pkt_dts=173607|pkt_dts_time=1.928967|best_effort_timestamp=173608|best_effort_timestamp_time=1.928978|duration=3003|duration_time=0.033367|pkt_pos=90432|pkt_size=1504|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=57|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=176611|pts_time=1.962344|dts=176610|dts_time=1.962333|duration=3003|duration_time=0.033367|size=1239|pos=94783|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=176611|pts_time=1.962344|pkt_dts=176610|pkt_dts_time=1.962333|best_effort_timestamp=176611|best_effort_timestamp_time=1.962344|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=94783|pkt_size=1239|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=60|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=176611|pts_time=1.962344|pkt_dts=176610|pkt_dts_time=1.962333|best_effort_timestamp=176611|best_effort_timestamp_time=1.962344|duration=3003|duration_time=0.033367|pkt_pos=94783|pkt_size=1239|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=60|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=185620|pts_time=2.062444|dts=179613|dts_time=1.995700|duration=3003|duration_time=0.033367|size=1856|pos=96022|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=179614|pts_time=1.995711|pkt_dts=179613|pkt_dts_time=1.995700|best_effort_timestamp=179614|best_effort_timestamp_time=1.995711|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=92893|pkt_size=1890|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=59|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=179614|pts_time=1.995711|pkt_dts=179613|pkt_dts_time=1.995700|best_effort_timestamp=179614|best_effort_timestamp_time=1.995711|duration=3003|duration_time=0.033367|pkt_pos=92893|pkt_size=1890|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=59|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=182617|pts_time=2.029078|dts=182616|dts_time=2.029067|duration=3003|duration_time=0.033367|size=1302|pos=97878|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=182617|pts_time=2.029078|pkt_dts=182616|pkt_dts_time=2.029067|best_effort_timestamp=182617|best_effort_timestamp_time=2.029078|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=97878|pkt_size=1302|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=62|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=182617|pts_time=2.029078|pkt_dts=182616|pkt_dts_time=2.029067|best_effort_timestamp=182617|best_effort_timestamp_time=2.029078|duration=3003|duration_time=0.033367|pkt_pos=97878|pkt_size=1302|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=62|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=191626|pts_time=2.129178|dts=185619|dts_time=2.062433|duration=3003|duration_time=0.033367|size=1666|pos=99180|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=185620|pts_time=2.062444|pkt_dts=185619|pkt_dts_time=2.062433|best_effort_timestamp=185620|best_effort_timestamp_time=2.062444|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=96022|pkt_size=1856|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=61|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=185620|pts_time=2.062444|pkt_dts=185619|pkt_dts_time=2.062433|best_effort_timestamp=185620|best_effort_timestamp_time=2.062444|duration=3003|duration_time=0.033367|pkt_pos=96022|pkt_size=1856|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=61|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=188623|pts_time=2.095811|dts=188622|dts_time=2.095800|duration=3003|duration_time=0.033367|size=974|pos=100846|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=188623|pts_time=2.095811|pkt_dts=188622|pkt_dts_time=2.095800|best_effort_timestamp=188623|best_effort_timestamp_time=2.095811|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=100846|pkt_size=974|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=64|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=188623|pts_time=2.095811|pkt_dts=188622|pkt_dts_time=2.095800|best_effort_timestamp=188623|best_effort_timestamp_time=2.095811|duration=3003|duration_time=0.033367|pkt_pos=100846|pkt_size=974|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=64|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=197632|pts_time=2.195911|dts=191625|dts_time=2.129167|duration=3003|duration_time=0.033367|size=580|pos=101820|flags=__C -frame|media_type=video|stream_index=0|key_frame=0|pts=191626|pts_time=2.129178|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=191626|best_effort_timestamp_time=2.129178|pkt_duration=3003|pkt_duration_time=0.033367|duration=3003|duration_time=0.033367|pkt_pos=99180|pkt_size=1666|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=63|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=191626|pts_time=2.129178|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=191626|best_effort_timestamp_time=2.129178|duration=3003|duration_time=0.033367|pkt_pos=99180|pkt_size=1666|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=63|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message stream|index=0|codec_name=h264|profile=77|codec_type=video|codec_tag_string=avc1|codec_tag=0x31637661|width=160|height=240|coded_width=160|coded_height=240|closed_captions=0|film_grain=0|has_b_frames=1|sample_aspect_ratio=2:1|display_aspect_ratio=4:3|pix_fmt=yuv420p|level=12|color_range=tv|color_space=smpte170m|color_transfer=bt709|color_primaries=smpte170m|chroma_location=topleft|field_order=progressive|refs=2|is_avc=true|nal_length_size=4|id=0x1|r_frame_rate=30000/1001|avg_frame_rate=6372000/212521|time_base=1/90000|start_pts=0|start_time=0.000000|duration_ts=2125200|duration=23.613333|bit_rate=333874|max_bit_rate=N/A|bits_per_raw_sample=8|nb_frames=708|nb_read_frames=65|nb_read_packets=66|extradata_size=34|disposition:default=1|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:creation_time=2008-05-12T20:59:27.000000Z|tag:language=eng|tag:handler_name=Apple Video Media Handler|tag:vendor_id=appl|tag:encoder=H.264|side_datum/display_matrix:side_data_type=Display Matrix|side_datum/display_matrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/display_matrix:rotation=0 diff --git a/tests/ref/fate/png-icc b/tests/ref/fate/png-icc index 8927cb331a..417cbcb91d 100644 --- a/tests/ref/fate/png-icc +++ b/tests/ref/fate/png-icc @@ -16,8 +16,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1 -pkt_duration_time=0.040000 duration=1 duration_time=0.040000 pkt_pos=0 diff --git a/tests/ref/fate/png-side-data b/tests/ref/fate/png-side-data index 629971bd23..0d1f88ccb2 100644 --- a/tests/ref/fate/png-side-data +++ b/tests/ref/fate/png-side-data @@ -8,8 +8,6 @@ pkt_dts=0 pkt_dts_time=0.000000 best_effort_timestamp=0 best_effort_timestamp_time=0.000000 -pkt_duration=1 -pkt_duration_time=0.040000 duration=1 duration_time=0.040000 pkt_pos=0 From patchwork Thu Jan 25 13:43:42 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45828 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82109pzf; Thu, 25 Jan 2024 05:47:37 -0800 (PST) X-Google-Smtp-Source: AGHT+IESWI5NftFLMMeMIbh0d0HQDbLh3wrvI2Ymiu80Cc3v/6lovBVfUrLJpDqlFKd2OgYJRT0Y X-Received: by 2002:a17:906:1799:b0:a2e:70b4:28b0 with SMTP id t25-20020a170906179900b00a2e70b428b0mr585030eje.3.1706190457441; Thu, 25 Jan 2024 05:47:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190457; cv=none; d=google.com; s=arc-20160816; b=NzHSNvHGoNOnX/UGKynnhT/0riTv5Z4BRGa490RTM+NvNIF7ty7XijDyDflOgOyJNS tRkqr0H/egywoVbJhEEvCM4tIcnCfgH3D4Bb/hlGRYFsQRr8tLs2n5RP+cWNFnhi7sEX vdFVOWTemCzT1Q6wt/R8Tjdy1e1wo7M40YlXdYm5o9oezat873HAallOYdprAYZac/7C sMSCh1mIb2yJD3fQR5ZRwFIupLGS8lmn5++9bIijcxLcU2+THz8IhOHUZANoslwgBPQP wstQrFGFKQtr4bZbUD9ITvrQ9eg/1FAweevtvcYPcOQHMGpxfq2YPIwQVZk4v6g8poTk 2sYQ== 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=3n08KB0bjlmUhSTmcx6YjvVzWuAXRbP6JDDD3eog+jc=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=lrFflfk6sg5wdCeQ8VrnDiS9uVUV71999dQRP+N6hkjhyFfbTyBySxI8RbvaFsUNR+ EiIlZ7GJBJDy2YcZb9Sln3lEaoCe9i30BNG0NRSvwtBzqAJK3pdSClgt7vfRKkgd6TbS l7R198clffVgndHDYENG84wPqHV++lUditnS5n80LhEbI++EYS0wPglmYwLneALA3Z6h rN7zmADJyyRRoHdnx0mioijyGfq8rTL9/nn7dhmFEbkW/+A3NPMF6jOyD4sIanXpgilc 4VocArpUVpI3p3M+6shhdN1xw52+lGL1jXPdW8cymOvYcz42kpCIcn+ipTVMb8wvr7Gh rx5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=fD4KjPtm; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id lt8-20020a170906fa8800b00a30d33e5f74si915867ejb.425.2024.01.25.05.47.36; Thu, 25 Jan 2024 05:47:37 -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=@gmail.com header.s=20230601 header.b=fD4KjPtm; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 209A968D1A8; Thu, 25 Jan 2024 15:45:06 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F2F1768D179 for ; Thu, 25 Jan 2024 15:45:00 +0200 (EET) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-1d50d0c98c3so6203965ad.1 for ; Thu, 25 Jan 2024 05:45:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190298; x=1706795098; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=ghnL1dPekDTL+6yjvCTmjxtfYM+aQYmn3JdCFFR+O8I=; b=fD4KjPtmQj1STRLkSvlP0IMNjbBo3dFD9Q2y+SfjWlKm7vXHvFgiu3wg8XKx1WC0Bt K+dVIAEv65ZNeCNauBpvNuRyuqu9GYkWp5pjhbopODJUH4XJ2UJi9SqO1baY/9yxmLQm Ctd1+Ekc3Fu6Zx9mUtNNqIeyYJfm7TcpGqAWHWxY/RuNgjUasjoSRuzk4wN0aTbK+Lnf DYP0fTPIBqKcEDwzeNFheZLQZ4ublG5geiRttGdpi7vjciDe36w8XwCI/vej+2Nr1Igy rSSeBVaa5MJ6Wfz27wve5xdFd6eGBLabsrExgo8ZRYywe4GCQ18SiOCy+1k5pQqXCZ4o 0J2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190298; x=1706795098; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ghnL1dPekDTL+6yjvCTmjxtfYM+aQYmn3JdCFFR+O8I=; b=gSnxvkkkkulFsrJmk4jEymm4FTQtkSkhGHrUIVw7WpDoLEXocHkXUhoqjw2bTD67Kj FPmSbyuSfRDv4zKIQcNL0h0sU9U1A7sqAVxUTi/3BQ+Ky6594nEyw6Oedvlbf/FpcW1J f6h3djxnNCsmQ9WTCfI33uitSSMG8DzzSHYqH+ugacovh+Qr2JE25gv1P5gXKjoje103 XQ8ZYSzFuAqAp19hEq2HCB0umsYvI9+d2BEwzMr7Py+gaARhOI21utiFl0S3pmq3j9Is Lfoh+0ZkEC4eDo0zpTPMZOF9kvpUvixhoOHu5uodWCHMzllpZrP1vcIYxKpx5elSb4td DDJA== X-Gm-Message-State: AOJu0Yyl5/eQRBOvHGiMK0N5EPvG3+0Qc0MteJNbx1ZkgNjT5frjsDIf fExeTLlCYzx2IYtAqGNE3EVGFm7Yq7KqjM011eANFqCHogO0JrKtbUwecg9o X-Received: by 2002:a17:903:234c:b0:1d7:8570:e53 with SMTP id c12-20020a170903234c00b001d785700e53mr1890179plh.38.1706190297919; Thu, 25 Jan 2024 05:44:57 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.56 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:57 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:42 -0300 Message-ID: <20240125134425.374-20-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 19/24] avutil: remove deprecated FF_API_REORDERED_OPAQUE 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: ht/QeKWVuJdc Signed-off-by: James Almer --- libavcodec/avcodec.h | 16 ---------------- libavcodec/decode.c | 5 ----- libavcodec/encode.c | 6 ------ libavcodec/libdav1d.c | 22 +--------------------- libavcodec/librav1e.c | 13 ------------- libavcodec/libvpxenc.c | 14 -------------- libavcodec/libwebpenc_animencoder.c | 13 ------------- libavcodec/libx264.c | 18 ------------------ libavcodec/libx265.c | 20 -------------------- libavcodec/nvenc.c | 12 ------------ libavcodec/nvenc.h | 4 ---- libavcodec/options.c | 5 ----- libavcodec/pthread_frame.c | 5 ----- libavutil/frame.c | 5 ----- libavutil/frame.h | 15 --------------- libavutil/version.h | 1 - 16 files changed, 1 insertion(+), 173 deletions(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index c99ec59c29..a9b08bd4ce 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1349,22 +1349,6 @@ typedef struct AVCodecContext { */ int err_recognition; -#if FF_API_REORDERED_OPAQUE - /** - * opaque 64-bit number (generally a PTS) that will be reordered and - * output in AVFrame.reordered_opaque - * - encoding: Set by libavcodec to the reordered_opaque of the input - * frame corresponding to the last returned packet. Only - * supported by encoders with the - * AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE capability. - * - decoding: Set by user. - * - * @deprecated Use AV_CODEC_FLAG_COPY_OPAQUE instead - */ - attribute_deprecated - int64_t reordered_opaque; -#endif - /** * Hardware accelerator in use * - encoding: unused. diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 4dc308ef64..f262a0379d 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -1473,11 +1473,6 @@ FF_DISABLE_DEPRECATION_WARNINGS FF_ENABLE_DEPRECATION_WARNINGS #endif } -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - frame->reordered_opaque = avctx->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif ret = fill_frame_props(avctx, frame); if (ret < 0) diff --git a/libavcodec/encode.c b/libavcodec/encode.c index 6b0a16fc0b..e1a09eae86 100644 --- a/libavcodec/encode.c +++ b/libavcodec/encode.c @@ -234,12 +234,6 @@ FF_ENABLE_DEPRECATION_WARNINGS int ff_encode_reordered_opaque(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *frame) { -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - avctx->reordered_opaque = frame->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { int ret = av_buffer_replace(&pkt->opaque_ref, frame->opaque_ref); if (ret < 0) diff --git a/libavcodec/libdav1d.c b/libavcodec/libdav1d.c index 11cdbca274..98ef4366ef 100644 --- a/libavcodec/libdav1d.c +++ b/libavcodec/libdav1d.c @@ -298,9 +298,6 @@ static void libdav1d_flush(AVCodecContext *c) typedef struct OpaqueData { void *pkt_orig_opaque; -#if FF_API_REORDERED_OPAQUE - int64_t reordered_opaque; -#endif } OpaqueData; static void libdav1d_data_free(const uint8_t *data, void *opaque) { @@ -346,12 +343,7 @@ static int libdav1d_receive_frame_internal(AVCodecContext *c, Dav1dPicture *p) pkt->buf = NULL; -FF_DISABLE_DEPRECATION_WARNINGS - if ( -#if FF_API_REORDERED_OPAQUE - c->reordered_opaque != AV_NOPTS_VALUE || -#endif - (pkt->opaque && (c->flags & AV_CODEC_FLAG_COPY_OPAQUE))) { + if (pkt->opaque && (c->flags & AV_CODEC_FLAG_COPY_OPAQUE)) { od = av_mallocz(sizeof(*od)); if (!od) { av_packet_free(&pkt); @@ -359,10 +351,6 @@ FF_DISABLE_DEPRECATION_WARNINGS return AVERROR(ENOMEM); } od->pkt_orig_opaque = pkt->opaque; -#if FF_API_REORDERED_OPAQUE - od->reordered_opaque = c->reordered_opaque; -#endif -FF_ENABLE_DEPRECATION_WARNINGS } pkt->opaque = od; @@ -464,14 +452,6 @@ static int libdav1d_receive_frame(AVCodecContext *c, AVFrame *frame) pkt = (AVPacket *)p->m.user_data.data; od = pkt->opaque; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - if (od && od->reordered_opaque != AV_NOPTS_VALUE) - frame->reordered_opaque = od->reordered_opaque; - else - frame->reordered_opaque = AV_NOPTS_VALUE; -FF_ENABLE_DEPRECATION_WARNINGS -#endif // restore the original user opaque value for // ff_decode_frame_props_from_pkt() diff --git a/libavcodec/librav1e.c b/libavcodec/librav1e.c index 56539435a7..dbd728a408 100644 --- a/libavcodec/librav1e.c +++ b/libavcodec/librav1e.c @@ -57,9 +57,6 @@ typedef struct librav1eContext { typedef struct FrameData { int64_t pts; int64_t duration; -#if FF_API_REORDERED_OPAQUE - int64_t reordered_opaque; -#endif void *frame_opaque; AVBufferRef *frame_opaque_ref; @@ -472,11 +469,6 @@ static int librav1e_receive_packet(AVCodecContext *avctx, AVPacket *pkt) } fd->pts = frame->pts; fd->duration = frame->duration; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - fd->reordered_opaque = frame->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { fd->frame_opaque = frame->opaque; @@ -583,11 +575,6 @@ retry: fd = rpkt->opaque; pkt->pts = pkt->dts = fd->pts; pkt->duration = fd->duration; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - avctx->reordered_opaque = fd->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { pkt->opaque = fd->frame_opaque; diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c index 80988a2608..0c48f9c14f 100644 --- a/libavcodec/libvpxenc.c +++ b/libavcodec/libvpxenc.c @@ -68,9 +68,6 @@ typedef struct FrameData { int64_t pts; int64_t duration; -#if FF_API_REORDERED_OPAQUE - int64_t reordered_opaque; -#endif void *frame_opaque; AVBufferRef *frame_opaque_ref; @@ -379,11 +376,6 @@ static int frame_data_submit(AVCodecContext *avctx, AVFifo *fifo, if (ret < 0) goto fail; } -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - fd.reordered_opaque = frame->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif ret = av_fifo_write(fifo, &fd, 1); if (ret < 0) @@ -410,12 +402,6 @@ static int frame_data_apply(AVCodecContext *avctx, AVFifo *fifo, AVPacket *pkt) goto skip; } -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - avctx->reordered_opaque = fd.reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - pkt->duration = fd.duration; if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { pkt->opaque = fd.frame_opaque; diff --git a/libavcodec/libwebpenc_animencoder.c b/libavcodec/libwebpenc_animencoder.c index 8756231f23..02f0b6f64d 100644 --- a/libavcodec/libwebpenc_animencoder.c +++ b/libavcodec/libwebpenc_animencoder.c @@ -39,9 +39,6 @@ typedef struct LibWebPAnimContext { int64_t first_frame_pts; // pts of the first encoded frame. int64_t end_pts; // pts + duration of the last frame -#if FF_API_REORDERED_OPAQUE - int64_t reordered_opaque; -#endif void *first_frame_opaque; AVBufferRef *first_frame_opaque_ref; @@ -92,11 +89,6 @@ static int libwebp_anim_encode_frame(AVCodecContext *avctx, AVPacket *pkt, if (pkt->pts != AV_NOPTS_VALUE && s->end_pts > pkt->pts) pkt->duration = s->end_pts - pkt->pts; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - avctx->reordered_opaque = s->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { pkt->opaque = s->first_frame_opaque; pkt->opaque_ref = s->first_frame_opaque_ref; @@ -134,11 +126,6 @@ FF_ENABLE_DEPRECATION_WARNINGS if (!avctx->frame_num) { s->first_frame_pts = frame->pts; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - s->reordered_opaque = frame->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { s->first_frame_opaque = frame->opaque; diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c index 182e20f622..2a54537872 100644 --- a/libavcodec/libx264.c +++ b/libavcodec/libx264.c @@ -54,9 +54,6 @@ #define MB_CEIL(x) MB_FLOOR((x) + (MB_SIZE - 1)) typedef struct X264Opaque { -#if FF_API_REORDERED_OPAQUE - int64_t reordered_opaque; -#endif int64_t wallclock; int64_t duration; @@ -512,11 +509,6 @@ static int setup_frame(AVCodecContext *ctx, const AVFrame *frame, goto fail; } -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - opaque->reordered_opaque = frame->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif opaque->duration = frame->duration; opaque->wallclock = wallclock; if (ctx->export_side_data & AV_CODEC_EXPORT_DATA_PRFT) @@ -681,11 +673,6 @@ static int X264_frame(AVCodecContext *ctx, AVPacket *pkt, const AVFrame *frame, out_opaque = pic_out.opaque; if (out_opaque >= x4->reordered_opaque && out_opaque < &x4->reordered_opaque[x4->nb_reordered_opaque]) { -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - ctx->reordered_opaque = out_opaque->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif wallclock = out_opaque->wallclock; pkt->duration = out_opaque->duration; @@ -700,11 +687,6 @@ FF_ENABLE_DEPRECATION_WARNINGS // Unexpected opaque pointer on picture output av_log(ctx, AV_LOG_ERROR, "Unexpected opaque pointer; " "this is a bug, please report it.\n"); -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - ctx->reordered_opaque = 0; -FF_ENABLE_DEPRECATION_WARNINGS -#endif } switch (pic_out.i_type) { diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c index 447e6da25f..92183b9ca2 100644 --- a/libavcodec/libx265.c +++ b/libavcodec/libx265.c @@ -42,9 +42,6 @@ #include "sei.h" typedef struct ReorderedData { -#if FF_API_REORDERED_OPAQUE - int64_t reordered_opaque; -#endif int64_t duration; void *frame_opaque; @@ -626,11 +623,6 @@ static int libx265_encode_frame(AVCodecContext *avctx, AVPacket *pkt, rd = &ctx->rd[rd_idx]; rd->duration = pic->duration; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - rd->reordered_opaque = pic->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { rd->frame_opaque = pic->opaque; ret = av_buffer_replace(&rd->frame_opaque_ref, pic->opaque_ref); @@ -768,11 +760,6 @@ FF_ENABLE_DEPRECATION_WARNINGS int idx = (int)(intptr_t)x265pic_out.userData - 1; ReorderedData *rd = &ctx->rd[idx]; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - avctx->reordered_opaque = rd->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif pkt->duration = rd->duration; if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { @@ -783,13 +770,6 @@ FF_ENABLE_DEPRECATION_WARNINGS rd_release(ctx, idx); } -#if FF_API_REORDERED_OPAQUE - else { -FF_DISABLE_DEPRECATION_WARNINGS - avctx->reordered_opaque = 0; -FF_ENABLE_DEPRECATION_WARNINGS - } -#endif *got_packet = 1; return 0; diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c index 626f10d20a..fd73af2a32 100644 --- a/libavcodec/nvenc.c +++ b/libavcodec/nvenc.c @@ -2282,12 +2282,6 @@ static int nvenc_store_frame_data(AVCodecContext *avctx, NV_ENC_PIC_PARAMS *pic_ frame_data->duration = frame->duration; frame_data->frame_opaque = frame->opaque; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - frame_data->reordered_opaque = frame->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - ctx->frame_data_array_pos = (ctx->frame_data_array_pos + 1) % ctx->frame_data_array_nb; pic_params->inputDuration = idx; @@ -2304,12 +2298,6 @@ static int nvenc_retrieve_frame_data(AVCodecContext *avctx, NV_ENC_LOCK_BITSTREA pkt->duration = frame_data->duration; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - avctx->reordered_opaque = frame_data->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) { pkt->opaque = frame_data->frame_opaque; pkt->opaque_ref = frame_data->frame_opaque_ref; diff --git a/libavcodec/nvenc.h b/libavcodec/nvenc.h index e5b0eb8305..48cdfc58aa 100644 --- a/libavcodec/nvenc.h +++ b/libavcodec/nvenc.h @@ -100,10 +100,6 @@ typedef struct NvencFrameData { int64_t duration; -#if FF_API_REORDERED_OPAQUE - int64_t reordered_opaque; -#endif - void *frame_opaque; AVBufferRef *frame_opaque_ref; } NvencFrameData; diff --git a/libavcodec/options.c b/libavcodec/options.c index a9b35ee1c3..df88e14c5a 100644 --- a/libavcodec/options.c +++ b/libavcodec/options.c @@ -124,11 +124,6 @@ static int init_context_defaults(AVCodecContext *s, const AVCodec *codec) s->sw_pix_fmt = AV_PIX_FMT_NONE; s->sample_fmt = AV_SAMPLE_FMT_NONE; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - s->reordered_opaque = AV_NOPTS_VALUE; -FF_ENABLE_DEPRECATION_WARNINGS -#endif if(codec && codec2->priv_data_size){ s->priv_data = av_mallocz(codec2->priv_data_size); if (!s->priv_data) diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c index 56a3618f0d..3ae6118d2e 100644 --- a/libavcodec/pthread_frame.c +++ b/libavcodec/pthread_frame.c @@ -412,11 +412,6 @@ static int update_context_from_user(AVCodecContext *dst, const AVCodecContext *s dst->skip_frame = src->skip_frame; dst->frame_num = src->frame_num; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - dst->reordered_opaque = src->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif av_packet_unref(dst->internal->last_pkt_props); err = av_packet_copy_props(dst->internal->last_pkt_props, src->internal->last_pkt_props); diff --git a/libavutil/frame.c b/libavutil/frame.c index dc80d71adf..93ac3a753d 100644 --- a/libavutil/frame.c +++ b/libavutil/frame.c @@ -266,11 +266,6 @@ FF_DISABLE_DEPRECATION_WARNINGS FF_ENABLE_DEPRECATION_WARNINGS #endif dst->time_base = src->time_base; -#if FF_API_REORDERED_OPAQUE -FF_DISABLE_DEPRECATION_WARNINGS - dst->reordered_opaque = src->reordered_opaque; -FF_ENABLE_DEPRECATION_WARNINGS -#endif dst->quality = src->quality; dst->best_effort_timestamp = src->best_effort_timestamp; #if FF_API_FRAME_PICTURE_NUMBER diff --git a/libavutil/frame.h b/libavutil/frame.h index 84a431f14c..3186d3a872 100644 --- a/libavutil/frame.h +++ b/libavutil/frame.h @@ -546,21 +546,6 @@ typedef struct AVFrame { int palette_has_changed; #endif -#if FF_API_REORDERED_OPAQUE - /** - * reordered opaque 64 bits (generally an integer or a double precision float - * PTS but can be anything). - * The user sets AVCodecContext.reordered_opaque to represent the input at - * that time, - * the decoder reorders values as needed and sets AVFrame.reordered_opaque - * to exactly one of the values provided by the user through AVCodecContext.reordered_opaque - * - * @deprecated Use AV_CODEC_FLAG_COPY_OPAQUE instead - */ - attribute_deprecated - int64_t reordered_opaque; -#endif - /** * Sample rate of the audio data. */ diff --git a/libavutil/version.h b/libavutil/version.h index 8a20312016..e52c1282fc 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_REORDERED_OPAQUE (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_FRAME_PICTURE_NUMBER (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_HDR_VIVID_THREE_SPLINE (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_FRAME_PKT (LIBAVUTIL_VERSION_MAJOR < 59) From patchwork Thu Jan 25 13:43:43 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45830 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82412pzf; Thu, 25 Jan 2024 05:48:11 -0800 (PST) X-Google-Smtp-Source: AGHT+IGnjMVSWb1/m0zSDY8lAsxE2BT6PinivRZBsK3vvkxEGIVDp69EZMeytMIs5S2U2Br3P3aL X-Received: by 2002:a17:906:5f85:b0:a31:1ce8:225b with SMTP id a5-20020a1709065f8500b00a311ce8225bmr342774eju.223.1706190491429; Thu, 25 Jan 2024 05:48:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190491; cv=none; d=google.com; s=arc-20160816; b=KIonKSMiHcZ4QE/KmaItvp2bAsGthRMxWXY/7XHZfoQ6WCwwSxhXDbLz+l5CzzmtoI veuTcE8zlhJHpw7osiXhy2NQM1pCmtof9f1DtJn2KD/VCSZNTZmSt5E0QAri4pm5Ujwg R84F1Pz656VvI577wy8HuEoF/nH9ssB5Dn8K4fegAkoHYN4gKQUrwcUpTAyOGdCBVXDQ 32ZTeGHphKIVPw8nmZZDiijmKBiD/dKsb7hdanyVGoqsuuF4UkdPWIEUi2dbfLZZTVs1 HtkHU8b3nOzUa6k56l2nkPaIcZ8qbqzmKhujbbs2AZb5JqSVtwiSJWQYblz3YR2PB0Dt ISjw== 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=sAjuHTgoeQOVqByJdI0coFatvF1QoavewTQU0ejdROs=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=H76dRbCmlsUwkOvHUN59F9qV12P0MH5FuHdkgBOaXhBKkGt3zNU/I6JSbhy+NG99Sb 2deEPaoigrZCfXSdP+s83Nq9+abmNcF5YwA2mTkWxbbxEH8l/BWwTQKDB96/Rq2646CS NDj0pQj39qt9xhRk/C4fIL8EMrOUYYfRoPZFPeYfkSt6ujaGZZZCeET7e1mqbaRLVzJ8 NfJA2WgLnoZOODa9XlC2FmTq6rMDagD5NOcoic+bjDph/2OEvgOpC9r20+bZi0DZKjc1 BQYMRzfImpEJ7IhbGTkkOSICwcD9OEnTSUU33Ls1fMSvpY6ZrCdiZm1eLZlg+O7idOCs G/IQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=mp4kDq9s; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id d13-20020a170906040d00b00a33b60763e0si88799eja.982.2024.01.25.05.48.10; Thu, 25 Jan 2024 05:48:11 -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=@gmail.com header.s=20230601 header.b=mp4kDq9s; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 125BD68D1B9; Thu, 25 Jan 2024 15:45:10 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8D38A68D199 for ; Thu, 25 Jan 2024 15:45:03 +0200 (EET) Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-1d50d0c98c3so6204315ad.1 for ; Thu, 25 Jan 2024 05:45:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190301; x=1706795101; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=eV/rkUIyacOO+2Hhf8l5Xi15Ps5mP2uRvKVtYDNrA18=; b=mp4kDq9sk3UUzHNuKlQ10JqBYT+5Bk63UM69IMqXbWCkxKhwp6bj6kbon/cDo+coIl Pj4P65XCcas1M4leH4YW4XXSxt334klj1FJVsTMbpxo6c4n2qcFTZeRl3J7uDP8CDUrh Ad81NGYlFjCz47aUISpCkMTIOxZuyUHGv/EazQxVlGXUGfKDJmT2vD7JuIuHecj7mp6H ys0bzcNTW45qBZisSpuzdUnxPsztH/TzBZDX/JnuFrPIK+oXyU4sIxi790BlSDsXW/oV gEVV/93YJhoSB+mICo6p5mosY52IOpdfrTfJDZseJWKnWLDy1V5muUGVyWv2VLJIwPLY Fcvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190301; x=1706795101; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=eV/rkUIyacOO+2Hhf8l5Xi15Ps5mP2uRvKVtYDNrA18=; b=CtjnqQqZp6ESN5OTf4uCPOpq98cF/NX7gWb6yGTMk7CvqYGfnnVMYPST12IIr0Ek+s PUTweMu5NFgSLj+CJWvAozrpWsxHByNg1MERuFVFhp2ny6CY+0lYpf2oK1/+dD38nIta Vw8Ah3ydnE0GOEsD+AFa6Kdg+xm43D3hNOeePWybpvDx6/1By6uhpDpnWWi855UXd+R1 o0rcoZT6ZYhqTDfaL6jWAAskminOQUUiFKZEuePhyUTsQQlH7xPWiHsQsmTuXvx31zjO ncZWdQ5GqxpkymLni6RALQyMFuXJzKzNOxOLVUjPaPolsTVR52NOE3zC3Y9JRJGuHRpX WhaQ== X-Gm-Message-State: AOJu0YxDeJjEvZu22Tyut71ub/88v1bi3OvMO8ZzRP4RAgqHR495FmW3 othKmAsOG5T4mFtcRdnqXrtywJFDbSBYlwveOpNY1kmKn78FTaQb+oxSyFY9 X-Received: by 2002:a17:902:680c:b0:1d5:ecfe:4d69 with SMTP id h12-20020a170902680c00b001d5ecfe4d69mr1262068plk.49.1706190299951; Thu, 25 Jan 2024 05:44:59 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.44.58 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:44:59 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:43 -0300 Message-ID: <20240125134425.374-21-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 20/24] avutil: remove deprecated FF_API_FRAME_PICTURE_NUMBER 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: Y+BwyBQCeSl1 Signed-off-by: James Almer --- doc/ffprobe.xsd | 2 - fftools/ffprobe.c | 6 -- libavcodec/diracdec.c | 15 ---- libavcodec/h264_slice.c | 5 -- libavcodec/libuavs3d.c | 6 -- libavcodec/mpegvideo_dec.c | 6 -- libavutil/frame.c | 6 -- libavutil/frame.h | 13 --- libavutil/version.h | 1 - tests/ref/fate/exif-image-embedded | 2 - tests/ref/fate/exif-image-jpg | 2 - tests/ref/fate/exif-image-tiff | 2 - tests/ref/fate/exif-image-webp | 2 - tests/ref/fate/ffprobe_compact | 16 ++-- tests/ref/fate/ffprobe_csv | 16 ++-- tests/ref/fate/ffprobe_default | 16 ---- tests/ref/fate/ffprobe_flat | 16 ---- tests/ref/fate/ffprobe_ini | 16 ---- tests/ref/fate/ffprobe_json | 16 ---- tests/ref/fate/ffprobe_xml | 16 ++-- tests/ref/fate/ffprobe_xsd | 16 ++-- tests/ref/fate/h264-dts_5frames | 10 --- tests/ref/fate/jpg-icc | 2 - tests/ref/fate/mov-zombie | 130 ++++++++++++++--------------- tests/ref/fate/png-icc | 2 - tests/ref/fate/png-side-data | 2 - 26 files changed, 97 insertions(+), 245 deletions(-) diff --git a/doc/ffprobe.xsd b/doc/ffprobe.xsd index 1131e2c940..f0b8b4e38f 100644 --- a/doc/ffprobe.xsd +++ b/doc/ffprobe.xsd @@ -126,8 +126,6 @@ - - diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index 122e37075e..192d6325d2 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -2753,12 +2753,6 @@ static void show_frame(WriterContext *w, AVFrame *frame, AVStream *stream, print_str_opt("sample_aspect_ratio", "N/A"); } print_fmt("pict_type", "%c", av_get_picture_type_char(frame->pict_type)); -#if LIBAVUTIL_VERSION_MAJOR < 59 - AV_NOWARN_DEPRECATED( - print_int("coded_picture_number", frame->coded_picture_number); - print_int("display_picture_number", frame->display_picture_number); - ) -#endif print_int("interlaced_frame", !!(frame->flags & AV_FRAME_FLAG_INTERLACED)); print_int("top_field_first", !!(frame->flags & AV_FRAME_FLAG_TOP_FIELD_FIRST)); print_int("repeat_pict", frame->repeat_pict); diff --git a/libavcodec/diracdec.c b/libavcodec/diracdec.c index 277c730cc7..24c7df0001 100644 --- a/libavcodec/diracdec.c +++ b/libavcodec/diracdec.c @@ -2103,11 +2103,6 @@ static int get_delayed_pic(DiracContext *s, AVFrame *picture, int *got_frame) out->reference ^= DELAYED_PIC_REF; if((ret = av_frame_ref(picture, out->avframe)) < 0) return ret; -#if FF_API_FRAME_PICTURE_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - picture->display_picture_number = out->picture_number; -FF_ENABLE_DEPRECATION_WARNINGS -#endif *got_frame = 1; } @@ -2350,11 +2345,6 @@ static int dirac_decode_frame(AVCodecContext *avctx, AVFrame *picture, if((ret = av_frame_ref(picture, delayed_frame->avframe)) < 0) return ret; s->frame_number = delayed_frame->picture_number + 1LL; -#if FF_API_FRAME_PICTURE_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - picture->display_picture_number = delayed_frame->picture_number; -FF_ENABLE_DEPRECATION_WARNINGS -#endif *got_frame = 1; } } else if (s->current_picture->picture_number == s->frame_number) { @@ -2362,11 +2352,6 @@ FF_ENABLE_DEPRECATION_WARNINGS if((ret = av_frame_ref(picture, s->current_picture->avframe)) < 0) return ret; s->frame_number = s->current_picture->picture_number + 1LL; -#if FF_API_FRAME_PICTURE_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - picture->display_picture_number = s->current_picture->picture_number; -FF_ENABLE_DEPRECATION_WARNINGS -#endif *got_frame = 1; } diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c index 8464a0b34c..14791a8181 100644 --- a/libavcodec/h264_slice.c +++ b/libavcodec/h264_slice.c @@ -496,11 +496,6 @@ static int h264_frame_start(H264Context *h) pic = &h->DPB[i]; pic->reference = h->droppable ? 0 : h->picture_structure; -#if FF_API_FRAME_PICTURE_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - pic->f->coded_picture_number = h->coded_picture_number++; -FF_ENABLE_DEPRECATION_WARNINGS -#endif pic->field_picture = h->picture_structure != PICT_FRAME; pic->frame_num = h->poc.frame_num; /* diff --git a/libavcodec/libuavs3d.c b/libavcodec/libuavs3d.c index 66e8d31001..74e92b8652 100644 --- a/libavcodec/libuavs3d.c +++ b/libavcodec/libuavs3d.c @@ -84,12 +84,6 @@ FF_DISABLE_DEPRECATION_WARNINGS frm->pkt_pos = dec_frame->pkt_pos; frm->pkt_size = dec_frame->pkt_size; FF_ENABLE_DEPRECATION_WARNINGS -#endif -#if FF_API_FRAME_PICTURE_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - frm->coded_picture_number = dec_frame->dtr; - frm->display_picture_number = dec_frame->ptr; -FF_ENABLE_DEPRECATION_WARNINGS #endif if (dec_frame->type < 0 || dec_frame->type >= FF_ARRAY_ELEMS(ff_avs3_image_type)) { diff --git a/libavcodec/mpegvideo_dec.c b/libavcodec/mpegvideo_dec.c index f4b7fc367c..88facfc39d 100644 --- a/libavcodec/mpegvideo_dec.c +++ b/libavcodec/mpegvideo_dec.c @@ -344,12 +344,6 @@ int ff_mpv_frame_start(MpegEncContext *s, AVCodecContext *avctx) pic->reference = 3; } -#if FF_API_FRAME_PICTURE_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - pic->f->coded_picture_number = s->coded_picture_number++; -FF_ENABLE_DEPRECATION_WARNINGS -#endif - if (alloc_picture(s, pic) < 0) return -1; diff --git a/libavutil/frame.c b/libavutil/frame.c index 93ac3a753d..079cf6595b 100644 --- a/libavutil/frame.c +++ b/libavutil/frame.c @@ -268,12 +268,6 @@ FF_ENABLE_DEPRECATION_WARNINGS dst->time_base = src->time_base; dst->quality = src->quality; dst->best_effort_timestamp = src->best_effort_timestamp; -#if FF_API_FRAME_PICTURE_NUMBER -FF_DISABLE_DEPRECATION_WARNINGS - dst->coded_picture_number = src->coded_picture_number; - dst->display_picture_number = src->display_picture_number; -FF_ENABLE_DEPRECATION_WARNINGS -#endif dst->flags = src->flags; dst->decode_error_flags = src->decode_error_flags; dst->color_primaries = src->color_primaries; diff --git a/libavutil/frame.h b/libavutil/frame.h index 3186d3a872..b94687941d 100644 --- a/libavutil/frame.h +++ b/libavutil/frame.h @@ -466,19 +466,6 @@ typedef struct AVFrame { */ AVRational time_base; -#if FF_API_FRAME_PICTURE_NUMBER - /** - * picture number in bitstream order - */ - attribute_deprecated - int coded_picture_number; - /** - * picture number in display order - */ - attribute_deprecated - int display_picture_number; -#endif - /** * quality (between 1 (good) and FF_LAMBDA_MAX (bad)) */ diff --git a/libavutil/version.h b/libavutil/version.h index e52c1282fc..a7df8473e1 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,7 +105,6 @@ * @{ */ -#define FF_API_FRAME_PICTURE_NUMBER (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_HDR_VIVID_THREE_SPLINE (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_FRAME_PKT (LIBAVUTIL_VERSION_MAJOR < 59) #define FF_API_INTERLACED_FRAME (LIBAVUTIL_VERSION_MAJOR < 59) diff --git a/tests/ref/fate/exif-image-embedded b/tests/ref/fate/exif-image-embedded index 3e0cc69490..98b6ec5a44 100644 --- a/tests/ref/fate/exif-image-embedded +++ b/tests/ref/fate/exif-image-embedded @@ -21,8 +21,6 @@ crop_right=0 pix_fmt=yuvj420p sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/exif-image-jpg b/tests/ref/fate/exif-image-jpg index 239f4c3366..2e314078da 100644 --- a/tests/ref/fate/exif-image-jpg +++ b/tests/ref/fate/exif-image-jpg @@ -21,8 +21,6 @@ crop_right=0 pix_fmt=yuvj422p sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/exif-image-tiff b/tests/ref/fate/exif-image-tiff index 7741edb0f4..887c039df9 100644 --- a/tests/ref/fate/exif-image-tiff +++ b/tests/ref/fate/exif-image-tiff @@ -21,8 +21,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=? -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/exif-image-webp b/tests/ref/fate/exif-image-webp index e51e36c788..73560e8ba0 100644 --- a/tests/ref/fate/exif-image-webp +++ b/tests/ref/fate/exif-image-webp @@ -21,8 +21,6 @@ crop_right=0 pix_fmt=yuv420p sample_aspect_ratio=N/A pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/ffprobe_compact b/tests/ref/fate/ffprobe_compact index 2b751b214d..4d6a83db10 100644 --- a/tests/ref/fate/ffprobe_compact +++ b/tests/ref/fate/ffprobe_compact @@ -1,31 +1,31 @@ packet|codec_type=audio|stream_index=0|pts=0|pts_time=0.000000|dts=0|dts_time=0.000000|duration=1024|duration_time=0.023220|size=2048|pos=669|flags=K__ frame|media_type=audio|stream_index=0|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=1024|duration_time=0.023220|pkt_pos=669|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=0|pts_time=0.000000|dts=0|dts_time=0.000000|duration=2048|duration_time=0.040000|size=230400|pos=2744|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=2048|duration_time=0.040000|pkt_pos=2744|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=2048|duration_time=0.040000|pkt_pos=2744|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=0|pts_time=0.000000|dts=0|dts_time=0.000000|duration=2048|duration_time=0.040000|size=30000|pos=233165|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=2048|duration_time=0.040000|pkt_pos=233165|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=0|pkt_dts_time=0.000000|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=2048|duration_time=0.040000|pkt_pos=233165|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=audio|stream_index=0|pts=1024|pts_time=0.023220|dts=1024|dts_time=0.023220|duration=1024|duration_time=0.023220|size=2048|pos=263170|flags=K__ frame|media_type=audio|stream_index=0|key_frame=1|pts=1024|pts_time=0.023220|pkt_dts=1024|pkt_dts_time=0.023220|best_effort_timestamp=1024|best_effort_timestamp_time=0.023220|duration=1024|duration_time=0.023220|pkt_pos=263170|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=2048|pts_time=0.040000|dts=2048|dts_time=0.040000|duration=2048|duration_time=0.040000|size=230400|pos=265248|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=265248|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=265248|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=2048|pts_time=0.040000|dts=2048|dts_time=0.040000|duration=2048|duration_time=0.040000|size=30000|pos=495672|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=495672|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=2048|pts_time=0.040000|pkt_dts=2048|pkt_dts_time=0.040000|best_effort_timestamp=2048|best_effort_timestamp_time=0.040000|duration=2048|duration_time=0.040000|pkt_pos=495672|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=audio|stream_index=0|pts=2048|pts_time=0.046440|dts=2048|dts_time=0.046440|duration=1024|duration_time=0.023220|size=2048|pos=525677|flags=K__ frame|media_type=audio|stream_index=0|key_frame=1|pts=2048|pts_time=0.046440|pkt_dts=2048|pkt_dts_time=0.046440|best_effort_timestamp=2048|best_effort_timestamp_time=0.046440|duration=1024|duration_time=0.023220|pkt_pos=525677|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=3072|pts_time=0.069660|dts=3072|dts_time=0.069660|duration=1024|duration_time=0.023220|size=2048|pos=527748|flags=K__ frame|media_type=audio|stream_index=0|key_frame=1|pts=3072|pts_time=0.069660|pkt_dts=3072|pkt_dts_time=0.069660|best_effort_timestamp=3072|best_effort_timestamp_time=0.069660|duration=1024|duration_time=0.023220|pkt_pos=527748|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=4096|pts_time=0.080000|dts=4096|dts_time=0.080000|duration=2048|duration_time=0.040000|size=230400|pos=529826|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|duration=2048|duration_time=0.040000|pkt_pos=529826|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|duration=2048|duration_time=0.040000|pkt_pos=529826|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=4096|pts_time=0.080000|dts=4096|dts_time=0.080000|duration=2048|duration_time=0.040000|size=30000|pos=760250|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|duration=2048|duration_time=0.040000|pkt_pos=760250|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=4096|pts_time=0.080000|pkt_dts=4096|pkt_dts_time=0.080000|best_effort_timestamp=4096|best_effort_timestamp_time=0.080000|duration=2048|duration_time=0.040000|pkt_pos=760250|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=audio|stream_index=0|pts=4096|pts_time=0.092880|dts=4096|dts_time=0.092880|duration=1024|duration_time=0.023220|size=2048|pos=790255|flags=K__ frame|media_type=audio|stream_index=0|key_frame=1|pts=4096|pts_time=0.092880|pkt_dts=4096|pkt_dts_time=0.092880|best_effort_timestamp=4096|best_effort_timestamp_time=0.092880|duration=1024|duration_time=0.023220|pkt_pos=790255|pkt_size=2048|sample_fmt=s16|nb_samples=1024|channels=1|channel_layout=unknown packet|codec_type=audio|stream_index=0|pts=5120|pts_time=0.116100|dts=5120|dts_time=0.116100|duration=393|duration_time=0.008912|size=786|pos=792326|flags=K__ frame|media_type=audio|stream_index=0|key_frame=1|pts=5120|pts_time=0.116100|pkt_dts=5120|pkt_dts_time=0.116100|best_effort_timestamp=5120|best_effort_timestamp_time=0.116100|duration=393|duration_time=0.008912|pkt_pos=792326|pkt_size=786|sample_fmt=s16|nb_samples=393|channels=1|channel_layout=unknown packet|codec_type=video|stream_index=1|pts=6144|pts_time=0.120000|dts=6144|dts_time=0.120000|duration=2048|duration_time=0.040000|size=230400|pos=793142|flags=K__ -frame|media_type=video|stream_index=1|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|duration=2048|duration_time=0.040000|pkt_pos=793142|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=1|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|duration=2048|duration_time=0.040000|pkt_pos=793142|pkt_size=230400|width=320|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified packet|codec_type=video|stream_index=2|pts=6144|pts_time=0.120000|dts=6144|dts_time=0.120000|duration=2048|duration_time=0.040000|size=30000|pos=1023566|flags=K__ -frame|media_type=video|stream_index=2|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|duration=2048|duration_time=0.040000|pkt_pos=1023566|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified +frame|media_type=video|stream_index=2|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|duration=2048|duration_time=0.040000|pkt_pos=1023566|pkt_size=30000|width=100|height=100|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified stream|index=0|codec_name=pcm_s16le|profile=unknown|codec_type=audio|codec_tag_string=PSD[16]|codec_tag=0x10445350|sample_fmt=s16|sample_rate=44100|channels=1|channel_layout=unknown|bits_per_sample=16|initial_padding=0|id=N/A|r_frame_rate=0/0|avg_frame_rate=0/0|time_base=1/44100|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=705600|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=6|nb_read_packets=6|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:E=mc²|tag:encoder=Lavc pcm_s16le stream|index=1|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=320|height=240|coded_width=320|coded_height=240|closed_captions=0|film_grain=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=4:3|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=1|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:title=foobar|tag:duration_ts=field-and-tags-conflict-attempt|tag:encoder=Lavc rawvideo stream|index=2|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=100|height=100|coded_width=100|coded_height=100|closed_captions=0|film_grain=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=1:1|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:encoder=Lavc rawvideo diff --git a/tests/ref/fate/ffprobe_csv b/tests/ref/fate/ffprobe_csv index 1bbb996a48..4aa2eed0fc 100644 --- a/tests/ref/fate/ffprobe_csv +++ b/tests/ref/fate/ffprobe_csv @@ -1,31 +1,31 @@ packet,audio,0,0,0.000000,0,0.000000,1024,0.023220,2048,669,K__ frame,audio,0,1,0,0.000000,0,0.000000,0,0.000000,1024,0.023220,669,2048,s16,1024,1,unknown packet,video,1,0,0.000000,0,0.000000,2048,0.040000,230400,2744,K__ -frame,video,1,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,2744,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,2744,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,0,0.000000,0,0.000000,2048,0.040000,30000,233165,K__ -frame,video,2,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,233165,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,0,0.000000,0,0.000000,0,0.000000,2048,0.040000,233165,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,audio,0,1024,0.023220,1024,0.023220,1024,0.023220,2048,263170,K__ frame,audio,0,1,1024,0.023220,1024,0.023220,1024,0.023220,1024,0.023220,263170,2048,s16,1024,1,unknown packet,video,1,2048,0.040000,2048,0.040000,2048,0.040000,230400,265248,K__ -frame,video,1,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,265248,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,265248,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,2048,0.040000,2048,0.040000,2048,0.040000,30000,495672,K__ -frame,video,2,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,495672,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,2048,0.040000,2048,0.040000,2048,0.040000,2048,0.040000,495672,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,audio,0,2048,0.046440,2048,0.046440,1024,0.023220,2048,525677,K__ frame,audio,0,1,2048,0.046440,2048,0.046440,2048,0.046440,1024,0.023220,525677,2048,s16,1024,1,unknown packet,audio,0,3072,0.069660,3072,0.069660,1024,0.023220,2048,527748,K__ frame,audio,0,1,3072,0.069660,3072,0.069660,3072,0.069660,1024,0.023220,527748,2048,s16,1024,1,unknown packet,video,1,4096,0.080000,4096,0.080000,2048,0.040000,230400,529826,K__ -frame,video,1,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,529826,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,529826,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,4096,0.080000,4096,0.080000,2048,0.040000,30000,760250,K__ -frame,video,2,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,760250,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,4096,0.080000,4096,0.080000,4096,0.080000,2048,0.040000,760250,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,audio,0,4096,0.092880,4096,0.092880,1024,0.023220,2048,790255,K__ frame,audio,0,1,4096,0.092880,4096,0.092880,4096,0.092880,1024,0.023220,790255,2048,s16,1024,1,unknown packet,audio,0,5120,0.116100,5120,0.116100,393,0.008912,786,792326,K__ frame,audio,0,1,5120,0.116100,5120,0.116100,5120,0.116100,393,0.008912,792326,786,s16,393,1,unknown packet,video,1,6144,0.120000,6144,0.120000,2048,0.040000,230400,793142,K__ -frame,video,1,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,793142,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,1,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,793142,230400,320,240,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified packet,video,2,6144,0.120000,6144,0.120000,2048,0.040000,30000,1023566,K__ -frame,video,2,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,1023566,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified +frame,video,2,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,1023566,30000,100,100,0,0,0,0,rgb24,1:1,I,0,0,0,unknown,unknown,unknown,unknown,unspecified stream,0,pcm_s16le,unknown,audio,PSD[16],0x10445350,s16,44100,1,unknown,16,0,N/A,0/0,0/0,1/44100,0,0.000000,N/A,N/A,705600,N/A,N/A,N/A,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,mc²,Lavc pcm_s16le stream,1,rawvideo,unknown,video,RGB[24],0x18424752,320,240,320,240,0,0,0,1:1,4:3,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,foobar,field-and-tags-conflict-attempt,Lavc rawvideo stream,2,rawvideo,unknown,video,RGB[24],0x18424752,100,100,100,100,0,0,0,1:1,1:1,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Lavc rawvideo diff --git a/tests/ref/fate/ffprobe_default b/tests/ref/fate/ffprobe_default index 229c004042..057e5a9803 100644 --- a/tests/ref/fate/ffprobe_default +++ b/tests/ref/fate/ffprobe_default @@ -66,8 +66,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -113,8 +111,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -192,8 +188,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -239,8 +233,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -350,8 +342,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -397,8 +387,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -508,8 +496,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -555,8 +541,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/ffprobe_flat b/tests/ref/fate/ffprobe_flat index d1e290ddda..d81c8ccaf8 100644 --- a/tests/ref/fate/ffprobe_flat +++ b/tests/ref/fate/ffprobe_flat @@ -59,8 +59,6 @@ packets_and_frames.frame.1.crop_right=0 packets_and_frames.frame.1.pix_fmt="rgb24" packets_and_frames.frame.1.sample_aspect_ratio="1:1" packets_and_frames.frame.1.pict_type="I" -packets_and_frames.frame.1.coded_picture_number=0 -packets_and_frames.frame.1.display_picture_number=0 packets_and_frames.frame.1.interlaced_frame=0 packets_and_frames.frame.1.top_field_first=0 packets_and_frames.frame.1.repeat_pict=0 @@ -102,8 +100,6 @@ packets_and_frames.frame.2.crop_right=0 packets_and_frames.frame.2.pix_fmt="rgb24" packets_and_frames.frame.2.sample_aspect_ratio="1:1" packets_and_frames.frame.2.pict_type="I" -packets_and_frames.frame.2.coded_picture_number=0 -packets_and_frames.frame.2.display_picture_number=0 packets_and_frames.frame.2.interlaced_frame=0 packets_and_frames.frame.2.top_field_first=0 packets_and_frames.frame.2.repeat_pict=0 @@ -173,8 +169,6 @@ packets_and_frames.frame.4.crop_right=0 packets_and_frames.frame.4.pix_fmt="rgb24" packets_and_frames.frame.4.sample_aspect_ratio="1:1" packets_and_frames.frame.4.pict_type="I" -packets_and_frames.frame.4.coded_picture_number=0 -packets_and_frames.frame.4.display_picture_number=0 packets_and_frames.frame.4.interlaced_frame=0 packets_and_frames.frame.4.top_field_first=0 packets_and_frames.frame.4.repeat_pict=0 @@ -216,8 +210,6 @@ packets_and_frames.frame.5.crop_right=0 packets_and_frames.frame.5.pix_fmt="rgb24" packets_and_frames.frame.5.sample_aspect_ratio="1:1" packets_and_frames.frame.5.pict_type="I" -packets_and_frames.frame.5.coded_picture_number=0 -packets_and_frames.frame.5.display_picture_number=0 packets_and_frames.frame.5.interlaced_frame=0 packets_and_frames.frame.5.top_field_first=0 packets_and_frames.frame.5.repeat_pict=0 @@ -315,8 +307,6 @@ packets_and_frames.frame.8.crop_right=0 packets_and_frames.frame.8.pix_fmt="rgb24" packets_and_frames.frame.8.sample_aspect_ratio="1:1" packets_and_frames.frame.8.pict_type="I" -packets_and_frames.frame.8.coded_picture_number=0 -packets_and_frames.frame.8.display_picture_number=0 packets_and_frames.frame.8.interlaced_frame=0 packets_and_frames.frame.8.top_field_first=0 packets_and_frames.frame.8.repeat_pict=0 @@ -358,8 +348,6 @@ packets_and_frames.frame.9.crop_right=0 packets_and_frames.frame.9.pix_fmt="rgb24" packets_and_frames.frame.9.sample_aspect_ratio="1:1" packets_and_frames.frame.9.pict_type="I" -packets_and_frames.frame.9.coded_picture_number=0 -packets_and_frames.frame.9.display_picture_number=0 packets_and_frames.frame.9.interlaced_frame=0 packets_and_frames.frame.9.top_field_first=0 packets_and_frames.frame.9.repeat_pict=0 @@ -457,8 +445,6 @@ packets_and_frames.frame.12.crop_right=0 packets_and_frames.frame.12.pix_fmt="rgb24" packets_and_frames.frame.12.sample_aspect_ratio="1:1" packets_and_frames.frame.12.pict_type="I" -packets_and_frames.frame.12.coded_picture_number=0 -packets_and_frames.frame.12.display_picture_number=0 packets_and_frames.frame.12.interlaced_frame=0 packets_and_frames.frame.12.top_field_first=0 packets_and_frames.frame.12.repeat_pict=0 @@ -500,8 +486,6 @@ packets_and_frames.frame.13.crop_right=0 packets_and_frames.frame.13.pix_fmt="rgb24" packets_and_frames.frame.13.sample_aspect_ratio="1:1" packets_and_frames.frame.13.pict_type="I" -packets_and_frames.frame.13.coded_picture_number=0 -packets_and_frames.frame.13.display_picture_number=0 packets_and_frames.frame.13.interlaced_frame=0 packets_and_frames.frame.13.top_field_first=0 packets_and_frames.frame.13.repeat_pict=0 diff --git a/tests/ref/fate/ffprobe_ini b/tests/ref/fate/ffprobe_ini index 6716094d68..16ac2d0786 100644 --- a/tests/ref/fate/ffprobe_ini +++ b/tests/ref/fate/ffprobe_ini @@ -68,8 +68,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -115,8 +113,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -194,8 +190,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -241,8 +235,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -352,8 +344,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -399,8 +389,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -510,8 +498,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -557,8 +543,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1\:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/ffprobe_json b/tests/ref/fate/ffprobe_json index cf5b4eae1e..31d59366c9 100644 --- a/tests/ref/fate/ffprobe_json +++ b/tests/ref/fate/ffprobe_json @@ -71,8 +71,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 @@ -115,8 +113,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 @@ -192,8 +188,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 @@ -236,8 +230,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 @@ -346,8 +338,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 @@ -390,8 +380,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 @@ -500,8 +488,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 @@ -544,8 +530,6 @@ "pix_fmt": "rgb24", "sample_aspect_ratio": "1:1", "pict_type": "I", - "coded_picture_number": 0, - "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0 diff --git a/tests/ref/fate/ffprobe_xml b/tests/ref/fate/ffprobe_xml index eb1d265100..51d154f53d 100644 --- a/tests/ref/fate/ffprobe_xml +++ b/tests/ref/fate/ffprobe_xml @@ -4,31 +4,31 @@ - + - + - + - + - + - + - + - + diff --git a/tests/ref/fate/ffprobe_xsd b/tests/ref/fate/ffprobe_xsd index 1d0a4d0e38..f7df6bf815 100644 --- a/tests/ref/fate/ffprobe_xsd +++ b/tests/ref/fate/ffprobe_xsd @@ -4,31 +4,31 @@ - + - + - + - + - + - + - + - + diff --git a/tests/ref/fate/h264-dts_5frames b/tests/ref/fate/h264-dts_5frames index 74f6582814..8fe4214b89 100644 --- a/tests/ref/fate/h264-dts_5frames +++ b/tests/ref/fate/h264-dts_5frames @@ -21,8 +21,6 @@ crop_right=0 pix_fmt=yuv420p sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -55,8 +53,6 @@ crop_right=0 pix_fmt=yuv420p sample_aspect_ratio=1:1 pict_type=P -coded_picture_number=1 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -89,8 +85,6 @@ crop_right=0 pix_fmt=yuv420p sample_aspect_ratio=1:1 pict_type=P -coded_picture_number=2 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -123,8 +117,6 @@ crop_right=0 pix_fmt=yuv420p sample_aspect_ratio=1:1 pict_type=P -coded_picture_number=3 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 @@ -157,8 +149,6 @@ crop_right=0 pix_fmt=yuv420p sample_aspect_ratio=1:1 pict_type=P -coded_picture_number=4 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/jpg-icc b/tests/ref/fate/jpg-icc index 8e4c382747..54ef63c501 100644 --- a/tests/ref/fate/jpg-icc +++ b/tests/ref/fate/jpg-icc @@ -29,8 +29,6 @@ crop_right=0 pix_fmt=yuvj444p sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/mov-zombie b/tests/ref/fate/mov-zombie index 955b8a4767..0ff447ef40 100644 --- a/tests/ref/fate/mov-zombie +++ b/tests/ref/fate/mov-zombie @@ -1,132 +1,132 @@ packet|codec_type=video|stream_index=0|pts=0|pts_time=0.000000|dts=-3004|dts_time=-0.033378|duration=3003|duration_time=0.033367|size=4133|pos=11309|flags=K__ packet|codec_type=video|stream_index=0|pts=5440|pts_time=0.060444|dts=-567|dts_time=-0.006300|duration=3003|duration_time=0.033367|size=1077|pos=15442|flags=___ -frame|media_type=video|stream_index=0|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=-567|pkt_dts_time=-0.006300|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=3003|duration_time=0.033367|pkt_pos=11309|pkt_size=4133|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=1|pts=0|pts_time=0.000000|pkt_dts=-567|pkt_dts_time=-0.006300|best_effort_timestamp=0|best_effort_timestamp_time=0.000000|duration=3003|duration_time=0.033367|pkt_pos=11309|pkt_size=4133|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=2437|pts_time=0.027078|dts=2436|dts_time=0.027067|duration=3003|duration_time=0.033367|size=355|pos=16519|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=2437|pts_time=0.027078|pkt_dts=2436|pkt_dts_time=0.027067|best_effort_timestamp=2437|best_effort_timestamp_time=0.027078|duration=3003|duration_time=0.033367|pkt_pos=16519|pkt_size=355|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=2|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=2437|pts_time=0.027078|pkt_dts=2436|pkt_dts_time=0.027067|best_effort_timestamp=2437|best_effort_timestamp_time=0.027078|duration=3003|duration_time=0.033367|pkt_pos=16519|pkt_size=355|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=11446|pts_time=0.127178|dts=5439|dts_time=0.060433|duration=3003|duration_time=0.033367|size=1110|pos=16874|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=5440|pts_time=0.060444|pkt_dts=5439|pkt_dts_time=0.060433|best_effort_timestamp=5440|best_effort_timestamp_time=0.060444|duration=3003|duration_time=0.033367|pkt_pos=15442|pkt_size=1077|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=1|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=5440|pts_time=0.060444|pkt_dts=5439|pkt_dts_time=0.060433|best_effort_timestamp=5440|best_effort_timestamp_time=0.060444|duration=3003|duration_time=0.033367|pkt_pos=15442|pkt_size=1077|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=8443|pts_time=0.093811|dts=8442|dts_time=0.093800|duration=3003|duration_time=0.033367|size=430|pos=17984|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=8443|pts_time=0.093811|pkt_dts=8442|pkt_dts_time=0.093800|best_effort_timestamp=8443|best_effort_timestamp_time=0.093811|duration=3003|duration_time=0.033367|pkt_pos=17984|pkt_size=430|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=4|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=8443|pts_time=0.093811|pkt_dts=8442|pkt_dts_time=0.093800|best_effort_timestamp=8443|best_effort_timestamp_time=0.093811|duration=3003|duration_time=0.033367|pkt_pos=17984|pkt_size=430|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=17452|pts_time=0.193911|dts=11445|dts_time=0.127167|duration=3003|duration_time=0.033367|size=1485|pos=18414|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=11446|pts_time=0.127178|pkt_dts=11445|pkt_dts_time=0.127167|best_effort_timestamp=11446|best_effort_timestamp_time=0.127178|duration=3003|duration_time=0.033367|pkt_pos=16874|pkt_size=1110|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=3|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=11446|pts_time=0.127178|pkt_dts=11445|pkt_dts_time=0.127167|best_effort_timestamp=11446|best_effort_timestamp_time=0.127178|duration=3003|duration_time=0.033367|pkt_pos=16874|pkt_size=1110|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=14449|pts_time=0.160544|dts=14448|dts_time=0.160533|duration=3003|duration_time=0.033367|size=1005|pos=19899|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=14449|pts_time=0.160544|pkt_dts=14448|pkt_dts_time=0.160533|best_effort_timestamp=14449|best_effort_timestamp_time=0.160544|duration=3003|duration_time=0.033367|pkt_pos=19899|pkt_size=1005|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=6|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=14449|pts_time=0.160544|pkt_dts=14448|pkt_dts_time=0.160533|best_effort_timestamp=14449|best_effort_timestamp_time=0.160544|duration=3003|duration_time=0.033367|pkt_pos=19899|pkt_size=1005|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=23458|pts_time=0.260644|dts=17451|dts_time=0.193900|duration=3003|duration_time=0.033367|size=1976|pos=20904|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=17452|pts_time=0.193911|pkt_dts=17451|pkt_dts_time=0.193900|best_effort_timestamp=17452|best_effort_timestamp_time=0.193911|duration=3003|duration_time=0.033367|pkt_pos=18414|pkt_size=1485|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=5|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=17452|pts_time=0.193911|pkt_dts=17451|pkt_dts_time=0.193900|best_effort_timestamp=17452|best_effort_timestamp_time=0.193911|duration=3003|duration_time=0.033367|pkt_pos=18414|pkt_size=1485|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=20455|pts_time=0.227278|dts=20454|dts_time=0.227267|duration=3003|duration_time=0.033367|size=904|pos=22880|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=20455|pts_time=0.227278|pkt_dts=20454|pkt_dts_time=0.227267|best_effort_timestamp=20455|best_effort_timestamp_time=0.227278|duration=3003|duration_time=0.033367|pkt_pos=22880|pkt_size=904|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=8|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=20455|pts_time=0.227278|pkt_dts=20454|pkt_dts_time=0.227267|best_effort_timestamp=20455|best_effort_timestamp_time=0.227278|duration=3003|duration_time=0.033367|pkt_pos=22880|pkt_size=904|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=29464|pts_time=0.327378|dts=23457|dts_time=0.260633|duration=3003|duration_time=0.033367|size=1254|pos=23784|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=23458|pts_time=0.260644|pkt_dts=23457|pkt_dts_time=0.260633|best_effort_timestamp=23458|best_effort_timestamp_time=0.260644|duration=3003|duration_time=0.033367|pkt_pos=20904|pkt_size=1976|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=7|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=23458|pts_time=0.260644|pkt_dts=23457|pkt_dts_time=0.260633|best_effort_timestamp=23458|best_effort_timestamp_time=0.260644|duration=3003|duration_time=0.033367|pkt_pos=20904|pkt_size=1976|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=26461|pts_time=0.294011|dts=26460|dts_time=0.294000|duration=3003|duration_time=0.033367|size=700|pos=25038|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=26461|pts_time=0.294011|pkt_dts=26460|pkt_dts_time=0.294000|best_effort_timestamp=26461|best_effort_timestamp_time=0.294011|duration=3003|duration_time=0.033367|pkt_pos=25038|pkt_size=700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=10|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=26461|pts_time=0.294011|pkt_dts=26460|pkt_dts_time=0.294000|best_effort_timestamp=26461|best_effort_timestamp_time=0.294011|duration=3003|duration_time=0.033367|pkt_pos=25038|pkt_size=700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=35470|pts_time=0.394111|dts=29463|dts_time=0.327367|duration=3003|duration_time=0.033367|size=1311|pos=25738|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=29464|pts_time=0.327378|pkt_dts=29463|pkt_dts_time=0.327367|best_effort_timestamp=29464|best_effort_timestamp_time=0.327378|duration=3003|duration_time=0.033367|pkt_pos=23784|pkt_size=1254|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=9|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=29464|pts_time=0.327378|pkt_dts=29463|pkt_dts_time=0.327367|best_effort_timestamp=29464|best_effort_timestamp_time=0.327378|duration=3003|duration_time=0.033367|pkt_pos=23784|pkt_size=1254|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=32467|pts_time=0.360744|dts=32466|dts_time=0.360733|duration=3003|duration_time=0.033367|size=631|pos=27049|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=32467|pts_time=0.360744|pkt_dts=32466|pkt_dts_time=0.360733|best_effort_timestamp=32467|best_effort_timestamp_time=0.360744|duration=3003|duration_time=0.033367|pkt_pos=27049|pkt_size=631|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=12|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=32467|pts_time=0.360744|pkt_dts=32466|pkt_dts_time=0.360733|best_effort_timestamp=32467|best_effort_timestamp_time=0.360744|duration=3003|duration_time=0.033367|pkt_pos=27049|pkt_size=631|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=41476|pts_time=0.460844|dts=35469|dts_time=0.394100|duration=3003|duration_time=0.033367|size=1296|pos=27680|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=35470|pts_time=0.394111|pkt_dts=35469|pkt_dts_time=0.394100|best_effort_timestamp=35470|best_effort_timestamp_time=0.394111|duration=3003|duration_time=0.033367|pkt_pos=25738|pkt_size=1311|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=11|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=35470|pts_time=0.394111|pkt_dts=35469|pkt_dts_time=0.394100|best_effort_timestamp=35470|best_effort_timestamp_time=0.394111|duration=3003|duration_time=0.033367|pkt_pos=25738|pkt_size=1311|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=38473|pts_time=0.427478|dts=38472|dts_time=0.427467|duration=3003|duration_time=0.033367|size=466|pos=28976|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=38473|pts_time=0.427478|pkt_dts=38472|pkt_dts_time=0.427467|best_effort_timestamp=38473|best_effort_timestamp_time=0.427478|duration=3003|duration_time=0.033367|pkt_pos=28976|pkt_size=466|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=14|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=38473|pts_time=0.427478|pkt_dts=38472|pkt_dts_time=0.427467|best_effort_timestamp=38473|best_effort_timestamp_time=0.427478|duration=3003|duration_time=0.033367|pkt_pos=28976|pkt_size=466|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=47482|pts_time=0.527578|dts=41475|dts_time=0.460833|duration=3003|duration_time=0.033367|size=1638|pos=29442|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=41476|pts_time=0.460844|pkt_dts=41475|pkt_dts_time=0.460833|best_effort_timestamp=41476|best_effort_timestamp_time=0.460844|duration=3003|duration_time=0.033367|pkt_pos=27680|pkt_size=1296|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=13|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=41476|pts_time=0.460844|pkt_dts=41475|pkt_dts_time=0.460833|best_effort_timestamp=41476|best_effort_timestamp_time=0.460844|duration=3003|duration_time=0.033367|pkt_pos=27680|pkt_size=1296|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=44479|pts_time=0.494211|dts=44478|dts_time=0.494200|duration=3003|duration_time=0.033367|size=907|pos=31080|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=44479|pts_time=0.494211|pkt_dts=44478|pkt_dts_time=0.494200|best_effort_timestamp=44479|best_effort_timestamp_time=0.494211|duration=3003|duration_time=0.033367|pkt_pos=31080|pkt_size=907|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=16|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=44479|pts_time=0.494211|pkt_dts=44478|pkt_dts_time=0.494200|best_effort_timestamp=44479|best_effort_timestamp_time=0.494211|duration=3003|duration_time=0.033367|pkt_pos=31080|pkt_size=907|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=53488|pts_time=0.594311|dts=47481|dts_time=0.527567|duration=3003|duration_time=0.033367|size=1362|pos=31987|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=47482|pts_time=0.527578|pkt_dts=47481|pkt_dts_time=0.527567|best_effort_timestamp=47482|best_effort_timestamp_time=0.527578|duration=3003|duration_time=0.033367|pkt_pos=29442|pkt_size=1638|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=15|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=47482|pts_time=0.527578|pkt_dts=47481|pkt_dts_time=0.527567|best_effort_timestamp=47482|best_effort_timestamp_time=0.527578|duration=3003|duration_time=0.033367|pkt_pos=29442|pkt_size=1638|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=50485|pts_time=0.560944|dts=50484|dts_time=0.560933|duration=3003|duration_time=0.033367|size=682|pos=33349|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=50485|pts_time=0.560944|pkt_dts=50484|pkt_dts_time=0.560933|best_effort_timestamp=50485|best_effort_timestamp_time=0.560944|duration=3003|duration_time=0.033367|pkt_pos=33349|pkt_size=682|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=18|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=50485|pts_time=0.560944|pkt_dts=50484|pkt_dts_time=0.560933|best_effort_timestamp=50485|best_effort_timestamp_time=0.560944|duration=3003|duration_time=0.033367|pkt_pos=33349|pkt_size=682|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=59494|pts_time=0.661044|dts=53487|dts_time=0.594300|duration=3003|duration_time=0.033367|size=2917|pos=34031|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=53488|pts_time=0.594311|pkt_dts=53487|pkt_dts_time=0.594300|best_effort_timestamp=53488|best_effort_timestamp_time=0.594311|duration=3003|duration_time=0.033367|pkt_pos=31987|pkt_size=1362|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=17|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=53488|pts_time=0.594311|pkt_dts=53487|pkt_dts_time=0.594300|best_effort_timestamp=53488|best_effort_timestamp_time=0.594311|duration=3003|duration_time=0.033367|pkt_pos=31987|pkt_size=1362|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=56491|pts_time=0.627678|dts=56490|dts_time=0.627667|duration=3003|duration_time=0.033367|size=1174|pos=36948|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=56491|pts_time=0.627678|pkt_dts=56490|pkt_dts_time=0.627667|best_effort_timestamp=56491|best_effort_timestamp_time=0.627678|duration=3003|duration_time=0.033367|pkt_pos=36948|pkt_size=1174|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=20|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=56491|pts_time=0.627678|pkt_dts=56490|pkt_dts_time=0.627667|best_effort_timestamp=56491|best_effort_timestamp_time=0.627678|duration=3003|duration_time=0.033367|pkt_pos=36948|pkt_size=1174|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=65500|pts_time=0.727778|dts=59493|dts_time=0.661033|duration=3003|duration_time=0.033367|size=1748|pos=38122|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=59494|pts_time=0.661044|pkt_dts=59493|pkt_dts_time=0.661033|best_effort_timestamp=59494|best_effort_timestamp_time=0.661044|duration=3003|duration_time=0.033367|pkt_pos=34031|pkt_size=2917|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=19|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=59494|pts_time=0.661044|pkt_dts=59493|pkt_dts_time=0.661033|best_effort_timestamp=59494|best_effort_timestamp_time=0.661044|duration=3003|duration_time=0.033367|pkt_pos=34031|pkt_size=2917|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=62497|pts_time=0.694411|dts=62496|dts_time=0.694400|duration=3003|duration_time=0.033367|size=926|pos=39870|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=62497|pts_time=0.694411|pkt_dts=62496|pkt_dts_time=0.694400|best_effort_timestamp=62497|best_effort_timestamp_time=0.694411|duration=3003|duration_time=0.033367|pkt_pos=39870|pkt_size=926|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=22|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=62497|pts_time=0.694411|pkt_dts=62496|pkt_dts_time=0.694400|best_effort_timestamp=62497|best_effort_timestamp_time=0.694411|duration=3003|duration_time=0.033367|pkt_pos=39870|pkt_size=926|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=68503|pts_time=0.761144|dts=65499|dts_time=0.727767|duration=3003|duration_time=0.033367|size=918|pos=40796|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=65500|pts_time=0.727778|pkt_dts=65499|pkt_dts_time=0.727767|best_effort_timestamp=65500|best_effort_timestamp_time=0.727778|duration=3003|duration_time=0.033367|pkt_pos=38122|pkt_size=1748|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=21|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=65500|pts_time=0.727778|pkt_dts=65499|pkt_dts_time=0.727767|best_effort_timestamp=65500|best_effort_timestamp_time=0.727778|duration=3003|duration_time=0.033367|pkt_pos=38122|pkt_size=1748|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=71506|pts_time=0.794511|dts=68502|dts_time=0.761133|duration=3003|duration_time=0.033367|size=3846|pos=41714|flags=K__ -frame|media_type=video|stream_index=0|key_frame=0|pts=68503|pts_time=0.761144|pkt_dts=68502|pkt_dts_time=0.761133|best_effort_timestamp=68503|best_effort_timestamp_time=0.761144|duration=3003|duration_time=0.033367|pkt_pos=40796|pkt_size=918|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=23|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=68503|pts_time=0.761144|pkt_dts=68502|pkt_dts_time=0.761133|best_effort_timestamp=68503|best_effort_timestamp_time=0.761144|duration=3003|duration_time=0.033367|pkt_pos=40796|pkt_size=918|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=77512|pts_time=0.861244|dts=71505|dts_time=0.794500|duration=3003|duration_time=0.033367|size=1932|pos=45560|flags=___ -frame|media_type=video|stream_index=0|key_frame=1|pts=71506|pts_time=0.794511|pkt_dts=71505|pkt_dts_time=0.794500|best_effort_timestamp=71506|best_effort_timestamp_time=0.794511|duration=3003|duration_time=0.033367|pkt_pos=41714|pkt_size=3846|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=24|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=1|pts=71506|pts_time=0.794511|pkt_dts=71505|pkt_dts_time=0.794500|best_effort_timestamp=71506|best_effort_timestamp_time=0.794511|duration=3003|duration_time=0.033367|pkt_pos=41714|pkt_size=3846|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=74509|pts_time=0.827878|dts=74508|dts_time=0.827867|duration=3003|duration_time=0.033367|size=1159|pos=47492|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=74509|pts_time=0.827878|pkt_dts=74508|pkt_dts_time=0.827867|best_effort_timestamp=74509|best_effort_timestamp_time=0.827878|duration=3003|duration_time=0.033367|pkt_pos=47492|pkt_size=1159|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=26|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=74509|pts_time=0.827878|pkt_dts=74508|pkt_dts_time=0.827867|best_effort_timestamp=74509|best_effort_timestamp_time=0.827878|duration=3003|duration_time=0.033367|pkt_pos=47492|pkt_size=1159|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=83518|pts_time=0.927978|dts=77511|dts_time=0.861233|duration=3003|duration_time=0.033367|size=1522|pos=48651|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=77512|pts_time=0.861244|pkt_dts=77511|pkt_dts_time=0.861233|best_effort_timestamp=77512|best_effort_timestamp_time=0.861244|duration=3003|duration_time=0.033367|pkt_pos=45560|pkt_size=1932|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=25|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=77512|pts_time=0.861244|pkt_dts=77511|pkt_dts_time=0.861233|best_effort_timestamp=77512|best_effort_timestamp_time=0.861244|duration=3003|duration_time=0.033367|pkt_pos=45560|pkt_size=1932|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=80515|pts_time=0.894611|dts=80514|dts_time=0.894600|duration=3003|duration_time=0.033367|size=719|pos=50173|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=80515|pts_time=0.894611|pkt_dts=80514|pkt_dts_time=0.894600|best_effort_timestamp=80515|best_effort_timestamp_time=0.894611|duration=3003|duration_time=0.033367|pkt_pos=50173|pkt_size=719|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=28|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=80515|pts_time=0.894611|pkt_dts=80514|pkt_dts_time=0.894600|best_effort_timestamp=80515|best_effort_timestamp_time=0.894611|duration=3003|duration_time=0.033367|pkt_pos=50173|pkt_size=719|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=89524|pts_time=0.994711|dts=83517|dts_time=0.927967|duration=3003|duration_time=0.033367|size=1700|pos=50892|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=83518|pts_time=0.927978|pkt_dts=83517|pkt_dts_time=0.927967|best_effort_timestamp=83518|best_effort_timestamp_time=0.927978|duration=3003|duration_time=0.033367|pkt_pos=48651|pkt_size=1522|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=27|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=83518|pts_time=0.927978|pkt_dts=83517|pkt_dts_time=0.927967|best_effort_timestamp=83518|best_effort_timestamp_time=0.927978|duration=3003|duration_time=0.033367|pkt_pos=48651|pkt_size=1522|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=86521|pts_time=0.961344|dts=86520|dts_time=0.961333|duration=3003|duration_time=0.033367|size=1099|pos=52592|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=86521|pts_time=0.961344|pkt_dts=86520|pkt_dts_time=0.961333|best_effort_timestamp=86521|best_effort_timestamp_time=0.961344|duration=3003|duration_time=0.033367|pkt_pos=52592|pkt_size=1099|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=30|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=86521|pts_time=0.961344|pkt_dts=86520|pkt_dts_time=0.961333|best_effort_timestamp=86521|best_effort_timestamp_time=0.961344|duration=3003|duration_time=0.033367|pkt_pos=52592|pkt_size=1099|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=95530|pts_time=1.061444|dts=89523|dts_time=0.994700|duration=3003|duration_time=0.033367|size=2558|pos=53691|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=89524|pts_time=0.994711|pkt_dts=89523|pkt_dts_time=0.994700|best_effort_timestamp=89524|best_effort_timestamp_time=0.994711|duration=3003|duration_time=0.033367|pkt_pos=50892|pkt_size=1700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=29|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=89524|pts_time=0.994711|pkt_dts=89523|pkt_dts_time=0.994700|best_effort_timestamp=89524|best_effort_timestamp_time=0.994711|duration=3003|duration_time=0.033367|pkt_pos=50892|pkt_size=1700|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=92527|pts_time=1.028078|dts=92526|dts_time=1.028067|duration=3003|duration_time=0.033367|size=1008|pos=56249|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=92527|pts_time=1.028078|pkt_dts=92526|pkt_dts_time=1.028067|best_effort_timestamp=92527|best_effort_timestamp_time=1.028078|duration=3003|duration_time=0.033367|pkt_pos=56249|pkt_size=1008|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=32|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=92527|pts_time=1.028078|pkt_dts=92526|pkt_dts_time=1.028067|best_effort_timestamp=92527|best_effort_timestamp_time=1.028078|duration=3003|duration_time=0.033367|pkt_pos=56249|pkt_size=1008|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=101536|pts_time=1.128178|dts=95529|dts_time=1.061433|duration=3003|duration_time=0.033367|size=1236|pos=57257|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=95530|pts_time=1.061444|pkt_dts=95529|pkt_dts_time=1.061433|best_effort_timestamp=95530|best_effort_timestamp_time=1.061444|duration=3003|duration_time=0.033367|pkt_pos=53691|pkt_size=2558|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=31|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=95530|pts_time=1.061444|pkt_dts=95529|pkt_dts_time=1.061433|best_effort_timestamp=95530|best_effort_timestamp_time=1.061444|duration=3003|duration_time=0.033367|pkt_pos=53691|pkt_size=2558|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=98533|pts_time=1.094811|dts=98532|dts_time=1.094800|duration=3003|duration_time=0.033367|size=607|pos=58493|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=98533|pts_time=1.094811|pkt_dts=98532|pkt_dts_time=1.094800|best_effort_timestamp=98533|best_effort_timestamp_time=1.094811|duration=3003|duration_time=0.033367|pkt_pos=58493|pkt_size=607|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=34|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=98533|pts_time=1.094811|pkt_dts=98532|pkt_dts_time=1.094800|best_effort_timestamp=98533|best_effort_timestamp_time=1.094811|duration=3003|duration_time=0.033367|pkt_pos=58493|pkt_size=607|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=107542|pts_time=1.194911|dts=101535|dts_time=1.128167|duration=3003|duration_time=0.033367|size=1883|pos=59100|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=101536|pts_time=1.128178|pkt_dts=101535|pkt_dts_time=1.128167|best_effort_timestamp=101536|best_effort_timestamp_time=1.128178|duration=3003|duration_time=0.033367|pkt_pos=57257|pkt_size=1236|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=33|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=101536|pts_time=1.128178|pkt_dts=101535|pkt_dts_time=1.128167|best_effort_timestamp=101536|best_effort_timestamp_time=1.128178|duration=3003|duration_time=0.033367|pkt_pos=57257|pkt_size=1236|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=104539|pts_time=1.161544|dts=104538|dts_time=1.161533|duration=3003|duration_time=0.033367|size=893|pos=60983|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=104539|pts_time=1.161544|pkt_dts=104538|pkt_dts_time=1.161533|best_effort_timestamp=104539|best_effort_timestamp_time=1.161544|duration=3003|duration_time=0.033367|pkt_pos=60983|pkt_size=893|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=36|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=104539|pts_time=1.161544|pkt_dts=104538|pkt_dts_time=1.161533|best_effort_timestamp=104539|best_effort_timestamp_time=1.161544|duration=3003|duration_time=0.033367|pkt_pos=60983|pkt_size=893|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=113548|pts_time=1.261644|dts=107541|dts_time=1.194900|duration=3003|duration_time=0.033367|size=1305|pos=61876|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=107542|pts_time=1.194911|pkt_dts=107541|pkt_dts_time=1.194900|best_effort_timestamp=107542|best_effort_timestamp_time=1.194911|duration=3003|duration_time=0.033367|pkt_pos=59100|pkt_size=1883|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=35|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=107542|pts_time=1.194911|pkt_dts=107541|pkt_dts_time=1.194900|best_effort_timestamp=107542|best_effort_timestamp_time=1.194911|duration=3003|duration_time=0.033367|pkt_pos=59100|pkt_size=1883|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=110545|pts_time=1.228278|dts=110544|dts_time=1.228267|duration=3003|duration_time=0.033367|size=472|pos=63181|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=110545|pts_time=1.228278|pkt_dts=110544|pkt_dts_time=1.228267|best_effort_timestamp=110545|best_effort_timestamp_time=1.228278|duration=3003|duration_time=0.033367|pkt_pos=63181|pkt_size=472|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=38|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=110545|pts_time=1.228278|pkt_dts=110544|pkt_dts_time=1.228267|best_effort_timestamp=110545|best_effort_timestamp_time=1.228278|duration=3003|duration_time=0.033367|pkt_pos=63181|pkt_size=472|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=119554|pts_time=1.328378|dts=113547|dts_time=1.261633|duration=3003|duration_time=0.033367|size=1411|pos=63653|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=113548|pts_time=1.261644|pkt_dts=113547|pkt_dts_time=1.261633|best_effort_timestamp=113548|best_effort_timestamp_time=1.261644|duration=3003|duration_time=0.033367|pkt_pos=61876|pkt_size=1305|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=37|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=113548|pts_time=1.261644|pkt_dts=113547|pkt_dts_time=1.261633|best_effort_timestamp=113548|best_effort_timestamp_time=1.261644|duration=3003|duration_time=0.033367|pkt_pos=61876|pkt_size=1305|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=116551|pts_time=1.295011|dts=116550|dts_time=1.295000|duration=3003|duration_time=0.033367|size=616|pos=65064|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=116551|pts_time=1.295011|pkt_dts=116550|pkt_dts_time=1.295000|best_effort_timestamp=116551|best_effort_timestamp_time=1.295011|duration=3003|duration_time=0.033367|pkt_pos=65064|pkt_size=616|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=40|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=116551|pts_time=1.295011|pkt_dts=116550|pkt_dts_time=1.295000|best_effort_timestamp=116551|best_effort_timestamp_time=1.295011|duration=3003|duration_time=0.033367|pkt_pos=65064|pkt_size=616|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=125560|pts_time=1.395111|dts=119553|dts_time=1.328367|duration=3003|duration_time=0.033367|size=1291|pos=65680|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=119554|pts_time=1.328378|pkt_dts=119553|pkt_dts_time=1.328367|best_effort_timestamp=119554|best_effort_timestamp_time=1.328378|duration=3003|duration_time=0.033367|pkt_pos=63653|pkt_size=1411|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=39|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=119554|pts_time=1.328378|pkt_dts=119553|pkt_dts_time=1.328367|best_effort_timestamp=119554|best_effort_timestamp_time=1.328378|duration=3003|duration_time=0.033367|pkt_pos=63653|pkt_size=1411|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=122557|pts_time=1.361744|dts=122556|dts_time=1.361733|duration=3003|duration_time=0.033367|size=470|pos=66971|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=122557|pts_time=1.361744|pkt_dts=122556|pkt_dts_time=1.361733|best_effort_timestamp=122557|best_effort_timestamp_time=1.361744|duration=3003|duration_time=0.033367|pkt_pos=66971|pkt_size=470|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=42|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=122557|pts_time=1.361744|pkt_dts=122556|pkt_dts_time=1.361733|best_effort_timestamp=122557|best_effort_timestamp_time=1.361744|duration=3003|duration_time=0.033367|pkt_pos=66971|pkt_size=470|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=131566|pts_time=1.461844|dts=125559|dts_time=1.395100|duration=3003|duration_time=0.033367|size=1977|pos=67441|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=125560|pts_time=1.395111|pkt_dts=125559|pkt_dts_time=1.395100|best_effort_timestamp=125560|best_effort_timestamp_time=1.395111|duration=3003|duration_time=0.033367|pkt_pos=65680|pkt_size=1291|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=41|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=125560|pts_time=1.395111|pkt_dts=125559|pkt_dts_time=1.395100|best_effort_timestamp=125560|best_effort_timestamp_time=1.395111|duration=3003|duration_time=0.033367|pkt_pos=65680|pkt_size=1291|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=128563|pts_time=1.428478|dts=128562|dts_time=1.428467|duration=3003|duration_time=0.033367|size=436|pos=69418|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=128563|pts_time=1.428478|pkt_dts=128562|pkt_dts_time=1.428467|best_effort_timestamp=128563|best_effort_timestamp_time=1.428478|duration=3003|duration_time=0.033367|pkt_pos=69418|pkt_size=436|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=44|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=128563|pts_time=1.428478|pkt_dts=128562|pkt_dts_time=1.428467|best_effort_timestamp=128563|best_effort_timestamp_time=1.428478|duration=3003|duration_time=0.033367|pkt_pos=69418|pkt_size=436|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=137572|pts_time=1.528578|dts=131565|dts_time=1.461833|duration=3003|duration_time=0.033367|size=2566|pos=69854|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=131566|pts_time=1.461844|pkt_dts=131565|pkt_dts_time=1.461833|best_effort_timestamp=131566|best_effort_timestamp_time=1.461844|duration=3003|duration_time=0.033367|pkt_pos=67441|pkt_size=1977|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=43|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=131566|pts_time=1.461844|pkt_dts=131565|pkt_dts_time=1.461833|best_effort_timestamp=131566|best_effort_timestamp_time=1.461844|duration=3003|duration_time=0.033367|pkt_pos=67441|pkt_size=1977|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=134569|pts_time=1.495211|dts=134568|dts_time=1.495200|duration=3003|duration_time=0.033367|size=886|pos=72420|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=134569|pts_time=1.495211|pkt_dts=134568|pkt_dts_time=1.495200|best_effort_timestamp=134569|best_effort_timestamp_time=1.495211|duration=3003|duration_time=0.033367|pkt_pos=72420|pkt_size=886|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=46|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=134569|pts_time=1.495211|pkt_dts=134568|pkt_dts_time=1.495200|best_effort_timestamp=134569|best_effort_timestamp_time=1.495211|duration=3003|duration_time=0.033367|pkt_pos=72420|pkt_size=886|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=140575|pts_time=1.561944|dts=137571|dts_time=1.528567|duration=3003|duration_time=0.033367|size=1330|pos=73306|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=137572|pts_time=1.528578|pkt_dts=137571|pkt_dts_time=1.528567|best_effort_timestamp=137572|best_effort_timestamp_time=1.528578|duration=3003|duration_time=0.033367|pkt_pos=69854|pkt_size=2566|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=45|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=137572|pts_time=1.528578|pkt_dts=137571|pkt_dts_time=1.528567|best_effort_timestamp=137572|best_effort_timestamp_time=1.528578|duration=3003|duration_time=0.033367|pkt_pos=69854|pkt_size=2566|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=143578|pts_time=1.595311|dts=140574|dts_time=1.561933|duration=3003|duration_time=0.033367|size=2227|pos=74636|flags=K__ -frame|media_type=video|stream_index=0|key_frame=0|pts=140575|pts_time=1.561944|pkt_dts=140574|pkt_dts_time=1.561933|best_effort_timestamp=140575|best_effort_timestamp_time=1.561944|duration=3003|duration_time=0.033367|pkt_pos=73306|pkt_size=1330|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=47|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=140575|pts_time=1.561944|pkt_dts=140574|pkt_dts_time=1.561933|best_effort_timestamp=140575|best_effort_timestamp_time=1.561944|duration=3003|duration_time=0.033367|pkt_pos=73306|pkt_size=1330|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=149584|pts_time=1.662044|dts=143577|dts_time=1.595300|duration=3003|duration_time=0.033367|size=2210|pos=76863|flags=___ -frame|media_type=video|stream_index=0|key_frame=1|pts=143578|pts_time=1.595311|pkt_dts=143577|pkt_dts_time=1.595300|best_effort_timestamp=143578|best_effort_timestamp_time=1.595311|duration=3003|duration_time=0.033367|pkt_pos=74636|pkt_size=2227|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|coded_picture_number=48|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=1|pts=143578|pts_time=1.595311|pkt_dts=143577|pkt_dts_time=1.595300|best_effort_timestamp=143578|best_effort_timestamp_time=1.595311|duration=3003|duration_time=0.033367|pkt_pos=74636|pkt_size=2227|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=I|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=146581|pts_time=1.628678|dts=146580|dts_time=1.628667|duration=3003|duration_time=0.033367|size=1498|pos=79073|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=146581|pts_time=1.628678|pkt_dts=146580|pkt_dts_time=1.628667|best_effort_timestamp=146581|best_effort_timestamp_time=1.628678|duration=3003|duration_time=0.033367|pkt_pos=79073|pkt_size=1498|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=50|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=146581|pts_time=1.628678|pkt_dts=146580|pkt_dts_time=1.628667|best_effort_timestamp=146581|best_effort_timestamp_time=1.628678|duration=3003|duration_time=0.033367|pkt_pos=79073|pkt_size=1498|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=155590|pts_time=1.728778|dts=149583|dts_time=1.662033|duration=3003|duration_time=0.033367|size=1721|pos=80571|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=149584|pts_time=1.662044|pkt_dts=149583|pkt_dts_time=1.662033|best_effort_timestamp=149584|best_effort_timestamp_time=1.662044|duration=3003|duration_time=0.033367|pkt_pos=76863|pkt_size=2210|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=49|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=149584|pts_time=1.662044|pkt_dts=149583|pkt_dts_time=1.662033|best_effort_timestamp=149584|best_effort_timestamp_time=1.662044|duration=3003|duration_time=0.033367|pkt_pos=76863|pkt_size=2210|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=152587|pts_time=1.695411|dts=152586|dts_time=1.695400|duration=3003|duration_time=0.033367|size=1238|pos=82292|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=152587|pts_time=1.695411|pkt_dts=152586|pkt_dts_time=1.695400|best_effort_timestamp=152587|best_effort_timestamp_time=1.695411|duration=3003|duration_time=0.033367|pkt_pos=82292|pkt_size=1238|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=52|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=152587|pts_time=1.695411|pkt_dts=152586|pkt_dts_time=1.695400|best_effort_timestamp=152587|best_effort_timestamp_time=1.695411|duration=3003|duration_time=0.033367|pkt_pos=82292|pkt_size=1238|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=161596|pts_time=1.795511|dts=155589|dts_time=1.728767|duration=3003|duration_time=0.033367|size=1753|pos=83530|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=155590|pts_time=1.728778|pkt_dts=155589|pkt_dts_time=1.728767|best_effort_timestamp=155590|best_effort_timestamp_time=1.728778|duration=3003|duration_time=0.033367|pkt_pos=80571|pkt_size=1721|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=51|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=155590|pts_time=1.728778|pkt_dts=155589|pkt_dts_time=1.728767|best_effort_timestamp=155590|best_effort_timestamp_time=1.728778|duration=3003|duration_time=0.033367|pkt_pos=80571|pkt_size=1721|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=158593|pts_time=1.762144|dts=158592|dts_time=1.762133|duration=3003|duration_time=0.033367|size=1014|pos=85283|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=158593|pts_time=1.762144|pkt_dts=158592|pkt_dts_time=1.762133|best_effort_timestamp=158593|best_effort_timestamp_time=1.762144|duration=3003|duration_time=0.033367|pkt_pos=85283|pkt_size=1014|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=54|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=158593|pts_time=1.762144|pkt_dts=158592|pkt_dts_time=1.762133|best_effort_timestamp=158593|best_effort_timestamp_time=1.762144|duration=3003|duration_time=0.033367|pkt_pos=85283|pkt_size=1014|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=167602|pts_time=1.862244|dts=161595|dts_time=1.795500|duration=3003|duration_time=0.033367|size=2408|pos=86297|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=161596|pts_time=1.795511|pkt_dts=161595|pkt_dts_time=1.795500|best_effort_timestamp=161596|best_effort_timestamp_time=1.795511|duration=3003|duration_time=0.033367|pkt_pos=83530|pkt_size=1753|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=53|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=161596|pts_time=1.795511|pkt_dts=161595|pkt_dts_time=1.795500|best_effort_timestamp=161596|best_effort_timestamp_time=1.795511|duration=3003|duration_time=0.033367|pkt_pos=83530|pkt_size=1753|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=164599|pts_time=1.828878|dts=164598|dts_time=1.828867|duration=3003|duration_time=0.033367|size=1727|pos=88705|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=164599|pts_time=1.828878|pkt_dts=164598|pkt_dts_time=1.828867|best_effort_timestamp=164599|best_effort_timestamp_time=1.828878|duration=3003|duration_time=0.033367|pkt_pos=88705|pkt_size=1727|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=56|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=164599|pts_time=1.828878|pkt_dts=164598|pkt_dts_time=1.828867|best_effort_timestamp=164599|best_effort_timestamp_time=1.828878|duration=3003|duration_time=0.033367|pkt_pos=88705|pkt_size=1727|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=173608|pts_time=1.928978|dts=167601|dts_time=1.862233|duration=3003|duration_time=0.033367|size=1504|pos=90432|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=167602|pts_time=1.862244|pkt_dts=167601|pkt_dts_time=1.862233|best_effort_timestamp=167602|best_effort_timestamp_time=1.862244|duration=3003|duration_time=0.033367|pkt_pos=86297|pkt_size=2408|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=55|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=167602|pts_time=1.862244|pkt_dts=167601|pkt_dts_time=1.862233|best_effort_timestamp=167602|best_effort_timestamp_time=1.862244|duration=3003|duration_time=0.033367|pkt_pos=86297|pkt_size=2408|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=170605|pts_time=1.895611|dts=170604|dts_time=1.895600|duration=3003|duration_time=0.033367|size=957|pos=91936|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=170605|pts_time=1.895611|pkt_dts=170604|pkt_dts_time=1.895600|best_effort_timestamp=170605|best_effort_timestamp_time=1.895611|duration=3003|duration_time=0.033367|pkt_pos=91936|pkt_size=957|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=58|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=170605|pts_time=1.895611|pkt_dts=170604|pkt_dts_time=1.895600|best_effort_timestamp=170605|best_effort_timestamp_time=1.895611|duration=3003|duration_time=0.033367|pkt_pos=91936|pkt_size=957|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=179614|pts_time=1.995711|dts=173607|dts_time=1.928967|duration=3003|duration_time=0.033367|size=1890|pos=92893|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=173608|pts_time=1.928978|pkt_dts=173607|pkt_dts_time=1.928967|best_effort_timestamp=173608|best_effort_timestamp_time=1.928978|duration=3003|duration_time=0.033367|pkt_pos=90432|pkt_size=1504|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=57|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=173608|pts_time=1.928978|pkt_dts=173607|pkt_dts_time=1.928967|best_effort_timestamp=173608|best_effort_timestamp_time=1.928978|duration=3003|duration_time=0.033367|pkt_pos=90432|pkt_size=1504|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=176611|pts_time=1.962344|dts=176610|dts_time=1.962333|duration=3003|duration_time=0.033367|size=1239|pos=94783|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=176611|pts_time=1.962344|pkt_dts=176610|pkt_dts_time=1.962333|best_effort_timestamp=176611|best_effort_timestamp_time=1.962344|duration=3003|duration_time=0.033367|pkt_pos=94783|pkt_size=1239|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=60|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=176611|pts_time=1.962344|pkt_dts=176610|pkt_dts_time=1.962333|best_effort_timestamp=176611|best_effort_timestamp_time=1.962344|duration=3003|duration_time=0.033367|pkt_pos=94783|pkt_size=1239|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=185620|pts_time=2.062444|dts=179613|dts_time=1.995700|duration=3003|duration_time=0.033367|size=1856|pos=96022|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=179614|pts_time=1.995711|pkt_dts=179613|pkt_dts_time=1.995700|best_effort_timestamp=179614|best_effort_timestamp_time=1.995711|duration=3003|duration_time=0.033367|pkt_pos=92893|pkt_size=1890|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=59|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=179614|pts_time=1.995711|pkt_dts=179613|pkt_dts_time=1.995700|best_effort_timestamp=179614|best_effort_timestamp_time=1.995711|duration=3003|duration_time=0.033367|pkt_pos=92893|pkt_size=1890|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=182617|pts_time=2.029078|dts=182616|dts_time=2.029067|duration=3003|duration_time=0.033367|size=1302|pos=97878|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=182617|pts_time=2.029078|pkt_dts=182616|pkt_dts_time=2.029067|best_effort_timestamp=182617|best_effort_timestamp_time=2.029078|duration=3003|duration_time=0.033367|pkt_pos=97878|pkt_size=1302|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=62|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=182617|pts_time=2.029078|pkt_dts=182616|pkt_dts_time=2.029067|best_effort_timestamp=182617|best_effort_timestamp_time=2.029078|duration=3003|duration_time=0.033367|pkt_pos=97878|pkt_size=1302|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=191626|pts_time=2.129178|dts=185619|dts_time=2.062433|duration=3003|duration_time=0.033367|size=1666|pos=99180|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=185620|pts_time=2.062444|pkt_dts=185619|pkt_dts_time=2.062433|best_effort_timestamp=185620|best_effort_timestamp_time=2.062444|duration=3003|duration_time=0.033367|pkt_pos=96022|pkt_size=1856|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=61|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=185620|pts_time=2.062444|pkt_dts=185619|pkt_dts_time=2.062433|best_effort_timestamp=185620|best_effort_timestamp_time=2.062444|duration=3003|duration_time=0.033367|pkt_pos=96022|pkt_size=1856|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=188623|pts_time=2.095811|dts=188622|dts_time=2.095800|duration=3003|duration_time=0.033367|size=974|pos=100846|flags=___ -frame|media_type=video|stream_index=0|key_frame=0|pts=188623|pts_time=2.095811|pkt_dts=188622|pkt_dts_time=2.095800|best_effort_timestamp=188623|best_effort_timestamp_time=2.095811|duration=3003|duration_time=0.033367|pkt_pos=100846|pkt_size=974|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|coded_picture_number=64|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=188623|pts_time=2.095811|pkt_dts=188622|pkt_dts_time=2.095800|best_effort_timestamp=188623|best_effort_timestamp_time=2.095811|duration=3003|duration_time=0.033367|pkt_pos=100846|pkt_size=974|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=B|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message packet|codec_type=video|stream_index=0|pts=197632|pts_time=2.195911|dts=191625|dts_time=2.129167|duration=3003|duration_time=0.033367|size=580|pos=101820|flags=__C -frame|media_type=video|stream_index=0|key_frame=0|pts=191626|pts_time=2.129178|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=191626|best_effort_timestamp_time=2.129178|duration=3003|duration_time=0.033367|pkt_pos=99180|pkt_size=1666|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|coded_picture_number=63|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message +frame|media_type=video|stream_index=0|key_frame=0|pts=191626|pts_time=2.129178|pkt_dts=N/A|pkt_dts_time=N/A|best_effort_timestamp=191626|best_effort_timestamp_time=2.129178|duration=3003|duration_time=0.033367|pkt_pos=99180|pkt_size=1666|width=160|height=240|crop_top=0|crop_bottom=0|crop_left=0|crop_right=0|pix_fmt=yuv420p|sample_aspect_ratio=2:1|pict_type=P|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=tv|color_space=smpte170m|color_primaries=smpte170m|color_transfer=bt709|chroma_location=topleft|side_datum/3x3_displaymatrix:side_data_type=3x3 displaymatrix|side_datum/3x3_displaymatrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/3x3_displaymatrix:rotation=0|side_datum/h_26_45__user_data_unregistered_sei_message:side_data_type=H.26[45] User Data Unregistered SEI message stream|index=0|codec_name=h264|profile=77|codec_type=video|codec_tag_string=avc1|codec_tag=0x31637661|width=160|height=240|coded_width=160|coded_height=240|closed_captions=0|film_grain=0|has_b_frames=1|sample_aspect_ratio=2:1|display_aspect_ratio=4:3|pix_fmt=yuv420p|level=12|color_range=tv|color_space=smpte170m|color_transfer=bt709|color_primaries=smpte170m|chroma_location=topleft|field_order=progressive|refs=2|is_avc=true|nal_length_size=4|id=0x1|r_frame_rate=30000/1001|avg_frame_rate=6372000/212521|time_base=1/90000|start_pts=0|start_time=0.000000|duration_ts=2125200|duration=23.613333|bit_rate=333874|max_bit_rate=N/A|bits_per_raw_sample=8|nb_frames=708|nb_read_frames=65|nb_read_packets=66|extradata_size=34|disposition:default=1|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:creation_time=2008-05-12T20:59:27.000000Z|tag:language=eng|tag:handler_name=Apple Video Media Handler|tag:vendor_id=appl|tag:encoder=H.264|side_datum/display_matrix:side_data_type=Display Matrix|side_datum/display_matrix:displaymatrix=\n00000000: 131072 0 0\n00000001: 0 65536 0\n00000002: 0 0 1073741824\n|side_datum/display_matrix:rotation=0 diff --git a/tests/ref/fate/png-icc b/tests/ref/fate/png-icc index 417cbcb91d..19f8c0a752 100644 --- a/tests/ref/fate/png-icc +++ b/tests/ref/fate/png-icc @@ -29,8 +29,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=0 top_field_first=0 repeat_pict=0 diff --git a/tests/ref/fate/png-side-data b/tests/ref/fate/png-side-data index 0d1f88ccb2..9f7ccec53c 100644 --- a/tests/ref/fate/png-side-data +++ b/tests/ref/fate/png-side-data @@ -21,8 +21,6 @@ crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 pict_type=I -coded_picture_number=0 -display_picture_number=0 interlaced_frame=1 top_field_first=0 repeat_pict=0 From patchwork Thu Jan 25 13:43:44 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45829 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82344pzf; Thu, 25 Jan 2024 05:48:00 -0800 (PST) X-Google-Smtp-Source: AGHT+IGr/VmnHwHVn9nJA7ybLeEDywGZokejD38j424dD8ZQAii0JPKxEJLjUiq6pAy/hWAZVLl+ X-Received: by 2002:a05:6402:202e:b0:55c:d3f2:93a6 with SMTP id ay14-20020a056402202e00b0055cd3f293a6mr631945edb.53.1706190480274; Thu, 25 Jan 2024 05:48:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190480; cv=none; d=google.com; s=arc-20160816; b=P20Uy3Toj5Exyi2ZKVsfPr+oZjypZTE0W4ikG83OlasPozv+mCjLvhoFJroUyKtCZG uheYjgYM8QK0G5IM2ctgv0H3A4+vaFm1BdLKJ73gvXa6uzzWWZGHpAd8QIos+RDLPPaF 9mNU6g5OVuhjBhbLF/vQMtt4dcrNAtLea+len1dmtaHQpg9rjr0H4vSpP23QNe25t7vY zvbo960RxW8shEHXtclqhkUs/E2Hfq6FGdYaEFKOxnSE0e6q4kELVP+k/9e55zuRlYZD Rpm8PYEJkrpJQYS2raU1dF3Z+Hfjfl+yFnm/hCjdArMb30q5fNUsbp+JlgW5BW8wCN7X n5NQ== 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=DQZIkPxIa0mgdm+BzJaaiIDy8+1CLypsGYUIynHibYU=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=Vy7ptZ6jsaANq+HRS3oaDK8+A24luEQj3FLgo/X+JPDf5Gk6vjgJnVz1rNZiIb+eST uqYSBChH1IunwHlk9bbDxnkh5iGp8P3u8EczKgJodQPeZH9Q9dZTXCKNyOZxLXDqU2kj zsz7IJcjvOVskdJZwjZb6SUQgbsOiUXhkcelRp+CDAhL7hQXUEGAk+m/dNN38DN2Y1EO AkWioHqzcrBVbmVsDG0VZ6pZW4BX3nKTQLt9Du4gYrUgaBcy34Lgn8QKLMiDPwwGOU0Y GixajwKdwKg+TaN7X/rAQVyo8wyRXymgHFMZCOj7lMQ+Fh/5zGW795FUx8IT1vglK/Yc C6zg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=Rt9CEO3v; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id j24-20020aa7c418000000b0055a4e60f287si7127441edq.495.2024.01.25.05.47.59; Thu, 25 Jan 2024 05:48:00 -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=@gmail.com header.s=20230601 header.b=Rt9CEO3v; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D25FC68D1B3; Thu, 25 Jan 2024 15:45:08 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 72ED268D197 for ; Thu, 25 Jan 2024 15:45:03 +0200 (EET) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-1d71207524dso29238255ad.1 for ; Thu, 25 Jan 2024 05:45:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190301; x=1706795101; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=5V1tZzR3AGtZPaqbAqBTfu3Pua/Qhomoxad+E1mGu4A=; b=Rt9CEO3vVrbb+4s7S1oB7Ch/FPEje3VVQ6CWRu5g7X97aphBbP71mpv+R6F4vCDgkO BgmrXI2S+7XfaAXf6rywPndW6s0oCMjuSTzLHzHwjtZPAeQLXkhgW6qdouvPPfx4UA7E 82Wn4J8niPrR78qgr5EbAwKvtMwFEGDmKvmvSi1YTvZjAPmHxXb2jKIe3MxVbOT8hwPv ucv8RmSTzrNI9xqQGkdqyJ6zOuhnSQBYr9c+G7mTomUgMyJqXBAm9ZfkO6h0wauMFh1W frBwIBM79Yh76Eymd2KtYE3jUr90BU+uJDFyzhkxt26DBPafy1oZk5idNubcwVdtp7yK yViw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190301; x=1706795101; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5V1tZzR3AGtZPaqbAqBTfu3Pua/Qhomoxad+E1mGu4A=; b=lBGEvxc5ESphWmtqfU3ehEBVjOEl2HZkJvDtxq0RbEIMNRvtnfE0fHnPlXcM9t3UqL 8yiJK2Bs3l7xZBME8AwjgLJrLZJw2fDXVFLlpRX55Z8af6ZC2dwLUYndZleJX8lqNKBY 5MiQnmfhD/I7X3M8oYAp/S+YSfnWSA65fmRwAipegeOz/v1So56Tu/hWbXLTpOkdjyXD nOhy+TmdLJTYLe2ecICGE8wx8pPBPJoAVzR26XpigDGC2i1v7XFlNZ2z6o4PwCL6ttk/ i1dNHtWjzHAQoGRbDOUB95JViwJECEBTYLR6SK7YqZ/+2i1Ppxz50lFHAKIavSDEA88T r3Sw== X-Gm-Message-State: AOJu0YwnOYfLw96aGt9Ge50jgcVqCqsdsphUQT/YLEqQ9xS7gQDTiPZG KTa2Q/bJhpx01VllHDbfuZACeRCt+rmuGwzE+P0453yjqxI9qEOvVnlNmiI7 X-Received: by 2002:a17:902:ac86:b0:1d7:6b4d:f48f with SMTP id h6-20020a170902ac8600b001d76b4df48fmr828778plr.94.1706190301251; Thu, 25 Jan 2024 05:45:01 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.45.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:45:00 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:44 -0300 Message-ID: <20240125134425.374-22-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 21/24] avcodec/version_major: postpone some deprecations until the next bump 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: Ig0TLIXvLZ0W They are either too recent, or can't be removed yet. Signed-off-by: James Almer --- libavcodec/version_major.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index d849d55cb2..065b0c1378 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -37,10 +37,10 @@ * at once through the bump. This improves the git bisect-ability of the change. */ -#define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_SUBFRAMES (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_TICKS_PER_FRAME (LIBAVCODEC_VERSION_MAJOR < 61) -#define FF_API_DROPCHANGED (LIBAVCODEC_VERSION_MAJOR < 61) +#define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 62) +#define FF_API_SUBFRAMES (LIBAVCODEC_VERSION_MAJOR < 62) +#define FF_API_TICKS_PER_FRAME (LIBAVCODEC_VERSION_MAJOR < 62) +#define FF_API_DROPCHANGED (LIBAVCODEC_VERSION_MAJOR < 62) #define FF_API_AVFFT (LIBAVCODEC_VERSION_MAJOR < 62) #define FF_API_FF_PROFILE_LEVEL (LIBAVCODEC_VERSION_MAJOR < 62) From patchwork Thu Jan 25 13:43:45 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45831 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82509pzf; Thu, 25 Jan 2024 05:48:23 -0800 (PST) X-Google-Smtp-Source: AGHT+IGvM6j0CV5sc2eaePOzgL33wsM3WBLt0nD+NhRnJs+RpiLpnqygOf6lF3mlgODu63IXOrHk X-Received: by 2002:a5d:468e:0:b0:337:bfe1:a99 with SMTP id u14-20020a5d468e000000b00337bfe10a99mr361059wrq.153.1706190503480; Thu, 25 Jan 2024 05:48:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190503; cv=none; d=google.com; s=arc-20160816; b=HhCjxJ+Bs5bzxcFRzSWngyOLEZ6/X5ViK5hk69fCgq33m08RMQSdEYVi/+NfEkZNPR xW2DSBFmfhrJ9LNaQON0rclivWgsz8o4S2zpHiTJuO80woFMyoq3dQInqaYlyW5UX4qn kGkh/5AVyXIexO4Sz5/xzDxLs9acxgeTHlMctXgCrg56w/sgvxPaUkriiyAcfwIxBTtu 66mgxapj1Nh1pZuMdskwVVOFHo2kKuMcRJaPHBtBuPz57JYiCnZOLJ9ddO3VEQEL4qO5 OZwOKkgIlPg9z2aOOxqOPs8kl+u5RLgYNTnZF+TgbHYohbfsDjKZWptG5EEY4TkF0Uq6 cR7Q== 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=iiPI+kvtAT3vLE1Foc2TWAokrS/w1GaNdOXAXpJnYJI=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=SOrZLMlBTIx3lBXdBDZxq3a7CxW4P14QNymC9xarZdr0WxcRTBAbfzXpXS5ZCqrD0e 1O0jTlNEsmH2Zrk1IepAPJa8EX33imNjRmial1yxrbZMFi3hIBm2e9YArC8pOVFrh7Pq 3jErpR0wd9+iOEr/79NlUrge1HCAqb1y1gbG7xKst0mAj4i7OBqgBlgJvcyTQoGaDu3f aAHCsFAm6GM/q4pVesW03iGQc0xmoAIkZQ2/t7ruI04cws02riImyZiSXhwRyUCWb4JL ElMynaQLGrXjE86HiJkuzbuQzH9BYFrsRh36K9mrefW4Fo09ITx3N3UIxJazTvNSmuuD wKYg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b="jJwb/fC6"; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id s17-20020a50ab11000000b0055c1c5b5bbasi5151498edc.640.2024.01.25.05.48.23; Thu, 25 Jan 2024 05:48: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=@gmail.com header.s=20230601 header.b="jJwb/fC6"; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0F75A68D1C3; Thu, 25 Jan 2024 15:45:11 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0831D68D195 for ; Thu, 25 Jan 2024 15:45:04 +0200 (EET) Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-1d89518d3b1so1341425ad.0 for ; Thu, 25 Jan 2024 05:45:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190302; x=1706795102; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=sbkH+JF5lBe0fO57PW0r9OaCBRGWI+Nm4gBwq7fImKo=; b=jJwb/fC6L0jzln7aeQSTP1uc4KkF4B0yvqW9msDNyp3AqEadJLJVfi+XSriMu2+xgX G7JpWerCRWtIEG/sGaJEJEsoibEh72/eFo8NlDj+LMSZ+vYiACDsr5JjaojC4b+tsSzJ 6wNm+meNb11waUE+7hVjGitJLf3ZcbLMQe6qvRz4Mh4qVi1Pu7gQbi5Afz6jgw0G6UQO vbgCX64sKIssnh+1tO9I9PZY7NGHw9nLkYO1vDzs1TtIBpWkLWURlAP/5gsGgcCtXvvm ZhmiNoZh6Q0+axYzb9j/qqFyq7J1wOgZ+SdIu5CabNJvqVJNjl3RGDCJkkL9kc9wNmeX ZVFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190302; x=1706795102; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sbkH+JF5lBe0fO57PW0r9OaCBRGWI+Nm4gBwq7fImKo=; b=PXF8uRXc+Jd5wMC0P8dBtKJoa8OIjUf8fRVF3FAhAO5Nsp/Z6wxMN1MMXPlzL1XQ1G GtTLHlR6042QLJrurybzVpiq8aoiZz58v/8loGDCppi4gniRYK98+0YcqXE6cKrnVVVQ SmtQxuwH/c69PkrbK/NhRXbjX34HsqVwFJNY4TVckTAu9+pJDI/BzyZBFLZ8jDdpD2Lx USdkVi0zbw52uQroA01TvTuLoOOUyzfjHLY4+M4gvVgGuU8Y82m/aj9XtakUFlsvL7M/ mFFM2Ne+DHt7zETEglEU9ehJX2z6zycoNWO9aiBSwSnYErXZSfGklQaSxvP/lfs4JXmi V7Zw== X-Gm-Message-State: AOJu0Ywu8gwIzPJW8THwpPSn3ajHTAkNhY0Pnac/k6WxuUjZvdxSmvuA Jo9fHY2Kuiyqmkg6sbJu5l/hV7t3r0XXqwV02oCSepaAF1OueSkQAzFVWrJs X-Received: by 2002:a17:902:f7c7:b0:1d7:711d:26d3 with SMTP id h7-20020a170902f7c700b001d7711d26d3mr1256094plw.62.1706190302494; Thu, 25 Jan 2024 05:45:02 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.45.01 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:45:02 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:45 -0300 Message-ID: <20240125134425.374-23-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 22/24] avformat/version_major: postpone some deprecations until the next bump 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: Q4PLcVKCI0Yw They are either too recent, or are not trivial to remove. Signed-off-by: James Almer --- libavformat/version_major.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/libavformat/version_major.h b/libavformat/version_major.h index 2c8ab84112..d87f91ea6d 100644 --- a/libavformat/version_major.h +++ b/libavformat/version_major.h @@ -41,11 +41,11 @@ * at once through the bump. This improves the git bisect-ability of the change. * */ -#define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 61) -#define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 61) -#define FF_API_LAVF_SHORTEST (LIBAVFORMAT_VERSION_MAJOR < 61) -#define FF_API_ALLOW_FLUSH (LIBAVFORMAT_VERSION_MAJOR < 61) -#define FF_API_AVSTREAM_SIDE_DATA (LIBAVFORMAT_VERSION_MAJOR < 61) +#define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 62) +#define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 62) +#define FF_API_LAVF_SHORTEST (LIBAVFORMAT_VERSION_MAJOR < 62) +#define FF_API_ALLOW_FLUSH (LIBAVFORMAT_VERSION_MAJOR < 62) +#define FF_API_AVSTREAM_SIDE_DATA (LIBAVFORMAT_VERSION_MAJOR < 62) #define FF_API_R_FRAME_RATE 1 From patchwork Thu Jan 25 13:43:46 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45832 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82597pzf; Thu, 25 Jan 2024 05:48:33 -0800 (PST) X-Google-Smtp-Source: AGHT+IEkYFQixqiy7sSDvmFhTUORq4ClpSK7gjPIc+7Kx+Eglq+h/O3ixMkPyXk59aN/nUOiGJwe X-Received: by 2002:a17:906:5f89:b0:a30:64ce:64d7 with SMTP id a9-20020a1709065f8900b00a3064ce64d7mr481251eju.57.1706190512898; Thu, 25 Jan 2024 05:48:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190512; cv=none; d=google.com; s=arc-20160816; b=E6iXkbnDxo2uaulh9M1WNEt0yQciWmCdplh55+WRmHA8Nm63WTEoyeHCjbZCTZFm9a Fk1im5JLuSUSQMlyFgYIkot36OJGsVcGZDJELxMkOBOrG6NGBNIcfHeANSBvjcFgBSc9 P1JX+K2HLw9SiGYX3lD1oCzAXQy4bGndtw5sYCs+1NijgwBG78KAvsBMqlIta85OH3A/ wGyhYOMNx/JsuoulsrnE6ITPbUiYlijDNfFufFxaKXQtaiLZOTsmSt76jOm6JM7xvrvp BdSFpg9yjV4FTML5c8CYqSBLIoX6UB04VyGC45ddvUEQ9+bATchXXMDNatzVVVBXAEym uZeQ== 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=5y5msN+eLfF74zP9+f+IaN7Dk2l63Od65QCjDTmK7MM=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=mg5vVoKXUFqlY5+IEGN+OpIBLW9g7XcU4BngFoBBSCFChsI10DxAg/O1FGomqWBGTx wUl/uvZYrdoTloSxL7jPgVRg4wb2oDqCR5zMPXexwwu7WnzT1z9CvTjRjv6aMhS7I/s6 dV5xSSln/TPTHetxxlnbePaaWDcktgl1SqhrL0fzN/RqKg+Jp6E5LuEl1XfwtITOzylD FDgh4SKHietsOI/pwUEOlcm19TXb5fihU5lR16qfjbeOwNjaISZYjwAEpr8cZA8zy/Wm N3CfsU1L47is0O8xqTD9wNUqvoFoUCFcBbU1TC3fj0UZv2VMQWwl46tWJ5M4t4s0kIU8 tyIA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=G10hHg9r; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id p11-20020a1709060dcb00b00a26ebacaaffsi982327eji.552.2024.01.25.05.48.32; Thu, 25 Jan 2024 05:48:32 -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=@gmail.com header.s=20230601 header.b=G10hHg9r; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 1174868D1CB; Thu, 25 Jan 2024 15:45:12 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8768568D179 for ; Thu, 25 Jan 2024 15:45:06 +0200 (EET) Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-1d70b0e521eso48956505ad.1 for ; Thu, 25 Jan 2024 05:45:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190304; x=1706795104; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=wxn8kZISZZkqJBtCW4ojzBCJLHgu4mHfyG0kXpLSRRc=; b=G10hHg9rC+iUNU5WjTlCloCdgw/3Ktukl4kDOkSiYfcrd8TDYIg7mQO4IXZhU7HgH0 92qyEFyQzdGYybiSG9fooL1Q4GxC7FSI2ZtH5VhDnYDSjY1R5C5PYu4ZZ/L7481HSIw+ vM88IzXUbxcK4yQ7XsaWN+OvH0jNeFayVTZFDk/EVn+aFzBB2/08CVLMtLmNYWp5WzB9 tpxkYJWn+uKeC/TepIRzsYuVMYTkHYcpHxtDDqE9ugYmMbS6XfDc4ouDUoawFW2L7yA/ LkVE1NF/K8iADbqr+hb0JffJp8FNCM8sM+V0CH2xwgbWsIWP1AIEhEFQJPmuHdsSIERT XkDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190304; x=1706795104; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wxn8kZISZZkqJBtCW4ojzBCJLHgu4mHfyG0kXpLSRRc=; b=ZA9xeaA9bKIKkVbjhXwVagrN0gID6MNpC2qwkqKQ9+nv7aqDD3R3E6nWqgniZOFtOg j2gBTB2qmhyGYv+iOiIKZBQkW1ekm2SLLSCSwhLN//zGecpedTb9NK77MSeKpuOyBSK4 U7MKsh9IVDtF+w6w8FnX6oiP8vKJqU72IlziObj2vwUdYCIx67c7UdzXkBRW73sUfvpf wmLvXU2p+xctNOmwYMbUS5vb1IMNe5RiCvd8xtVZCpWzuuem7+UdsfNpyXf5YAaPuQP7 vFbpd1FMzKxuO+i/SDnwA3aolxKNiAs8Kk8AuoIw0qM6ogCKICbMhs9fM+GpWSiW1jk+ GzAA== X-Gm-Message-State: AOJu0Yy60Fjy7kWbsAoIF6h2j1dN2r7Hq34ka8wYy5CvfHbwcdyssmfp CqSStPvO4IOJZyPj7PZngNaY6xyK9RYbHvhB/be8OINYxN3PBDsDbM0NS1em X-Received: by 2002:a17:903:183:b0:1d7:8237:f770 with SMTP id z3-20020a170903018300b001d78237f770mr1404768plg.17.1706190303812; Thu, 25 Jan 2024 05:45:03 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.45.02 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:45:03 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:46 -0300 Message-ID: <20240125134425.374-24-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 23/24] avutil/version_major: postpone some deprecations until the next bump 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: FuYM/lZBlfTF They are too recent. Signed-off-by: James Almer --- libavutil/version.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/libavutil/version.h b/libavutil/version.h index a7df8473e1..2cbee6a67a 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -105,12 +105,12 @@ * @{ */ -#define FF_API_HDR_VIVID_THREE_SPLINE (LIBAVUTIL_VERSION_MAJOR < 59) -#define FF_API_FRAME_PKT (LIBAVUTIL_VERSION_MAJOR < 59) -#define FF_API_INTERLACED_FRAME (LIBAVUTIL_VERSION_MAJOR < 59) -#define FF_API_FRAME_KEY (LIBAVUTIL_VERSION_MAJOR < 59) -#define FF_API_PALETTE_HAS_CHANGED (LIBAVUTIL_VERSION_MAJOR < 59) -#define FF_API_VULKAN_CONTIGUOUS_MEMORY (LIBAVUTIL_VERSION_MAJOR < 59) +#define FF_API_HDR_VIVID_THREE_SPLINE (LIBAVUTIL_VERSION_MAJOR < 60) +#define FF_API_FRAME_PKT (LIBAVUTIL_VERSION_MAJOR < 60) +#define FF_API_INTERLACED_FRAME (LIBAVUTIL_VERSION_MAJOR < 60) +#define FF_API_FRAME_KEY (LIBAVUTIL_VERSION_MAJOR < 60) +#define FF_API_PALETTE_HAS_CHANGED (LIBAVUTIL_VERSION_MAJOR < 60) +#define FF_API_VULKAN_CONTIGUOUS_MEMORY (LIBAVUTIL_VERSION_MAJOR < 60) /** * @} From patchwork Thu Jan 25 13:43:47 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 45833 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8888:b0:199:de12:6fa6 with SMTP id d8csp82681pzf; Thu, 25 Jan 2024 05:48:42 -0800 (PST) X-Google-Smtp-Source: AGHT+IHKg89mUzuHMyeo0j/G1ydEOSa47VYAlsNRNmbH5S79SUp1LfqZTIvz7F1BJDVXulM8l5/H X-Received: by 2002:a17:907:780d:b0:a27:d3ee:2ef5 with SMTP id la13-20020a170907780d00b00a27d3ee2ef5mr1264512ejc.24.1706190521785; Thu, 25 Jan 2024 05:48:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706190521; cv=none; d=google.com; s=arc-20160816; b=ao0klw8TDn+ftU4AnEsYrFfWmYPVJyTy9dTvS3k8fzHMae4T2DmQFUEmKghPBtUqVz S15BCExp1tGuEtaLh/KG1b3E2ac+j2BwRP9QNgAWcQt0Qa8uNz8/4uoMkt0aQL29z/p/ k/G21oFkpX3AnKXlj/S3gSwPYVuhy8i2QYA+MkNYzN3dvaw0qgcPunPCAXw7b6MMOXSI /2KFekQa6cXrKD+htq4K8Ga3tuU0KJslVuhmxVu3hToW2egIUhGqJziAEYU4UIwWLgAB 8q9f/yuBOMiL9I4kxZS82v+eOF3pKLdmLlTSXI5dSyETt4uHGkTz3z7lkCIPX7zsw4BC IgFw== 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=LMTLfju4l6q8RJoIOj+dLjFCILTVYs7PicoUcK1PuI0=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=Y973MFf+YftWjKPlvFv+ml5gJQHXXDUtlhF9t4lnM7A6Hia8DmA5+GkYopz0ahAdJi bWzAO08t740sD80xnwSaaJq1XUJ3u8c8yVqQjiRePXXTut7CAUI/LcqRw2HKa6Y/Ogz2 GhAyplgwdxTTK70XNfhO1ylSCpCwAHDJE3f/VLH2DB2cHBm4zur5GELsrQdTk81cBnh5 L1ctFkTjJa84tCmQwJ82p7GBPbIftO3gq9wZgKWDhESohGYanBguOuCkBtfyQMBsqOmk A1U5xPgaSWqJGeUBeuS0SnU9jiY6L9hxSikHZ7RRFV02dJudH7sAM1npHVjhd21Ue2S/ 6EqQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=HcPacUpL; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id k4-20020a1709063e0400b00a315fb2d7c5si885150eji.361.2024.01.25.05.48.41; Thu, 25 Jan 2024 05:48:41 -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=@gmail.com header.s=20230601 header.b=HcPacUpL; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0DFC468D1D1; Thu, 25 Jan 2024 15:45:13 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3944168D195 for ; Thu, 25 Jan 2024 15:45:07 +0200 (EET) Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-1d74045c463so33598895ad.3 for ; Thu, 25 Jan 2024 05:45:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706190305; x=1706795105; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=t24/Er7DEGJqrWQOOpS7ncR+LchZlfJw5iZ0u2Iekfg=; b=HcPacUpLAuh8BRgBZk+COLWe5aN4zCjOrtVkWEhRjDXGmO1KGwZkoQI2Weh/vqhuiY fwfc/juuipwA+X8LTcuI6qZjSdLGr6dvOzFapDW2EFJPQJ6pzf7knGmhmeoFmFUawKLX TEU9uy4+txbCYorTO6zuMux41qcQMZobp7BIUgm5yRCX9p6xsAmwiQ5ZZvp3rbUz42uE ZXwqkUGWKtFj90Q6f7D8pFRJD95x9jLUcIzRiQBWcc4swZ+bO5LwLclFt4miQfO2EhXC TdsFfFYQnagg1TKBaFzVH0j+8VA/GBDbFQu0BldzbTeF/sxls36qU/ft8kWPxJOsE3m1 FfSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706190305; x=1706795105; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=t24/Er7DEGJqrWQOOpS7ncR+LchZlfJw5iZ0u2Iekfg=; b=GJunJKP+aAsAOI2EqhrF37k+HF8KnC/S4NMYGNvkPPZLbbZ0I3bBLFhFYXyP9S9aP1 xLzCkPJCIjgWqFPJsSav8pRwWG14GiYFNZFtJaZVpjYdoTI5F6RXjbqviz07g53/GBZK FhWnVmOigMj7uuzHKuaOcalFo1nSuiENddGlXZqy3pBqCDBUliKKkIQc+Z9yC9Ovgscm Yl0wlsLCxoi0UDQC3Q3Lacis8lOq2UlTNg6Hb1PJ0XNy3ewXxlRh0Yf+2SnfXbeFOkEo BCjY/Grc4AJfq9Ym1i/BwlxxrG+QNubvFgqTTpK+KrXtIiI+aZXAszzbl7FTIbxh6oF2 ASpw== X-Gm-Message-State: AOJu0Yyh8WJytYxwnjuct0yz/PqOvhg93ZVMD3vHmIWrK26iL2DF01+b lLdsPDdcIiAlrbnnifBebg5jl5Zqse2tuoBrnHlKtKUhLT6rO9+Y0t2ZqTr9 X-Received: by 2002:a17:902:fc8e:b0:1d4:bd0c:207d with SMTP id mf14-20020a170902fc8e00b001d4bd0c207dmr903046plb.66.1706190305149; Thu, 25 Jan 2024 05:45:05 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id k17-20020a170902f29100b001d707a14316sm11785146plc.75.2024.01.25.05.45.04 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 05:45:04 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 25 Jan 2024 10:43:47 -0300 Message-ID: <20240125134425.374-25-jamrial@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 24/24] libs: bump major version for all libraries 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: nN60tSPjBETP Signed-off-by: James Almer --- doc/APIchanges | 2 +- libavcodec/version.h | 2 +- libavcodec/version_major.h | 2 +- libavdevice/version.h | 2 +- libavdevice/version_major.h | 2 +- libavfilter/version.h | 2 +- libavfilter/version_major.h | 2 +- libavformat/version.h | 2 +- libavformat/version_major.h | 2 +- libavutil/version.h | 6 +++--- libpostproc/version.h | 2 +- libpostproc/version_major.h | 2 +- libswresample/version.h | 2 +- libswresample/version_major.h | 2 +- libswscale/version.h | 2 +- libswscale/version_major.h | 2 +- 16 files changed, 18 insertions(+), 18 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index e477ed78e0..60711379a1 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -1,4 +1,4 @@ -The last version increases of all libraries were on 2023-02-09 +The last version increases of all libraries were on 2024-01-xx API changes, most recent first: diff --git a/libavcodec/version.h b/libavcodec/version.h index 0fae3d06d3..8c3d476003 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,7 +29,7 @@ #include "version_major.h" -#define LIBAVCODEC_VERSION_MINOR 38 +#define LIBAVCODEC_VERSION_MINOR 0 #define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 065b0c1378..15f1729d76 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -25,7 +25,7 @@ * Libavcodec version macros. */ -#define LIBAVCODEC_VERSION_MAJOR 60 +#define LIBAVCODEC_VERSION_MAJOR 61 /** * FF_API_* defines may be placed below to indicate public API that will be diff --git a/libavdevice/version.h b/libavdevice/version.h index 0e4ce64598..25befdead1 100644 --- a/libavdevice/version.h +++ b/libavdevice/version.h @@ -29,7 +29,7 @@ #include "version_major.h" -#define LIBAVDEVICE_VERSION_MINOR 4 +#define LIBAVDEVICE_VERSION_MINOR 0 #define LIBAVDEVICE_VERSION_MICRO 100 #define LIBAVDEVICE_VERSION_INT AV_VERSION_INT(LIBAVDEVICE_VERSION_MAJOR, \ diff --git a/libavdevice/version_major.h b/libavdevice/version_major.h index b884fd4224..3745fe8582 100644 --- a/libavdevice/version_major.h +++ b/libavdevice/version_major.h @@ -25,7 +25,7 @@ * Libavdevice version macros */ -#define LIBAVDEVICE_VERSION_MAJOR 60 +#define LIBAVDEVICE_VERSION_MAJOR 61 /** * FF_API_* defines may be placed below to indicate public API that will be diff --git a/libavfilter/version.h b/libavfilter/version.h index 12fc6c853d..d5a6bc143a 100644 --- a/libavfilter/version.h +++ b/libavfilter/version.h @@ -31,7 +31,7 @@ #include "version_major.h" -#define LIBAVFILTER_VERSION_MINOR 17 +#define LIBAVFILTER_VERSION_MINOR 0 #define LIBAVFILTER_VERSION_MICRO 100 diff --git a/libavfilter/version_major.h b/libavfilter/version_major.h index 899dfdb27d..c8b94713dc 100644 --- a/libavfilter/version_major.h +++ b/libavfilter/version_major.h @@ -27,7 +27,7 @@ * Libavfilter version macros */ -#define LIBAVFILTER_VERSION_MAJOR 9 +#define LIBAVFILTER_VERSION_MAJOR 10 /** * FF_API_* defines may be placed below to indicate public API that will be diff --git a/libavformat/version.h b/libavformat/version.h index de9cc8e31d..752aac16f7 100644 --- a/libavformat/version.h +++ b/libavformat/version.h @@ -31,7 +31,7 @@ #include "version_major.h" -#define LIBAVFORMAT_VERSION_MINOR 20 +#define LIBAVFORMAT_VERSION_MINOR 0 #define LIBAVFORMAT_VERSION_MICRO 100 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ diff --git a/libavformat/version_major.h b/libavformat/version_major.h index d87f91ea6d..933f4b28a6 100644 --- a/libavformat/version_major.h +++ b/libavformat/version_major.h @@ -29,7 +29,7 @@ // Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium) // Also please add any ticket numbers that you believe might be affected here -#define LIBAVFORMAT_VERSION_MAJOR 60 +#define LIBAVFORMAT_VERSION_MAJOR 61 /** * FF_API_* defines may be placed below to indicate public API that will be diff --git a/libavutil/version.h b/libavutil/version.h index 2cbee6a67a..1b50d6f5a0 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -78,9 +78,9 @@ * @{ */ -#define LIBAVUTIL_VERSION_MAJOR 58 -#define LIBAVUTIL_VERSION_MINOR 36 -#define LIBAVUTIL_VERSION_MICRO 101 +#define LIBAVUTIL_VERSION_MAJOR 59 +#define LIBAVUTIL_VERSION_MINOR 0 +#define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ LIBAVUTIL_VERSION_MINOR, \ diff --git a/libpostproc/version.h b/libpostproc/version.h index 4459d251d4..bcbdd210c4 100644 --- a/libpostproc/version.h +++ b/libpostproc/version.h @@ -30,7 +30,7 @@ #include "version_major.h" -#define LIBPOSTPROC_VERSION_MINOR 4 +#define LIBPOSTPROC_VERSION_MINOR 0 #define LIBPOSTPROC_VERSION_MICRO 100 #define LIBPOSTPROC_VERSION_INT AV_VERSION_INT(LIBPOSTPROC_VERSION_MAJOR, \ diff --git a/libpostproc/version_major.h b/libpostproc/version_major.h index 771e17a9e7..8136ee918c 100644 --- a/libpostproc/version_major.h +++ b/libpostproc/version_major.h @@ -26,6 +26,6 @@ * Libpostproc version macros */ -#define LIBPOSTPROC_VERSION_MAJOR 57 +#define LIBPOSTPROC_VERSION_MAJOR 58 #endif /* POSTPROC_VERSION_MAJOR_H */ diff --git a/libswresample/version.h b/libswresample/version.h index 46a4e2fc62..703023094e 100644 --- a/libswresample/version.h +++ b/libswresample/version.h @@ -30,7 +30,7 @@ #include "version_major.h" -#define LIBSWRESAMPLE_VERSION_MINOR 13 +#define LIBSWRESAMPLE_VERSION_MINOR 0 #define LIBSWRESAMPLE_VERSION_MICRO 100 #define LIBSWRESAMPLE_VERSION_INT AV_VERSION_INT(LIBSWRESAMPLE_VERSION_MAJOR, \ diff --git a/libswresample/version_major.h b/libswresample/version_major.h index 7f265c2073..dd13f2bbe3 100644 --- a/libswresample/version_major.h +++ b/libswresample/version_major.h @@ -26,6 +26,6 @@ * Libswresample version macros */ -#define LIBSWRESAMPLE_VERSION_MAJOR 4 +#define LIBSWRESAMPLE_VERSION_MAJOR 5 #endif /* SWRESAMPLE_VERSION_MAJOR_H */ diff --git a/libswscale/version.h b/libswscale/version.h index f573bef6fc..148efd83eb 100644 --- a/libswscale/version.h +++ b/libswscale/version.h @@ -28,7 +28,7 @@ #include "version_major.h" -#define LIBSWSCALE_VERSION_MINOR 6 +#define LIBSWSCALE_VERSION_MINOR 0 #define LIBSWSCALE_VERSION_MICRO 100 #define LIBSWSCALE_VERSION_INT AV_VERSION_INT(LIBSWSCALE_VERSION_MAJOR, \ diff --git a/libswscale/version_major.h b/libswscale/version_major.h index 88577a2b42..fd259f959d 100644 --- a/libswscale/version_major.h +++ b/libswscale/version_major.h @@ -24,7 +24,7 @@ * swscale version macros */ -#define LIBSWSCALE_VERSION_MAJOR 7 +#define LIBSWSCALE_VERSION_MAJOR 8 /** * FF_API_* defines may be placed below to indicate public API that will be From patchwork Sat Feb 10 14:50:43 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46152 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1571751pzc; Sat, 10 Feb 2024 06:49:21 -0800 (PST) X-Google-Smtp-Source: AGHT+IH+v/RSzUla/3ULRIEVB4QGFcqYNvBc1sj5q7oDxKEiESfARS3a+Bd+SqSor7/Yc4wrMbOC X-Received: by 2002:a05:651c:1545:b0:2d0:e35a:3ba6 with SMTP id y5-20020a05651c154500b002d0e35a3ba6mr1541774ljp.7.1707576560399; Sat, 10 Feb 2024 06:49:20 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXe6oubis1102J3rN/rrZBrWnw4yRD554L6HLxpXrptCwwWdswwC9Nq7W7rekVztOMQxD8rshrpNq/Ee00TNE1stRcTqmLp7FKYGhLaQrwenC4GSB1L5h9qgJsZPY2LSEo2JsYkhAGcR/M8sgwXTT/2SBYkuBJUZKnGtDy9O5cRKppO52rU6ShfxZ54G3QFecW7NQdadV1ness/9bFjUcR3JfLMfL/Xa678TpeBMfbZUqTfYWaUPaAK/+/INOrmuk6YOlU03bnMVc5y0njXLf3HeVhTurDKa3o/SEwiHM2rHcYKREtlm55BHj3T8sy3WXWc4dMSQW4S+Eh8efWD6sH+317ymTAYqrNid+LfAoQysy5dwD8dDV1FZqOEEqM3eyZUG4Ccqqm5gPeNSj1QsiuoHAiBb7u3k5YVtVwVB6moBen4zxGNgmvziVL7Grlep8Cv4CtSsC2N7j8R/OMuzqD3+ZOQi0dkAwr9avQARpnNCAaOoZb3SCsld/64PQGXT461J0ypoU0CexaBhGO19D8TMFguC+ftMgvK2xzMLLMC32rJ6t7d207K6yYrqj5gVRcGI30zs3pf/zPYR02H6pBnbScZ6senRnm/Ie6q5TK9z0XNpT1GrJbRWSBJOO41wRfoKSFhZq8gZOL9y1I2dBdMPykc6nKaelmey0TVgznQnEIjXGWNTcjTnf7CA4xrdO0YWM48a6DQt6OFvYmoOpkrdltbyBqOxSJ5JJ15I0chcoQxKmQWUBbsXrXwBSI4hMgdcZDSfds4z4WAEdd2f0tpv5nL7RlCIRfrciDRx9+WJhwDbxqo2tk5kA+f6pks7u15XwOuJCwDhOurFi4bu0UAs2VRj7RxeKxGhO4LvdUhsNrO6BMZfhmEEG2b+0/IAgVdTBdComB8iy6qGtQeeJyoKrVGN+20ibLFMshJmyz2O8fIhYn8VdBhmiJ9w8DXL2LZQN MBlVv4o9vHKi92TSaQrqfV2/DAu32iF44WU1tS/Os+eIfpUP/Fty3J1UbfLX1KyU2mbw7qS0Yf1oYHqnUp/ABmulSP0RZtFoLZYeI/2u04Y7vP1J0KVB4mRMzwFssyD1AnUjDBytEwuPx9yhnZHQMplcbHP/64SCm82xnY9ztIaRRy9YGlCkpD6yc91Rsc71g73ESSwagDbdI71fzes7lX22ztfew70hT73KEI4Tj19iMOEkP7vST2UwQpO6GUC3gxWn3ZP4sfBSzqPLrN8wuvomaNBrkxJ0gkYuzJIWKIlpwP1DwrdpeG/maJQ+WtjWuEWkXSmliKHuEbXDBOGq2s2d6sIxm+GfOU1KE01X0MMkiGAtSBRdI62mUY55aAVcrTRw2hVpdT8BoZ5ZP70nyeNbzBPkWAD9bU4DbbsM+wq23/ZG4OzayCPsiSzcmx9zkV5aslbcvcoo6blMJNBIxwT8Y6qSE5Elf/6U9c3jjOSYVhKRnzayZCW/WO7xaEQ4QA8wMScaTyjegp9J+jtG0lLXFqpziWauY37f9WZLUxEBZzsOkhReUS2WcDRZL9r0lVLxilxYEBn+NF5tUSv2OKIPH2VW0rgLRD0Q0r9sh71kDc1K3l0jXZgjrGrH9tlxoonwsBF8L4y2U8MA== Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id n8-20020aa7c448000000b00561351b6317si911337edr.635.2024.02.10.06.49.19; Sat, 10 Feb 2024 06:49:20 -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=@outlook.com header.s=selector1 header.b=MMo70790; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B856568CE06; Sat, 10 Feb 2024 16:49:14 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04olkn2093.outbound.protection.outlook.com [40.92.75.93]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E0B7968CC5B for ; Sat, 10 Feb 2024 16:49:07 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UuHr3RO4+rxUqZxDRxQsMxJmf0ph4n89fnE+jZtzY0xrllLFP19wrP+kM9rdhryJ+0XeB+zJcTC17o/qpCb/w4YeKkQFWtKgqkooUfAG13gggNF05lI5rd+IsvWgdGNxB5x8zwbkkHEO78GxdxyJ8RgHY+HGLA5nzD6+cIMber8Ixkob/Xr4RQ3CNJgvyQkxIZSeHavjk7uAXpyJlpsykXHhLuRzH+UvgwWpxdDbC9s4vVVhZnA+Qs0d+q8JS+zbFoFw19SCUKNbfZi70ormX1el0+p7pEyphHrBssC2fdiBvWAc6b0ouj5c+pWyO8gNDNSPwbdXzRpeJadF4dee2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KYgLVdOmqLw6TneT7n1nHNmm03oFsn+JDkQX2bOZOkA=; b=Tcykoby1TI2C4+owfPWDrwMbQSIKm9F9ArWeGkPvstgd/DDg6CX6LvRrDiux+eiwqAtI8AJNijL1F1Q/1I/mWPkIx7yt5oCkVbAMF6WFPTB53f6m71dInNtndHXxKGhQVIMW9c6yZEpOksiCJWkoBS5hEarGfcyl7SEUcq3/rL+JGIWFtXF/awLasSL5QxyT/qOpfdVQvznq1RwthfXh6C1k0/YX5aGD6lQAZ4kaFh5ft1HhKvicHnUZUlvXS7q8uSfjL2eSW/AGWWk6KMLulPHlHKkn51wVe1Dc9GTsFsn3Ws/G3SmAz9iSrWmFmTXgKksIG0dCtV92am3a9SklZA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KYgLVdOmqLw6TneT7n1nHNmm03oFsn+JDkQX2bOZOkA=; b=MMo70790f7iYZADanX7GeDjElnukme8W8qOH6ByBhrEH8NlB85WK97f0BUGF8+5HfTMGgHGAyciQGfmLE9gBiTPsAI25TBWT/+EOWUSlEh7TqwQgvLPQVchy0BnbVW0Dhdno2qCF8UCdzFF8zp/xYKOYjGDIPs1FIZJrAVlPPDjPEwrAzcR/uI/ptlg3dd2dwRo/PqtnA4o1Yx9J+tyvJBTqp5gvv1yVkiNXy6MsSIhNDbbPSHvgu2CvWvD22/ccH/1xrfOWZh8tue7+NdWL/uk0SLxdUxPlLrexcsNThUtwMKV1c4nPi6cNeFbvC7E2lbI32Sihs1ndeOmmkn4gaw== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by DU0P250MB0409.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:329::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.27; Sat, 10 Feb 2024 14:48:58 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 14:48:58 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 10 Feb 2024 15:50:43 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [V5Tty9B0fd6IdynZ6s0wDe1MOcYOcdTJybDBlzfaDcY=] X-ClientProxiedBy: FR0P281CA0213.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::7) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210145045.1298062-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|DU0P250MB0409:EE_ X-MS-Office365-Filtering-Correlation-Id: ded2c5c9-8b6f-4027-f46b-08dc2a47695d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: x0qmH0PEm8y4hn8fNuDNSC5/9L4UMcQtBj26VAcJLJNHxZ4/co7UPV7WzurD94qKThxZzYy5jKA+aRb2JkB0Zgy09f1A5Xx2nmj7H3LVtiNZ3LiClkO3i4WAYmGwWYUfHpYePkwytcfkWwgvge4A5NOzUF69O3eY7nALpekseUnRVp+GpqxhqouV2sutFYHURmJZtjmCrXhEPBm74sgWm2m+y08a5PCJSXxvY2PBYztJgTZgDYtq6x3QJxhIWlc0gwaCb8GaklVGJ2EC4FzlpASYUTPQmB75zPDWu7O1PQk42CgzRHIVSv/S3dU+cexVvhHT02f7ciDkU7fY6dWUhB0+GN4/tbJ3UE6OcQMM99mnIm/xfwieCe7hl6abUKF9zoZClIRZkizJf331WyEJDs9tGNmYZsaduruNb7h8Cb/YzBvNpeW3TX3KxxR9xBQadbBUKFMaf7ixbcIygEXKa7GxD0BYgfFIxKiFqfrzGbL+tUM0nk+D999Scd9HpuF9wHvyCEooH+maLbAjyeSwJmJmOp18OhgJVdEnO2yS2CDK1E9EQoXgfTqbJQUULeSrPe+PpKFTMGi2jVWTyyd0FurlWcIzOsibjwrjVgCN5rkBad2iwA3KmV8BVaykz4V7 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: GWPB5zF/LaL7nhtYmb3wadSymq6pz8P95nbdJGhu6fwIxQ+D0ZyQ0biL34pfdf8kym4DqrJVUsk4fZ9jjCZADwwjrOlu77dxwNlEkM0oAn7R/T60W1quFXXhAAJl7l837yMP73i9tiLkDam2ZeUu/4qFIpR9YPEq7dEh0bVsXUxCffZM6rmmKYhjQzAo7NsF+FYD1jN4JP2rCY6CUDpmO0FXTQc28Z1Sz4rX7Pgjn9F6vnoFdrK/6IysbmZKh0Qf8nkOHVRpt5bVeTXdkKyM/Gcn8bVvgZbB6btEEFm4INZh47FnVhIwLiPOAsqo+Stf5Gu59AX7WRG14iJfhxBofYrEnXpOX3g/1HxNu8JuLpfunaqZmU+cUdY/BqC5ppJY/2BcDAMieEhdTwkCHEo0qO5TMdUhd+gJ6AGwOxjuK2a6oR+PPzGw5a1ZTP7i6uilAaKxZWEVf2vzFjjcN5eqLgsUG6FFvvXs12DZBpb43O4wlbFIFaw1fir0vp7RrIGTW+qw8FkmLXsyxIUfwuvyyyET2Z0JoHVzlixVnQdoy3hKHQf00ZDZSumkhTH3Rr4builOPeeukQn+LjDtmyZDt0uFKKqHtCQqVVZ+PSlyhZC6gGnCOiC62waKMHJmaKDeg/KMChxi2qgtxzosv3sHoAtyX1gQ1zxoBa5AWLmK3EEMYXuRYb+DwHzTbXSXbFX8tM/168svQJsGdxQs9BnQPrP5AGIHQBKg8Vw5um5okhhIIBAn+zp7CN2ugaWKfHcGm8aDJwT5Mz/4MGKVTXa/fAhYoEH6M28T6M/tSsjEX62nKevADMAy40/O8BG7UnjGOBnb6Eq3iYzedqjdd0nFqr4iRZEW0+OJ/K7HpoQBG09Kv3WzwXRXj53t2zxszMbpyj3tLKTf558o5p+/Jw0JGXYNCIhz0Fmd1JERBuH7ujsQNyoOBhnQQjcGOxenPl4gVe5Hg4scxIuGSzLMDigSMe4w7XWYIY4WTGCNpnb2jAnJEW9N/2HxMJ6h8URx4gFkkmtoHzmJJ5Gi5UTHFqHeZVy4ZXR2mhaYhgYvxHWywzhF/V+iiBDxUcPWx/KUGCjCnS5M611UyPF0E+XvhkY9Ts1iCKWZDjM7RDUMSCuVPSMKPQTBuyge5md38vLQInLhu8BwaAUt4R9pW3eeq9VXrKiRwkZI7AaOQB+JZH6zD+xo3iGobuNb/THzB6oFoT1849zztlQ3iVEFfzCrWoGPjg57Hk04ydygg8UHKGq5F1y8LjPFI8kx60nCeGZZt+EoAQmYKbkkPMbQB8Nx582KXQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ded2c5c9-8b6f-4027-f46b-08dc2a47695d X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 14:48:58.3747 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0P250MB0409 Subject: [FFmpeg-devel] [PATCH 25/27] avformat/avformat: Add FFInputFormat, hide internals of AVInputFormat 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: f+2Vv+Sk8KpG This commit does for AVInputFormat what commit 59c9dc82f450638a3068deeb1db5c56f6d155752 did for AVOutputFormat: It adds a new type FFInputFormat, moves all the internals of AVInputFormat to it and adds a now reduced AVInputFormat as first member. This does not affect/improve extensibility of both public or private fields for demuxers (it is still a mess due to lavd). This is possible since 50f34172e0cca2cabc5836308ec66dbf93f5f2a3 (which removed the last usage of an internal field of AVInputFormat in fftools). (Hint: tools/probetest.c accesses the internals of FFInputFormat as well, but given that it is a testing tool this is not considered a problem.) Signed-off-by: Andreas Rheinhardt --- configure | 8 +- libavdevice/alldevices.c | 49 +-- libavdevice/alsa_dec.c | 11 +- libavdevice/android_camera.c | 11 +- libavdevice/avdevice.c | 5 +- libavdevice/bktr.c | 11 +- libavdevice/decklink_dec_c.c | 11 +- libavdevice/dshow.c | 12 +- libavdevice/fbdev_dec.c | 11 +- libavdevice/gdigrab.c | 11 +- libavdevice/iec61883.c | 11 +- libavdevice/jack.c | 11 +- libavdevice/kmsgrab.c | 11 +- libavdevice/lavfi.c | 11 +- libavdevice/libcdio.c | 8 +- libavdevice/libdc1394.c | 11 +- libavdevice/openal-dec.c | 11 +- libavdevice/oss_dec.c | 11 +- libavdevice/pulse_audio_dec.c | 11 +- libavdevice/sndio_dec.c | 11 +- libavdevice/utils.c | 5 +- libavdevice/v4l2.c | 10 +- libavdevice/vfwcap.c | 11 +- libavdevice/xcbgrab.c | 11 +- libavformat/3dostr.c | 11 +- libavformat/4xm.c | 7 +- libavformat/aacdec.c | 13 +- libavformat/aadec.c | 12 +- libavformat/aaxdec.c | 10 +- libavformat/ac3dec.c | 25 +- libavformat/ac4dec.c | 11 +- libavformat/acedec.c | 9 +- libavformat/acm.c | 12 +- libavformat/act.c | 7 +- libavformat/adp.c | 9 +- libavformat/ads.c | 9 +- libavformat/adxdec.c | 10 +- libavformat/aea.c | 11 +- libavformat/afc.c | 11 +- libavformat/aiffdec.c | 8 +- libavformat/aixdec.c | 10 +- libavformat/allformats.c | 731 +++++++++++++++++---------------- libavformat/alp.c | 7 +- libavformat/amr.c | 31 +- libavformat/anm.c | 6 +- libavformat/apac.c | 12 +- libavformat/apc.c | 6 +- libavformat/ape.c | 9 +- libavformat/apm.c | 7 +- libavformat/apngdec.c | 11 +- libavformat/aptxdec.c | 25 +- libavformat/aqtitledec.c | 11 +- libavformat/argo_asf.c | 7 +- libavformat/argo_brp.c | 7 +- libavformat/argo_cvg.c | 7 +- libavformat/asfdec_f.c | 10 +- libavformat/asfdec_o.c | 8 +- libavformat/assdec.c | 7 +- libavformat/astdec.c | 13 +- libavformat/au.c | 9 +- libavformat/av1dec.c | 25 +- libavformat/avformat.h | 98 ----- libavformat/avidec.c | 10 +- libavformat/avisynth.c | 11 +- libavformat/avr.c | 11 +- libavformat/avs.c | 7 +- libavformat/bethsoftvid.c | 7 +- libavformat/bfi.c | 6 +- libavformat/bink.c | 8 +- libavformat/binka.c | 11 +- libavformat/bintext.c | 37 +- libavformat/bit.c | 9 +- libavformat/bmv.c | 9 +- libavformat/boadec.c | 9 +- libavformat/bonk.c | 12 +- libavformat/brstm.c | 16 +- libavformat/c93.c | 7 +- libavformat/cafdec.c | 8 +- libavformat/cdg.c | 11 +- libavformat/cdxl.c | 13 +- libavformat/cinedec.c | 7 +- libavformat/codec2.c | 23 +- libavformat/concatdec.c | 8 +- libavformat/dashdec.c | 10 +- libavformat/dauddec.c | 9 +- libavformat/dcstr.c | 11 +- libavformat/demux.c | 20 +- libavformat/demux.h | 107 ++++- libavformat/demux_utils.c | 8 +- libavformat/derf.c | 9 +- libavformat/dfa.c | 9 +- libavformat/dfpwmdec.c | 13 +- libavformat/dhav.c | 11 +- libavformat/dsfdec.c | 9 +- libavformat/dsicin.c | 7 +- libavformat/dss.c | 9 +- libavformat/dtsdec.c | 13 +- libavformat/dtshddec.c | 11 +- libavformat/dv.c | 8 +- libavformat/dxa.c | 7 +- libavformat/eacdata.c | 9 +- libavformat/electronicarts.c | 9 +- libavformat/epafdec.c | 11 +- libavformat/evcdec.c | 13 +- libavformat/ffmetadec.c | 6 +- libavformat/filmstripdec.c | 9 +- libavformat/fitsdec.c | 11 +- libavformat/flacdec.c | 12 +- libavformat/flic.c | 7 +- libavformat/flvdec.c | 32 +- libavformat/format.c | 5 +- libavformat/frmdec.c | 7 +- libavformat/fsb.c | 11 +- libavformat/fwse.c | 9 +- libavformat/g722.c | 13 +- libavformat/g723_1.c | 11 +- libavformat/g726.c | 19 +- libavformat/g729dec.c | 13 +- libavformat/gdv.c | 7 +- libavformat/genh.c | 9 +- libavformat/gifdec.c | 13 +- libavformat/gsmdec.c | 13 +- libavformat/gxf.c | 6 +- libavformat/hca.c | 13 +- libavformat/hcom.c | 7 +- libavformat/hls.c | 12 +- libavformat/hnm.c | 9 +- libavformat/iamfdec.c | 11 +- libavformat/icodec.c | 9 +- libavformat/idcin.c | 8 +- libavformat/idroqdec.c | 7 +- libavformat/iff.c | 9 +- libavformat/ifv.c | 9 +- libavformat/ilbc.c | 9 +- libavformat/imfdec.c | 10 +- libavformat/img2_alias_pix.c | 9 +- libavformat/img2_brender_pix.c | 9 +- libavformat/img2dec.c | 48 +-- libavformat/imx.c | 11 +- libavformat/ingenientdec.c | 13 +- libavformat/internal.h | 6 +- libavformat/ipmovie.c | 6 +- libavformat/ipudec.c | 13 +- libavformat/ircamdec.c | 11 +- libavformat/iss.c | 7 +- libavformat/iv8.c | 9 +- libavformat/ivfdec.c | 11 +- libavformat/jacosubdec.c | 7 +- libavformat/jpegxl_anim_dec.c | 13 +- libavformat/jvdec.c | 7 +- libavformat/kvag.c | 7 +- libavformat/lafdec.c | 11 +- libavformat/libgme.c | 9 +- libavformat/libmodplug.c | 11 +- libavformat/libopenmpt.c | 19 +- libavformat/lmlm4.c | 7 +- libavformat/loasdec.c | 11 +- libavformat/lrcdec.c | 7 +- libavformat/luodatdec.c | 11 +- libavformat/lvfdec.c | 11 +- libavformat/lxfdec.c | 8 +- libavformat/matroskadec.c | 18 +- libavformat/mca.c | 8 +- libavformat/mccdec.c | 9 +- libavformat/mgsts.c | 9 +- libavformat/microdvddec.c | 9 +- libavformat/mlpdec.c | 25 +- libavformat/mlvdec.c | 6 +- libavformat/mm.c | 7 +- libavformat/mmf.c | 9 +- libavformat/mods.c | 11 +- libavformat/moflex.c | 11 +- libavformat/mov.c | 12 +- libavformat/mp3dec.c | 12 +- libavformat/mpc.c | 8 +- libavformat/mpc8.c | 6 +- libavformat/mpeg.c | 20 +- libavformat/mpegts.c | 24 +- libavformat/mpjpegdec.c | 15 +- libavformat/mpl2dec.c | 9 +- libavformat/mpsubdec.c | 9 +- libavformat/msf.c | 9 +- libavformat/msnwc_tcp.c | 7 +- libavformat/mspdec.c | 9 +- libavformat/mtaf.c | 9 +- libavformat/mtv.c | 7 +- libavformat/musx.c | 9 +- libavformat/mvdec.c | 7 +- libavformat/mvi.c | 9 +- libavformat/mxfdec.c | 10 +- libavformat/mxg.c | 9 +- libavformat/ncdec.c | 9 +- libavformat/nistspheredec.c | 11 +- libavformat/nspdec.c | 11 +- libavformat/nsvdec.c | 7 +- libavformat/nutdec.c | 12 +- libavformat/nuv.c | 8 +- libavformat/oggdec.c | 10 +- libavformat/omadec.c | 13 +- libavformat/osq.c | 12 +- libavformat/paf.c | 7 +- libavformat/pcmdec.c | 29 +- libavformat/pdvdec.c | 9 +- libavformat/pjsdec.c | 9 +- libavformat/pmpdec.c | 7 +- libavformat/pp_bnk.c | 7 +- libavformat/psxstr.c | 9 +- libavformat/pva.c | 7 +- libavformat/pvfdec.c | 11 +- libavformat/qcp.c | 7 +- libavformat/qoadec.c | 11 +- libavformat/r3d.c | 7 +- libavformat/rawdec.c | 19 +- libavformat/rawdec.h | 25 +- libavformat/rawvideodec.c | 63 +-- libavformat/rdt.c | 3 +- libavformat/realtextdec.c | 9 +- libavformat/redspark.c | 9 +- libavformat/rka.c | 8 +- libavformat/rl2.c | 6 +- libavformat/rm.h | 2 +- libavformat/rmdec.c | 22 +- libavformat/rpl.c | 7 +- libavformat/rsd.c | 12 +- libavformat/rsodec.c | 11 +- libavformat/rtsp.c | 19 +- libavformat/rtspdec.c | 11 +- libavformat/s337m.c | 9 +- libavformat/samidec.c | 9 +- libavformat/sapdec.c | 9 +- libavformat/sbcdec.c | 13 +- libavformat/sbgdec.c | 11 +- libavformat/sccdec.c | 9 +- libavformat/scd.c | 7 +- libavformat/sdns.c | 10 +- libavformat/sdr2.c | 11 +- libavformat/sdsdec.c | 11 +- libavformat/sdxdec.c | 11 +- libavformat/seek.c | 22 +- libavformat/segafilm.c | 7 +- libavformat/serdec.c | 13 +- libavformat/sga.c | 11 +- libavformat/shortendec.c | 13 +- libavformat/sierravmd.c | 7 +- libavformat/siff.c | 9 +- libavformat/smacker.c | 6 +- libavformat/smjpegdec.c | 11 +- libavformat/smush.c | 7 +- libavformat/sol.c | 7 +- libavformat/soxdec.c | 7 +- libavformat/spdifdec.c | 9 +- libavformat/srtdec.c | 7 +- libavformat/stldec.c | 9 +- libavformat/subtitles.h | 2 +- libavformat/subviewer1dec.c | 9 +- libavformat/subviewerdec.c | 9 +- libavformat/supdec.c | 13 +- libavformat/svag.c | 9 +- libavformat/svs.c | 9 +- libavformat/swfdec.c | 6 +- libavformat/takdec.c | 13 +- libavformat/tedcaptionsdec.c | 9 +- libavformat/thp.c | 7 +- libavformat/tiertexseq.c | 7 +- libavformat/tmv.c | 9 +- libavformat/tta.c | 9 +- libavformat/tty.c | 13 +- libavformat/txd.c | 7 +- libavformat/ty.c | 11 +- libavformat/usmdec.c | 10 +- libavformat/vag.c | 9 +- libavformat/vapoursynth.c | 9 +- libavformat/vc1test.c | 10 +- libavformat/vividas.c | 7 +- libavformat/vivo.c | 9 +- libavformat/vocdec.c | 9 +- libavformat/vpk.c | 8 +- libavformat/vplayerdec.c | 9 +- libavformat/vqf.c | 9 +- libavformat/wady.c | 10 +- libavformat/wavarc.c | 10 +- libavformat/wavdec.c | 24 +- libavformat/wc3movie.c | 7 +- libavformat/webvttdec.c | 11 +- libavformat/westwood_aud.c | 7 +- libavformat/westwood_vqa.c | 6 +- libavformat/wsddec.c | 13 +- libavformat/wtvdec.c | 8 +- libavformat/wvdec.c | 9 +- libavformat/wvedec.c | 7 +- libavformat/xa.c | 7 +- libavformat/xmd.c | 10 +- libavformat/xmv.c | 9 +- libavformat/xvag.c | 9 +- libavformat/xwma.c | 7 +- libavformat/yop.c | 10 +- libavformat/yuv4mpegdec.c | 9 +- tools/probetest.c | 5 +- tools/target_dem_fuzzer.c | 6 +- 299 files changed, 2178 insertions(+), 1940 deletions(-) diff --git a/configure b/configure index c0d3791c9e..e44fc755ce 100755 --- a/configure +++ b/configure @@ -4117,9 +4117,9 @@ find_filters_extern(){ FILTER_LIST=$(find_filters_extern libavfilter/allfilters.c) OUTDEV_LIST=$(find_things_extern muxer FFOutputFormat libavdevice/alldevices.c outdev) -INDEV_LIST=$(find_things_extern demuxer AVInputFormat libavdevice/alldevices.c indev) +INDEV_LIST=$(find_things_extern demuxer FFInputFormat libavdevice/alldevices.c indev) MUXER_LIST=$(find_things_extern muxer FFOutputFormat libavformat/allformats.c) -DEMUXER_LIST=$(find_things_extern demuxer AVInputFormat libavformat/allformats.c) +DEMUXER_LIST=$(find_things_extern demuxer FFInputFormat libavformat/allformats.c) ENCODER_LIST=$(find_things_extern encoder FFCodec libavcodec/allcodecs.c) DECODER_LIST=$(find_things_extern decoder FFCodec libavcodec/allcodecs.c) CODEC_LIST=" @@ -8187,9 +8187,9 @@ print_enabled_components libavfilter/filter_list.c AVFilter filter_list $FILTER_ print_enabled_components libavcodec/codec_list.c FFCodec codec_list $CODEC_LIST print_enabled_components libavcodec/parser_list.c AVCodecParser parser_list $PARSER_LIST print_enabled_components libavcodec/bsf_list.c FFBitStreamFilter bitstream_filters $BSF_LIST -print_enabled_components libavformat/demuxer_list.c AVInputFormat demuxer_list $DEMUXER_LIST +print_enabled_components libavformat/demuxer_list.c FFInputFormat demuxer_list $DEMUXER_LIST print_enabled_components libavformat/muxer_list.c FFOutputFormat muxer_list $MUXER_LIST -print_enabled_components libavdevice/indev_list.c AVInputFormat indev_list $INDEV_LIST +print_enabled_components libavdevice/indev_list.c FFInputFormat indev_list $INDEV_LIST print_enabled_components libavdevice/outdev_list.c FFOutputFormat outdev_list $OUTDEV_LIST print_enabled_components libavformat/protocol_list.c URLProtocol url_protocols $PROTOCOL_LIST diff --git a/libavdevice/alldevices.c b/libavdevice/alldevices.c index 8a90fcb5d7..5ee97c56b6 100644 --- a/libavdevice/alldevices.c +++ b/libavdevice/alldevices.c @@ -18,46 +18,47 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "libavformat/mux.h" #include "avdevice.h" /* devices */ -extern const AVInputFormat ff_alsa_demuxer; +extern const FFInputFormat ff_alsa_demuxer; extern const FFOutputFormat ff_alsa_muxer; -extern const AVInputFormat ff_android_camera_demuxer; +extern const FFInputFormat ff_android_camera_demuxer; extern const FFOutputFormat ff_audiotoolbox_muxer; -extern const AVInputFormat ff_avfoundation_demuxer; -extern const AVInputFormat ff_bktr_demuxer; +extern const FFInputFormat ff_avfoundation_demuxer; +extern const FFInputFormat ff_bktr_demuxer; extern const FFOutputFormat ff_caca_muxer; -extern const AVInputFormat ff_decklink_demuxer; +extern const FFInputFormat ff_decklink_demuxer; extern const FFOutputFormat ff_decklink_muxer; -extern const AVInputFormat ff_dshow_demuxer; -extern const AVInputFormat ff_fbdev_demuxer; +extern const FFInputFormat ff_dshow_demuxer; +extern const FFInputFormat ff_fbdev_demuxer; extern const FFOutputFormat ff_fbdev_muxer; -extern const AVInputFormat ff_gdigrab_demuxer; -extern const AVInputFormat ff_iec61883_demuxer; -extern const AVInputFormat ff_jack_demuxer; -extern const AVInputFormat ff_kmsgrab_demuxer; -extern const AVInputFormat ff_lavfi_demuxer; -extern const AVInputFormat ff_openal_demuxer; +extern const FFInputFormat ff_gdigrab_demuxer; +extern const FFInputFormat ff_iec61883_demuxer; +extern const FFInputFormat ff_jack_demuxer; +extern const FFInputFormat ff_kmsgrab_demuxer; +extern const FFInputFormat ff_lavfi_demuxer; +extern const FFInputFormat ff_openal_demuxer; extern const FFOutputFormat ff_opengl_muxer; -extern const AVInputFormat ff_oss_demuxer; +extern const FFInputFormat ff_oss_demuxer; extern const FFOutputFormat ff_oss_muxer; -extern const AVInputFormat ff_pulse_demuxer; +extern const FFInputFormat ff_pulse_demuxer; extern const FFOutputFormat ff_pulse_muxer; extern const FFOutputFormat ff_sdl2_muxer; -extern const AVInputFormat ff_sndio_demuxer; +extern const FFInputFormat ff_sndio_demuxer; extern const FFOutputFormat ff_sndio_muxer; -extern const AVInputFormat ff_v4l2_demuxer; +extern const FFInputFormat ff_v4l2_demuxer; extern const FFOutputFormat ff_v4l2_muxer; -extern const AVInputFormat ff_vfwcap_demuxer; -extern const AVInputFormat ff_xcbgrab_demuxer; +extern const FFInputFormat ff_vfwcap_demuxer; +extern const FFInputFormat ff_xcbgrab_demuxer; extern const FFOutputFormat ff_xv_muxer; /* external libraries */ -extern const AVInputFormat ff_libcdio_demuxer; -extern const AVInputFormat ff_libdc1394_demuxer; +extern const FFInputFormat ff_libcdio_demuxer; +extern const FFInputFormat ff_libdc1394_demuxer; #include "libavdevice/outdev_list.c" #include "libavdevice/indev_list.c" @@ -72,12 +73,12 @@ static const void *next_input(const AVInputFormat *prev, AVClassCategory c2) const AVClass *pc; const AVClassCategory c1 = AV_CLASS_CATEGORY_DEVICE_INPUT; AVClassCategory category = AV_CLASS_CATEGORY_NA; - const AVInputFormat *fmt = NULL; + const FFInputFormat *fmt = NULL; int i = 0; while (prev && (fmt = indev_list[i])) { i++; - if (prev == fmt) + if (prev == &fmt->p) break; } @@ -85,7 +86,7 @@ static const void *next_input(const AVInputFormat *prev, AVClassCategory c2) fmt = indev_list[i++]; if (!fmt) break; - pc = fmt->priv_class; + pc = fmt->p.priv_class; if (!pc) continue; category = pc->category; diff --git a/libavdevice/alsa_dec.c b/libavdevice/alsa_dec.c index b518bbdac6..018afaef08 100644 --- a/libavdevice/alsa_dec.c +++ b/libavdevice/alsa_dec.c @@ -52,6 +52,7 @@ #include "libavutil/opt.h" #include "libavutil/time.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "avdevice.h" @@ -157,14 +158,14 @@ static const AVClass alsa_demuxer_class = { .category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT, }; -const AVInputFormat ff_alsa_demuxer = { - .name = "alsa", - .long_name = NULL_IF_CONFIG_SMALL("ALSA audio input"), +const FFInputFormat ff_alsa_demuxer = { + .p.name = "alsa", + .p.long_name = NULL_IF_CONFIG_SMALL("ALSA audio input"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &alsa_demuxer_class, .priv_data_size = sizeof(AlsaData), .read_header = audio_read_header, .read_packet = audio_read_packet, .read_close = ff_alsa_close, .get_device_list = audio_get_device_list, - .flags = AVFMT_NOFILE, - .priv_class = &alsa_demuxer_class, }; diff --git a/libavdevice/android_camera.c b/libavdevice/android_camera.c index c981985f10..3aa8597c63 100644 --- a/libavdevice/android_camera.c +++ b/libavdevice/android_camera.c @@ -33,6 +33,7 @@ #include #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "libavutil/avstring.h" #include "libavutil/display.h" @@ -860,13 +861,13 @@ static const AVClass android_camera_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_android_camera_demuxer = { - .name = "android_camera", - .long_name = NULL_IF_CONFIG_SMALL("Android camera input device"), +const FFInputFormat ff_android_camera_demuxer = { + .p.name = "android_camera", + .p.long_name = NULL_IF_CONFIG_SMALL("Android camera input device"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &android_camera_class, .priv_data_size = sizeof(AndroidCameraCtx), .read_header = android_camera_read_header, .read_packet = android_camera_read_packet, .read_close = android_camera_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &android_camera_class, }; diff --git a/libavdevice/avdevice.c b/libavdevice/avdevice.c index 38110ddfdb..cd7b03ef48 100644 --- a/libavdevice/avdevice.c +++ b/libavdevice/avdevice.c @@ -19,6 +19,7 @@ #include "libavutil/avassert.h" #include "avdevice.h" #include "internal.h" +#include "libavformat/demux.h" #include "libavformat/mux.h" int avdevice_app_to_dev_control_message(struct AVFormatContext *s, enum AVAppToDevMessageType type, @@ -44,7 +45,7 @@ int avdevice_list_devices(AVFormatContext *s, AVDeviceInfoList **device_list) av_assert0(device_list); av_assert0(s->oformat || s->iformat); if ((s->oformat && !ffofmt(s->oformat)->get_device_list) || - (s->iformat && !s->iformat->get_device_list)) { + (s->iformat && !ffifmt(s->iformat)->get_device_list)) { *device_list = NULL; return AVERROR(ENOSYS); } @@ -56,7 +57,7 @@ int avdevice_list_devices(AVFormatContext *s, AVDeviceInfoList **device_list) if (s->oformat) ret = ffofmt(s->oformat)->get_device_list(s, *device_list); else - ret = s->iformat->get_device_list(s, *device_list); + ret = ffifmt(s->iformat)->get_device_list(s, *device_list); if (ret < 0) { avdevice_free_list_devices(device_list); return ret; diff --git a/libavdevice/bktr.c b/libavdevice/bktr.c index 864726468f..a46adfafe0 100644 --- a/libavdevice/bktr.c +++ b/libavdevice/bktr.c @@ -24,6 +24,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "libavutil/file_open.h" #include "libavutil/internal.h" @@ -352,13 +353,13 @@ static const AVClass bktr_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_bktr_demuxer = { - .name = "bktr", - .long_name = NULL_IF_CONFIG_SMALL("video grab"), +const FFInputFormat ff_bktr_demuxer = { + .p.name = "bktr", + .p.long_name = NULL_IF_CONFIG_SMALL("video grab"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &bktr_class, .priv_data_size = sizeof(VideoData), .read_header = grab_read_header, .read_packet = grab_read_packet, .read_close = grab_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &bktr_class, }; diff --git a/libavdevice/decklink_dec_c.c b/libavdevice/decklink_dec_c.c index 2159702c96..1863833ff4 100644 --- a/libavdevice/decklink_dec_c.c +++ b/libavdevice/decklink_dec_c.c @@ -21,6 +21,7 @@ */ #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavutil/opt.h" #include "decklink_common_c.h" @@ -111,11 +112,11 @@ static const AVClass decklink_demuxer_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_decklink_demuxer = { - .name = "decklink", - .long_name = NULL_IF_CONFIG_SMALL("Blackmagic DeckLink input"), - .flags = AVFMT_NOFILE, - .priv_class = &decklink_demuxer_class, +const FFInputFormat ff_decklink_demuxer = { + .p.name = "decklink", + .p.long_name = NULL_IF_CONFIG_SMALL("Blackmagic DeckLink input"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &decklink_demuxer_class, .priv_data_size = sizeof(struct decklink_cctx), .get_device_list = ff_decklink_list_input_devices, .read_header = ff_decklink_read_header, diff --git a/libavdevice/dshow.c b/libavdevice/dshow.c index 5946a72cc2..0330d1d0b6 100644 --- a/libavdevice/dshow.c +++ b/libavdevice/dshow.c @@ -24,6 +24,7 @@ #include "libavutil/pixdesc.h" #include "libavutil/opt.h" #include "libavutil/mem.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "libavformat/riff.h" #include "avdevice.h" @@ -1924,14 +1925,15 @@ static const AVClass dshow_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_dshow_demuxer = { - .name = "dshow", - .long_name = NULL_IF_CONFIG_SMALL("DirectShow capture"), +const FFInputFormat ff_dshow_demuxer = { + .p.name = "dshow", + .p.long_name = NULL_IF_CONFIG_SMALL("DirectShow capture"), + .p.flags = AVFMT_NOFILE | AVFMT_NOBINSEARCH | + AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK, + .p.priv_class = &dshow_class, .priv_data_size = sizeof(struct dshow_ctx), .read_header = dshow_read_header, .read_packet = dshow_read_packet, .read_close = dshow_read_close, .get_device_list= dshow_get_device_list, - .flags = AVFMT_NOFILE | AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK, - .priv_class = &dshow_class, }; diff --git a/libavdevice/fbdev_dec.c b/libavdevice/fbdev_dec.c index 460a71d13f..51e7bd73ab 100644 --- a/libavdevice/fbdev_dec.c +++ b/libavdevice/fbdev_dec.c @@ -41,6 +41,7 @@ #include "libavutil/time.h" #include "libavutil/parseutils.h" #include "libavutil/pixdesc.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "avdevice.h" #include "fbdev_common.h" @@ -232,14 +233,14 @@ static const AVClass fbdev_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_fbdev_demuxer = { - .name = "fbdev", - .long_name = NULL_IF_CONFIG_SMALL("Linux framebuffer"), +const FFInputFormat ff_fbdev_demuxer = { + .p.name = "fbdev", + .p.long_name = NULL_IF_CONFIG_SMALL("Linux framebuffer"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &fbdev_class, .priv_data_size = sizeof(FBDevContext), .read_header = fbdev_read_header, .read_packet = fbdev_read_packet, .read_close = fbdev_read_close, .get_device_list = fbdev_get_device_list, - .flags = AVFMT_NOFILE, - .priv_class = &fbdev_class, }; diff --git a/libavdevice/gdigrab.c b/libavdevice/gdigrab.c index b2858ecd89..58e876ea9e 100644 --- a/libavdevice/gdigrab.c +++ b/libavdevice/gdigrab.c @@ -29,6 +29,7 @@ */ #include "config.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "libavutil/opt.h" #include "libavutil/time.h" @@ -677,13 +678,13 @@ static const AVClass gdigrab_class = { }; /** gdi grabber device demuxer declaration */ -const AVInputFormat ff_gdigrab_demuxer = { - .name = "gdigrab", - .long_name = NULL_IF_CONFIG_SMALL("GDI API Windows frame grabber"), +const FFInputFormat ff_gdigrab_demuxer = { + .p.name = "gdigrab", + .p.long_name = NULL_IF_CONFIG_SMALL("GDI API Windows frame grabber"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &gdigrab_class, .priv_data_size = sizeof(struct gdigrab), .read_header = gdigrab_read_header, .read_packet = gdigrab_read_packet, .read_close = gdigrab_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &gdigrab_class, }; diff --git a/libavdevice/iec61883.c b/libavdevice/iec61883.c index 7223ba2e64..c88e1bd18c 100644 --- a/libavdevice/iec61883.c +++ b/libavdevice/iec61883.c @@ -30,6 +30,7 @@ #include #include #include +#include "libavformat/demux.h" #include "libavformat/dv.h" #include "libavformat/mpegts.h" #include "libavutil/opt.h" @@ -502,13 +503,13 @@ static const AVClass iec61883_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_iec61883_demuxer = { - .name = "iec61883", - .long_name = NULL_IF_CONFIG_SMALL("libiec61883 (new DV1394) A/V input device"), +const FFInputFormat ff_iec61883_demuxer = { + .p.name = "iec61883", + .p.long_name = NULL_IF_CONFIG_SMALL("libiec61883 (new DV1394) A/V input device"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &iec61883_class, .priv_data_size = sizeof(struct iec61883_data), .read_header = iec61883_read_header, .read_packet = iec61883_read_packet, .read_close = iec61883_close, - .flags = AVFMT_NOFILE, - .priv_class = &iec61883_class, }; diff --git a/libavdevice/jack.c b/libavdevice/jack.c index db056d824f..40f2af5ccc 100644 --- a/libavdevice/jack.c +++ b/libavdevice/jack.c @@ -30,6 +30,7 @@ #include "libavutil/opt.h" #include "libavutil/time.h" #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "timefilter.h" #include "avdevice.h" @@ -341,13 +342,13 @@ static const AVClass jack_indev_class = { .category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT, }; -const AVInputFormat ff_jack_demuxer = { - .name = "jack", - .long_name = NULL_IF_CONFIG_SMALL("JACK Audio Connection Kit"), +const FFInputFormat ff_jack_demuxer = { + .p.name = "jack", + .p.long_name = NULL_IF_CONFIG_SMALL("JACK Audio Connection Kit"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &jack_indev_class, .priv_data_size = sizeof(JackData), .read_header = audio_read_header, .read_packet = audio_read_packet, .read_close = audio_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &jack_indev_class, }; diff --git a/libavdevice/kmsgrab.c b/libavdevice/kmsgrab.c index ba9b306c65..bf6341e9fd 100644 --- a/libavdevice/kmsgrab.c +++ b/libavdevice/kmsgrab.c @@ -42,6 +42,7 @@ #include "libavutil/time.h" #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" typedef struct KMSGrabContext { @@ -708,13 +709,13 @@ static const AVClass kmsgrab_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_kmsgrab_demuxer = { - .name = "kmsgrab", - .long_name = NULL_IF_CONFIG_SMALL("KMS screen capture"), +const FFInputFormat ff_kmsgrab_demuxer = { + .p.name = "kmsgrab", + .p.long_name = NULL_IF_CONFIG_SMALL("KMS screen capture"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &kmsgrab_class, .priv_data_size = sizeof(KMSGrabContext), .read_header = &kmsgrab_read_header, .read_packet = &kmsgrab_read_packet, .read_close = &kmsgrab_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &kmsgrab_class, }; diff --git a/libavdevice/lavfi.c b/libavdevice/lavfi.c index 2bfd0b81c7..58ad62bd97 100644 --- a/libavdevice/lavfi.c +++ b/libavdevice/lavfi.c @@ -39,6 +39,7 @@ #include "libavutil/pixdesc.h" #include "libavfilter/avfilter.h" #include "libavfilter/buffersink.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "avdevice.h" @@ -493,14 +494,14 @@ static const AVClass lavfi_class = { .category = AV_CLASS_CATEGORY_DEVICE_INPUT, }; -const AVInputFormat ff_lavfi_demuxer = { - .name = "lavfi", - .long_name = NULL_IF_CONFIG_SMALL("Libavfilter virtual input device"), +const FFInputFormat ff_lavfi_demuxer = { + .p.name = "lavfi", + .p.long_name = NULL_IF_CONFIG_SMALL("Libavfilter virtual input device"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &lavfi_class, .priv_data_size = sizeof(LavfiContext), .read_header = lavfi_read_header, .read_packet = lavfi_read_packet, .read_close = lavfi_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &lavfi_class, .flags_internal = FF_FMT_INIT_CLEANUP, }; diff --git a/libavdevice/libcdio.c b/libavdevice/libcdio.c index 28c339564f..47ff8fd4d8 100644 --- a/libavdevice/libcdio.c +++ b/libavdevice/libcdio.c @@ -180,13 +180,13 @@ static const AVClass libcdio_class = { .category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT, }; -const AVInputFormat ff_libcdio_demuxer = { - .name = "libcdio", +const FFInputFormat ff_libcdio_demuxer = { + .p.name = "libcdio", + .p.flags = AVFMT_NOFILE, + .p.priv_class = &libcdio_class, .read_header = read_header, .read_packet = read_packet, .read_close = read_close, .read_seek = read_seek, .priv_data_size = sizeof(CDIOContext), - .flags = AVFMT_NOFILE, - .priv_class = &libcdio_class, }; diff --git a/libavdevice/libdc1394.c b/libavdevice/libdc1394.c index e98b88c1a2..c73d07a60f 100644 --- a/libavdevice/libdc1394.c +++ b/libavdevice/libdc1394.c @@ -31,6 +31,7 @@ #include "libavutil/pixdesc.h" #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" typedef struct dc1394_data { @@ -288,13 +289,13 @@ static int dc1394_close(AVFormatContext * context) return 0; } -const AVInputFormat ff_libdc1394_demuxer = { - .name = "libdc1394", - .long_name = NULL_IF_CONFIG_SMALL("dc1394 v.2 A/V grab"), +const FFInputFormat ff_libdc1394_demuxer = { + .p.name = "libdc1394", + .p.long_name = NULL_IF_CONFIG_SMALL("dc1394 v.2 A/V grab"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &libdc1394_class, .priv_data_size = sizeof(struct dc1394_data), .read_header = dc1394_read_header, .read_packet = dc1394_read_packet, .read_close = dc1394_close, - .flags = AVFMT_NOFILE, - .priv_class = &libdc1394_class, }; diff --git a/libavdevice/openal-dec.c b/libavdevice/openal-dec.c index 91a40ae020..53b34abd5a 100644 --- a/libavdevice/openal-dec.c +++ b/libavdevice/openal-dec.c @@ -26,6 +26,7 @@ #include "libavutil/opt.h" #include "libavutil/time.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "avdevice.h" @@ -248,14 +249,14 @@ static const AVClass class = { .category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT, }; -const AVInputFormat ff_openal_demuxer = { - .name = "openal", - .long_name = NULL_IF_CONFIG_SMALL("OpenAL audio capture device"), +const FFInputFormat ff_openal_demuxer = { + .p.name = "openal", + .p.long_name = NULL_IF_CONFIG_SMALL("OpenAL audio capture device"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &class, .priv_data_size = sizeof(al_data), .read_probe = NULL, .read_header = read_header, .read_packet = read_packet, .read_close = read_close, - .flags = AVFMT_NOFILE, - .priv_class = &class }; diff --git a/libavdevice/oss_dec.c b/libavdevice/oss_dec.c index 2cdc4324e8..f727d6e110 100644 --- a/libavdevice/oss_dec.c +++ b/libavdevice/oss_dec.c @@ -35,6 +35,7 @@ #include "libavutil/time.h" #include "avdevice.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "oss.h" @@ -130,13 +131,13 @@ static const AVClass oss_demuxer_class = { .category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT, }; -const AVInputFormat ff_oss_demuxer = { - .name = "oss", - .long_name = NULL_IF_CONFIG_SMALL("OSS (Open Sound System) capture"), +const FFInputFormat ff_oss_demuxer = { + .p.name = "oss", + .p.long_name = NULL_IF_CONFIG_SMALL("OSS (Open Sound System) capture"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &oss_demuxer_class, .priv_data_size = sizeof(OSSAudioData), .read_header = audio_read_header, .read_packet = audio_read_packet, .read_close = audio_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &oss_demuxer_class, }; diff --git a/libavdevice/pulse_audio_dec.c b/libavdevice/pulse_audio_dec.c index 2545462939..32be18e7dd 100644 --- a/libavdevice/pulse_audio_dec.c +++ b/libavdevice/pulse_audio_dec.c @@ -29,6 +29,7 @@ #include "libavutil/time.h" #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "libavformat/version.h" #include "pulse_audio_common.h" @@ -393,14 +394,14 @@ static const AVClass pulse_demuxer_class = { .category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT, }; -const AVInputFormat ff_pulse_demuxer = { - .name = "pulse", - .long_name = NULL_IF_CONFIG_SMALL("Pulse audio input"), +const FFInputFormat ff_pulse_demuxer = { + .p.name = "pulse", + .p.long_name = NULL_IF_CONFIG_SMALL("Pulse audio input"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &pulse_demuxer_class, .priv_data_size = sizeof(PulseData), .read_header = pulse_read_header, .read_packet = pulse_read_packet, .read_close = pulse_close, .get_device_list = pulse_get_device_list, - .flags = AVFMT_NOFILE, - .priv_class = &pulse_demuxer_class, }; diff --git a/libavdevice/sndio_dec.c b/libavdevice/sndio_dec.c index 6059830367..309394189b 100644 --- a/libavdevice/sndio_dec.c +++ b/libavdevice/sndio_dec.c @@ -27,6 +27,7 @@ #include "libavutil/time.h" #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" #include "libavdevice/sndio.h" @@ -109,13 +110,13 @@ static const AVClass sndio_demuxer_class = { .category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT, }; -const AVInputFormat ff_sndio_demuxer = { - .name = "sndio", - .long_name = NULL_IF_CONFIG_SMALL("sndio audio capture"), +const FFInputFormat ff_sndio_demuxer = { + .p.name = "sndio", + .p.long_name = NULL_IF_CONFIG_SMALL("sndio audio capture"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &sndio_demuxer_class, .priv_data_size = sizeof(SndioData), .read_header = audio_read_header, .read_packet = audio_read_packet, .read_close = audio_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &sndio_demuxer_class, }; diff --git a/libavdevice/utils.c b/libavdevice/utils.c index d9a52c53ab..c72a839dfa 100644 --- a/libavdevice/utils.c +++ b/libavdevice/utils.c @@ -19,6 +19,7 @@ #include "internal.h" #include "libavutil/opt.h" #include "libavformat/avformat.h" +#include "libavformat/demux.h" int ff_alloc_input_device_context(AVFormatContext **avctx, const AVInputFormat *iformat, const char *format) { @@ -38,8 +39,8 @@ int ff_alloc_input_device_context(AVFormatContext **avctx, const AVInputFormat * goto error; } s->iformat = iformat; - if (s->iformat->priv_data_size > 0) { - s->priv_data = av_mallocz(s->iformat->priv_data_size); + if (ffifmt(s->iformat)->priv_data_size > 0) { + s->priv_data = av_mallocz(ffifmt(s->iformat)->priv_data_size); if (!s->priv_data) { ret = AVERROR(ENOMEM); goto error; diff --git a/libavdevice/v4l2.c b/libavdevice/v4l2.c index 5e85d1a2b3..818b874eb1 100644 --- a/libavdevice/v4l2.c +++ b/libavdevice/v4l2.c @@ -1134,15 +1134,15 @@ static const AVClass v4l2_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT, }; -const AVInputFormat ff_v4l2_demuxer = { - .name = "video4linux2,v4l2", - .long_name = NULL_IF_CONFIG_SMALL("Video4Linux2 device grab"), +const FFInputFormat ff_v4l2_demuxer = { + .p.name = "video4linux2,v4l2", + .p.long_name = NULL_IF_CONFIG_SMALL("Video4Linux2 device grab"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &v4l2_class, .priv_data_size = sizeof(struct video_data), .read_probe = v4l2_read_probe, .read_header = v4l2_read_header, .read_packet = v4l2_read_packet, .read_close = v4l2_read_close, .get_device_list = v4l2_get_device_list, - .flags = AVFMT_NOFILE, - .priv_class = &v4l2_class, }; diff --git a/libavdevice/vfwcap.c b/libavdevice/vfwcap.c index 86a40b4af4..dd077dd08c 100644 --- a/libavdevice/vfwcap.c +++ b/libavdevice/vfwcap.c @@ -25,6 +25,7 @@ #include "libavutil/parseutils.h" #include "libavcodec/packet_internal.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" // windows.h must no be included before winsock2.h, and libavformat internal @@ -482,13 +483,13 @@ static const AVClass vfw_class = { .category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT }; -const AVInputFormat ff_vfwcap_demuxer = { - .name = "vfwcap", - .long_name = NULL_IF_CONFIG_SMALL("VfW video capture"), +const FFInputFormat ff_vfwcap_demuxer = { + .p.name = "vfwcap", + .p.long_name = NULL_IF_CONFIG_SMALL("VfW video capture"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &vfw_class, .priv_data_size = sizeof(struct vfw_ctx), .read_header = vfw_read_header, .read_packet = vfw_read_packet, .read_close = vfw_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &vfw_class, }; diff --git a/libavdevice/xcbgrab.c b/libavdevice/xcbgrab.c index 64a68ba497..8feae17455 100644 --- a/libavdevice/xcbgrab.c +++ b/libavdevice/xcbgrab.c @@ -45,6 +45,7 @@ #include "libavutil/time.h" #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavformat/internal.h" typedef struct XCBGrabContext { @@ -900,13 +901,13 @@ static av_cold int xcbgrab_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_xcbgrab_demuxer = { - .name = "x11grab", - .long_name = NULL_IF_CONFIG_SMALL("X11 screen capture, using XCB"), +const FFInputFormat ff_xcbgrab_demuxer = { + .p.name = "x11grab", + .p.long_name = NULL_IF_CONFIG_SMALL("X11 screen capture, using XCB"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &xcbgrab_class, .priv_data_size = sizeof(XCBGrabContext), .read_header = xcbgrab_read_header, .read_packet = xcbgrab_read_packet, .read_close = xcbgrab_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &xcbgrab_class, }; diff --git a/libavformat/3dostr.c b/libavformat/3dostr.c index fea12d03e6..78b8205904 100644 --- a/libavformat/3dostr.c +++ b/libavformat/3dostr.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int threedostr_probe(const AVProbeData *p) @@ -191,12 +192,12 @@ static int threedostr_read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR_EOF; } -const AVInputFormat ff_threedostr_demuxer = { - .name = "3dostr", - .long_name = NULL_IF_CONFIG_SMALL("3DO STR"), +const FFInputFormat ff_threedostr_demuxer = { + .p.name = "3dostr", + .p.long_name = NULL_IF_CONFIG_SMALL("3DO STR"), + .p.extensions = "str", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = threedostr_probe, .read_header = threedostr_read_header, .read_packet = threedostr_read_packet, - .extensions = "str", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/4xm.c b/libavformat/4xm.c index fdf6e4b84b..3424791b81 100644 --- a/libavformat/4xm.c +++ b/libavformat/4xm.c @@ -31,6 +31,7 @@ #include "libavutil/intfloat.h" #include "libavcodec/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define RIFF_TAG MKTAG('R', 'I', 'F', 'F') @@ -396,9 +397,9 @@ static int fourxm_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_fourxm_demuxer = { - .name = "4xm", - .long_name = NULL_IF_CONFIG_SMALL("4X Technologies"), +const FFInputFormat ff_fourxm_demuxer = { + .p.name = "4xm", + .p.long_name = NULL_IF_CONFIG_SMALL("4X Technologies"), .priv_data_size = sizeof(FourxmDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = fourxm_probe, diff --git a/libavformat/aacdec.c b/libavformat/aacdec.c index 4da98a6884..e267886e1a 100644 --- a/libavformat/aacdec.c +++ b/libavformat/aacdec.c @@ -24,6 +24,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "id3v1.h" #include "id3v2.h" @@ -208,14 +209,14 @@ retry: return ret; } -const AVInputFormat ff_aac_demuxer = { - .name = "aac", - .long_name = NULL_IF_CONFIG_SMALL("raw ADTS AAC (Advanced Audio Coding)"), +const FFInputFormat ff_aac_demuxer = { + .p.name = "aac", + .p.long_name = NULL_IF_CONFIG_SMALL("raw ADTS AAC (Advanced Audio Coding)"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "aac", + .p.mime_type = "audio/aac,audio/aacp,audio/x-aac", .read_probe = adts_aac_probe, .read_header = adts_aac_read_header, .read_packet = adts_aac_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "aac", - .mime_type = "audio/aac,audio/aacp,audio/x-aac", .raw_codec_id = AV_CODEC_ID_AAC, }; diff --git a/libavformat/aadec.c b/libavformat/aadec.c index e7b048b1f9..dd698d0d5d 100644 --- a/libavformat/aadec.c +++ b/libavformat/aadec.c @@ -371,17 +371,17 @@ static const AVClass aa_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_aa_demuxer = { - .name = "aa", - .long_name = NULL_IF_CONFIG_SMALL("Audible AA format files"), - .priv_class = &aa_class, +const FFInputFormat ff_aa_demuxer = { + .p.name = "aa", + .p.long_name = NULL_IF_CONFIG_SMALL("Audible AA format files"), + .p.priv_class = &aa_class, + .p.extensions = "aa", + .p.flags = AVFMT_NO_BYTE_SEEK | AVFMT_NOGENSEARCH, .priv_data_size = sizeof(AADemuxContext), - .extensions = "aa", .read_probe = aa_probe, .read_header = aa_read_header, .read_packet = aa_read_packet, .read_seek = aa_read_seek, .read_close = aa_read_close, - .flags = AVFMT_NO_BYTE_SEEK | AVFMT_NOGENSEARCH, .flags_internal = FF_FMT_INIT_CLEANUP, }; diff --git a/libavformat/aaxdec.c b/libavformat/aaxdec.c index 4e352f8ce3..0ccd4944db 100644 --- a/libavformat/aaxdec.c +++ b/libavformat/aaxdec.c @@ -383,15 +383,15 @@ static int aax_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_aax_demuxer = { - .name = "aax", - .long_name = NULL_IF_CONFIG_SMALL("CRI AAX"), +const FFInputFormat ff_aax_demuxer = { + .p.name = "aax", + .p.long_name = NULL_IF_CONFIG_SMALL("CRI AAX"), + .p.extensions = "aax", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(AAXContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = aax_probe, .read_header = aax_read_header, .read_packet = aax_read_packet, .read_close = aax_read_close, - .extensions = "aax", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/ac3dec.c b/libavformat/ac3dec.c index 989d126a81..0b1557d68c 100644 --- a/libavformat/ac3dec.c +++ b/libavformat/ac3dec.c @@ -25,6 +25,7 @@ #include "libavutil/crc.h" #include "libavcodec/ac3_parser.h" #include "avformat.h" +#include "demux.h" #include "rawdec.h" static int ac3_eac3_probe(const AVProbeData *p, enum AVCodecID expected_codec_id) @@ -104,17 +105,17 @@ static int ac3_probe(const AVProbeData *p) return ac3_eac3_probe(p, AV_CODEC_ID_AC3); } -const AVInputFormat ff_ac3_demuxer = { - .name = "ac3", - .long_name = NULL_IF_CONFIG_SMALL("raw AC-3"), +const FFInputFormat ff_ac3_demuxer = { + .p.name = "ac3", + .p.long_name = NULL_IF_CONFIG_SMALL("raw AC-3"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "ac3", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = ac3_probe, .read_header = ff_raw_audio_read_header, .read_packet = ff_raw_read_partial_packet, - .flags= AVFMT_GENERIC_INDEX, - .extensions = "ac3", .raw_codec_id = AV_CODEC_ID_AC3, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; #endif @@ -124,16 +125,16 @@ static int eac3_probe(const AVProbeData *p) return ac3_eac3_probe(p, AV_CODEC_ID_EAC3); } -const AVInputFormat ff_eac3_demuxer = { - .name = "eac3", - .long_name = NULL_IF_CONFIG_SMALL("raw E-AC-3"), +const FFInputFormat ff_eac3_demuxer = { + .p.name = "eac3", + .p.long_name = NULL_IF_CONFIG_SMALL("raw E-AC-3"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "eac3,ec3", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = eac3_probe, .read_header = ff_raw_audio_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "eac3,ec3", .raw_codec_id = AV_CODEC_ID_EAC3, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; #endif diff --git a/libavformat/ac4dec.c b/libavformat/ac4dec.c index 71950f52dc..f647f557cc 100644 --- a/libavformat/ac4dec.c +++ b/libavformat/ac4dec.c @@ -22,6 +22,7 @@ #include "libavutil/avassert.h" #include "libavutil/crc.h" #include "avformat.h" +#include "demux.h" #include "rawdec.h" static int ac4_probe(const AVProbeData *p) @@ -93,12 +94,12 @@ static int ac4_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_ac4_demuxer = { - .name = "ac4", - .long_name = NULL_IF_CONFIG_SMALL("raw AC-4"), +const FFInputFormat ff_ac4_demuxer = { + .p.name = "ac4", + .p.long_name = NULL_IF_CONFIG_SMALL("raw AC-4"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "ac4", .read_probe = ac4_probe, .read_header = ac4_read_header, .read_packet = ac4_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "ac4", }; diff --git a/libavformat/acedec.c b/libavformat/acedec.c index 6322af31f3..5ab6de02f4 100644 --- a/libavformat/acedec.c +++ b/libavformat/acedec.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int ace_probe(const AVProbeData *p) @@ -104,11 +105,11 @@ static int ace_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align); } -const AVInputFormat ff_ace_demuxer = { - .name = "ace", - .long_name = NULL_IF_CONFIG_SMALL("tri-Ace Audio Container"), +const FFInputFormat ff_ace_demuxer = { + .p.name = "ace", + .p.long_name = NULL_IF_CONFIG_SMALL("tri-Ace Audio Container"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = ace_probe, .read_header = ace_read_header, .read_packet = ace_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/acm.c b/libavformat/acm.c index 28a040330f..b9126ef824 100644 --- a/libavformat/acm.c +++ b/libavformat/acm.c @@ -61,15 +61,15 @@ static int acm_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_acm_demuxer = { - .name = "acm", - .long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"), +const FFInputFormat ff_acm_demuxer = { + .p.name = "acm", + .p.long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"), + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, + .p.extensions = "acm", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = acm_probe, .read_header = acm_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, - .extensions = "acm", .raw_codec_id = AV_CODEC_ID_INTERPLAY_ACM, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/act.c b/libavformat/act.c index da73fcceca..255568dd3c 100644 --- a/libavformat/act.c +++ b/libavformat/act.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "riff.h" #include "internal.h" @@ -198,9 +199,9 @@ static int read_packet(AVFormatContext *s, return ret; } -const AVInputFormat ff_act_demuxer = { - .name = "act", - .long_name = "ACT Voice file format", +const FFInputFormat ff_act_demuxer = { + .p.name = "act", + .p.long_name = "ACT Voice file format", .priv_data_size = sizeof(ACTContext), .read_probe = probe, .read_header = read_header, diff --git a/libavformat/adp.c b/libavformat/adp.c index c9a5a04507..2e69c7a199 100644 --- a/libavformat/adp.c +++ b/libavformat/adp.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int adp_probe(const AVProbeData *p) @@ -82,11 +83,11 @@ static int adp_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_adp_demuxer = { - .name = "adp", - .long_name = NULL_IF_CONFIG_SMALL("ADP"), +const FFInputFormat ff_adp_demuxer = { + .p.name = "adp", + .p.long_name = NULL_IF_CONFIG_SMALL("ADP"), + .p.extensions = "adp,dtk", .read_probe = adp_probe, .read_header = adp_read_header, .read_packet = adp_read_packet, - .extensions = "adp,dtk", }; diff --git a/libavformat/ads.c b/libavformat/ads.c index c19498490d..ea81248765 100644 --- a/libavformat/ads.c +++ b/libavformat/ads.c @@ -21,6 +21,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int ads_probe(const AVProbeData *p) @@ -80,11 +81,11 @@ static int ads_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_ads_demuxer = { - .name = "ads", - .long_name = NULL_IF_CONFIG_SMALL("Sony PS2 ADS"), +const FFInputFormat ff_ads_demuxer = { + .p.name = "ads", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony PS2 ADS"), + .p.extensions = "ads,ss2", .read_probe = ads_probe, .read_header = ads_read_header, .read_packet = ads_read_packet, - .extensions = "ads,ss2", }; diff --git a/libavformat/adxdec.c b/libavformat/adxdec.c index b6bd3303a7..0909884f19 100644 --- a/libavformat/adxdec.c +++ b/libavformat/adxdec.c @@ -128,14 +128,14 @@ static int adx_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_adx_demuxer = { - .name = "adx", - .long_name = NULL_IF_CONFIG_SMALL("CRI ADX"), +const FFInputFormat ff_adx_demuxer = { + .p.name = "adx", + .p.long_name = NULL_IF_CONFIG_SMALL("CRI ADX"), + .p.extensions = "adx", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = adx_probe, .priv_data_size = sizeof(ADXDemuxerContext), .read_header = adx_read_header, .read_packet = adx_read_packet, - .extensions = "adx", .raw_codec_id = AV_CODEC_ID_ADPCM_ADX, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/aea.c b/libavformat/aea.c index 52e3147729..4cb2da6639 100644 --- a/libavformat/aea.c +++ b/libavformat/aea.c @@ -23,6 +23,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "pcm.h" #define AT1_SU_SIZE 212 @@ -89,13 +90,13 @@ static int aea_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, s->streams[0]->codecpar->block_align); } -const AVInputFormat ff_aea_demuxer = { - .name = "aea", - .long_name = NULL_IF_CONFIG_SMALL("MD STUDIO audio"), +const FFInputFormat ff_aea_demuxer = { + .p.name = "aea", + .p.long_name = NULL_IF_CONFIG_SMALL("MD STUDIO audio"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "aea", .read_probe = aea_read_probe, .read_header = aea_read_header, .read_packet = aea_read_packet, .read_seek = ff_pcm_read_seek, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "aea", }; diff --git a/libavformat/afc.c b/libavformat/afc.c index 898c7d03eb..3113554c0f 100644 --- a/libavformat/afc.c +++ b/libavformat/afc.c @@ -21,6 +21,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct AFCDemuxContext { @@ -68,12 +69,12 @@ static int afc_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_afc_demuxer = { - .name = "afc", - .long_name = NULL_IF_CONFIG_SMALL("AFC"), +const FFInputFormat ff_afc_demuxer = { + .p.name = "afc", + .p.long_name = NULL_IF_CONFIG_SMALL("AFC"), + .p.extensions = "afc", + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK, .priv_data_size = sizeof(AFCDemuxContext), .read_header = afc_read_header, .read_packet = afc_read_packet, - .extensions = "afc", - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK, }; diff --git a/libavformat/aiffdec.c b/libavformat/aiffdec.c index 5314d159ef..9318943f96 100644 --- a/libavformat/aiffdec.c +++ b/libavformat/aiffdec.c @@ -433,13 +433,13 @@ static int aiff_read_packet(AVFormatContext *s, return 0; } -const AVInputFormat ff_aiff_demuxer = { - .name = "aiff", - .long_name = NULL_IF_CONFIG_SMALL("Audio IFF"), +const FFInputFormat ff_aiff_demuxer = { + .p.name = "aiff", + .p.long_name = NULL_IF_CONFIG_SMALL("Audio IFF"), + .p.codec_tag = ff_aiff_codec_tags_list, .priv_data_size = sizeof(AIFFInputContext), .read_probe = aiff_probe, .read_header = aiff_read_header, .read_packet = aiff_read_packet, .read_seek = ff_pcm_read_seek, - .codec_tag = ff_aiff_codec_tags_list, }; diff --git a/libavformat/aixdec.c b/libavformat/aixdec.c index f7d8e17acd..edecbac5b3 100644 --- a/libavformat/aixdec.c +++ b/libavformat/aixdec.c @@ -130,12 +130,12 @@ static int aix_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_aix_demuxer = { - .name = "aix", - .long_name = NULL_IF_CONFIG_SMALL("CRI AIX"), +const FFInputFormat ff_aix_demuxer = { + .p.name = "aix", + .p.long_name = NULL_IF_CONFIG_SMALL("CRI AIX"), + .p.extensions= "aix", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = aix_probe, .read_header = aix_read_header, .read_packet = aix_read_packet, - .extensions = "aix", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/allformats.c b/libavformat/allformats.c index b04b43cab3..32e443e3b1 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -25,268 +25,269 @@ #include "libavformat/internal.h" #include "avformat.h" +#include "demux.h" #include "mux.h" /* (de)muxers */ extern const FFOutputFormat ff_a64_muxer; -extern const AVInputFormat ff_aa_demuxer; -extern const AVInputFormat ff_aac_demuxer; -extern const AVInputFormat ff_aax_demuxer; -extern const AVInputFormat ff_ac3_demuxer; +extern const FFInputFormat ff_aa_demuxer; +extern const FFInputFormat ff_aac_demuxer; +extern const FFInputFormat ff_aax_demuxer; +extern const FFInputFormat ff_ac3_demuxer; extern const FFOutputFormat ff_ac3_muxer; -extern const AVInputFormat ff_ac4_demuxer; +extern const FFInputFormat ff_ac4_demuxer; extern const FFOutputFormat ff_ac4_muxer; -extern const AVInputFormat ff_ace_demuxer; -extern const AVInputFormat ff_acm_demuxer; -extern const AVInputFormat ff_act_demuxer; -extern const AVInputFormat ff_adf_demuxer; -extern const AVInputFormat ff_adp_demuxer; -extern const AVInputFormat ff_ads_demuxer; +extern const FFInputFormat ff_ace_demuxer; +extern const FFInputFormat ff_acm_demuxer; +extern const FFInputFormat ff_act_demuxer; +extern const FFInputFormat ff_adf_demuxer; +extern const FFInputFormat ff_adp_demuxer; +extern const FFInputFormat ff_ads_demuxer; extern const FFOutputFormat ff_adts_muxer; -extern const AVInputFormat ff_adx_demuxer; +extern const FFInputFormat ff_adx_demuxer; extern const FFOutputFormat ff_adx_muxer; -extern const AVInputFormat ff_aea_demuxer; -extern const AVInputFormat ff_afc_demuxer; -extern const AVInputFormat ff_aiff_demuxer; +extern const FFInputFormat ff_aea_demuxer; +extern const FFInputFormat ff_afc_demuxer; +extern const FFInputFormat ff_aiff_demuxer; extern const FFOutputFormat ff_aiff_muxer; -extern const AVInputFormat ff_aix_demuxer; -extern const AVInputFormat ff_alp_demuxer; +extern const FFInputFormat ff_aix_demuxer; +extern const FFInputFormat ff_alp_demuxer; extern const FFOutputFormat ff_alp_muxer; -extern const AVInputFormat ff_amr_demuxer; +extern const FFInputFormat ff_amr_demuxer; extern const FFOutputFormat ff_amr_muxer; -extern const AVInputFormat ff_amrnb_demuxer; -extern const AVInputFormat ff_amrwb_demuxer; +extern const FFInputFormat ff_amrnb_demuxer; +extern const FFInputFormat ff_amrwb_demuxer; extern const FFOutputFormat ff_amv_muxer; -extern const AVInputFormat ff_anm_demuxer; -extern const AVInputFormat ff_apac_demuxer; -extern const AVInputFormat ff_apc_demuxer; -extern const AVInputFormat ff_ape_demuxer; -extern const AVInputFormat ff_apm_demuxer; +extern const FFInputFormat ff_anm_demuxer; +extern const FFInputFormat ff_apac_demuxer; +extern const FFInputFormat ff_apc_demuxer; +extern const FFInputFormat ff_ape_demuxer; +extern const FFInputFormat ff_apm_demuxer; extern const FFOutputFormat ff_apm_muxer; -extern const AVInputFormat ff_apng_demuxer; +extern const FFInputFormat ff_apng_demuxer; extern const FFOutputFormat ff_apng_muxer; -extern const AVInputFormat ff_aptx_demuxer; +extern const FFInputFormat ff_aptx_demuxer; extern const FFOutputFormat ff_aptx_muxer; -extern const AVInputFormat ff_aptx_hd_demuxer; +extern const FFInputFormat ff_aptx_hd_demuxer; extern const FFOutputFormat ff_aptx_hd_muxer; -extern const AVInputFormat ff_aqtitle_demuxer; -extern const AVInputFormat ff_argo_asf_demuxer; +extern const FFInputFormat ff_aqtitle_demuxer; +extern const FFInputFormat ff_argo_asf_demuxer; extern const FFOutputFormat ff_argo_asf_muxer; -extern const AVInputFormat ff_argo_brp_demuxer; -extern const AVInputFormat ff_argo_cvg_demuxer; +extern const FFInputFormat ff_argo_brp_demuxer; +extern const FFInputFormat ff_argo_cvg_demuxer; extern const FFOutputFormat ff_argo_cvg_muxer; -extern const AVInputFormat ff_asf_demuxer; +extern const FFInputFormat ff_asf_demuxer; extern const FFOutputFormat ff_asf_muxer; -extern const AVInputFormat ff_asf_o_demuxer; -extern const AVInputFormat ff_ass_demuxer; +extern const FFInputFormat ff_asf_o_demuxer; +extern const FFInputFormat ff_ass_demuxer; extern const FFOutputFormat ff_ass_muxer; -extern const AVInputFormat ff_ast_demuxer; +extern const FFInputFormat ff_ast_demuxer; extern const FFOutputFormat ff_ast_muxer; extern const FFOutputFormat ff_asf_stream_muxer; -extern const AVInputFormat ff_au_demuxer; +extern const FFInputFormat ff_au_demuxer; extern const FFOutputFormat ff_au_muxer; -extern const AVInputFormat ff_av1_demuxer; -extern const AVInputFormat ff_avi_demuxer; +extern const FFInputFormat ff_av1_demuxer; +extern const FFInputFormat ff_avi_demuxer; extern const FFOutputFormat ff_avi_muxer; extern const FFOutputFormat ff_avif_muxer; -extern const AVInputFormat ff_avisynth_demuxer; +extern const FFInputFormat ff_avisynth_demuxer; extern const FFOutputFormat ff_avm2_muxer; -extern const AVInputFormat ff_avr_demuxer; -extern const AVInputFormat ff_avs_demuxer; -extern const AVInputFormat ff_avs2_demuxer; +extern const FFInputFormat ff_avr_demuxer; +extern const FFInputFormat ff_avs_demuxer; +extern const FFInputFormat ff_avs2_demuxer; extern const FFOutputFormat ff_avs2_muxer; -extern const AVInputFormat ff_avs3_demuxer; +extern const FFInputFormat ff_avs3_demuxer; extern const FFOutputFormat ff_avs3_muxer; -extern const AVInputFormat ff_bethsoftvid_demuxer; -extern const AVInputFormat ff_bfi_demuxer; -extern const AVInputFormat ff_bintext_demuxer; -extern const AVInputFormat ff_bink_demuxer; -extern const AVInputFormat ff_binka_demuxer; -extern const AVInputFormat ff_bit_demuxer; +extern const FFInputFormat ff_bethsoftvid_demuxer; +extern const FFInputFormat ff_bfi_demuxer; +extern const FFInputFormat ff_bintext_demuxer; +extern const FFInputFormat ff_bink_demuxer; +extern const FFInputFormat ff_binka_demuxer; +extern const FFInputFormat ff_bit_demuxer; extern const FFOutputFormat ff_bit_muxer; -extern const AVInputFormat ff_bitpacked_demuxer; -extern const AVInputFormat ff_bmv_demuxer; -extern const AVInputFormat ff_bfstm_demuxer; -extern const AVInputFormat ff_brstm_demuxer; -extern const AVInputFormat ff_boa_demuxer; -extern const AVInputFormat ff_bonk_demuxer; -extern const AVInputFormat ff_c93_demuxer; -extern const AVInputFormat ff_caf_demuxer; +extern const FFInputFormat ff_bitpacked_demuxer; +extern const FFInputFormat ff_bmv_demuxer; +extern const FFInputFormat ff_bfstm_demuxer; +extern const FFInputFormat ff_brstm_demuxer; +extern const FFInputFormat ff_boa_demuxer; +extern const FFInputFormat ff_bonk_demuxer; +extern const FFInputFormat ff_c93_demuxer; +extern const FFInputFormat ff_caf_demuxer; extern const FFOutputFormat ff_caf_muxer; -extern const AVInputFormat ff_cavsvideo_demuxer; +extern const FFInputFormat ff_cavsvideo_demuxer; extern const FFOutputFormat ff_cavsvideo_muxer; -extern const AVInputFormat ff_cdg_demuxer; -extern const AVInputFormat ff_cdxl_demuxer; -extern const AVInputFormat ff_cine_demuxer; -extern const AVInputFormat ff_codec2_demuxer; +extern const FFInputFormat ff_cdg_demuxer; +extern const FFInputFormat ff_cdxl_demuxer; +extern const FFInputFormat ff_cine_demuxer; +extern const FFInputFormat ff_codec2_demuxer; extern const FFOutputFormat ff_codec2_muxer; -extern const AVInputFormat ff_codec2raw_demuxer; +extern const FFInputFormat ff_codec2raw_demuxer; extern const FFOutputFormat ff_codec2raw_muxer; -extern const AVInputFormat ff_concat_demuxer; +extern const FFInputFormat ff_concat_demuxer; extern const FFOutputFormat ff_crc_muxer; -extern const AVInputFormat ff_dash_demuxer; +extern const FFInputFormat ff_dash_demuxer; extern const FFOutputFormat ff_dash_muxer; -extern const AVInputFormat ff_data_demuxer; +extern const FFInputFormat ff_data_demuxer; extern const FFOutputFormat ff_data_muxer; -extern const AVInputFormat ff_daud_demuxer; +extern const FFInputFormat ff_daud_demuxer; extern const FFOutputFormat ff_daud_muxer; -extern const AVInputFormat ff_dcstr_demuxer; -extern const AVInputFormat ff_derf_demuxer; -extern const AVInputFormat ff_dfa_demuxer; -extern const AVInputFormat ff_dfpwm_demuxer; +extern const FFInputFormat ff_dcstr_demuxer; +extern const FFInputFormat ff_derf_demuxer; +extern const FFInputFormat ff_dfa_demuxer; +extern const FFInputFormat ff_dfpwm_demuxer; extern const FFOutputFormat ff_dfpwm_muxer; -extern const AVInputFormat ff_dhav_demuxer; -extern const AVInputFormat ff_dirac_demuxer; +extern const FFInputFormat ff_dhav_demuxer; +extern const FFInputFormat ff_dirac_demuxer; extern const FFOutputFormat ff_dirac_muxer; -extern const AVInputFormat ff_dnxhd_demuxer; +extern const FFInputFormat ff_dnxhd_demuxer; extern const FFOutputFormat ff_dnxhd_muxer; -extern const AVInputFormat ff_dsf_demuxer; -extern const AVInputFormat ff_dsicin_demuxer; -extern const AVInputFormat ff_dss_demuxer; -extern const AVInputFormat ff_dts_demuxer; +extern const FFInputFormat ff_dsf_demuxer; +extern const FFInputFormat ff_dsicin_demuxer; +extern const FFInputFormat ff_dss_demuxer; +extern const FFInputFormat ff_dts_demuxer; extern const FFOutputFormat ff_dts_muxer; -extern const AVInputFormat ff_dtshd_demuxer; -extern const AVInputFormat ff_dv_demuxer; +extern const FFInputFormat ff_dtshd_demuxer; +extern const FFInputFormat ff_dv_demuxer; extern const FFOutputFormat ff_dv_muxer; -extern const AVInputFormat ff_dvbsub_demuxer; -extern const AVInputFormat ff_dvbtxt_demuxer; -extern const AVInputFormat ff_dxa_demuxer; -extern const AVInputFormat ff_ea_demuxer; -extern const AVInputFormat ff_ea_cdata_demuxer; -extern const AVInputFormat ff_eac3_demuxer; +extern const FFInputFormat ff_dvbsub_demuxer; +extern const FFInputFormat ff_dvbtxt_demuxer; +extern const FFInputFormat ff_dxa_demuxer; +extern const FFInputFormat ff_ea_demuxer; +extern const FFInputFormat ff_ea_cdata_demuxer; +extern const FFInputFormat ff_eac3_demuxer; extern const FFOutputFormat ff_eac3_muxer; -extern const AVInputFormat ff_epaf_demuxer; -extern const AVInputFormat ff_evc_demuxer; +extern const FFInputFormat ff_epaf_demuxer; +extern const FFInputFormat ff_evc_demuxer; extern const FFOutputFormat ff_evc_muxer; extern const FFOutputFormat ff_f4v_muxer; -extern const AVInputFormat ff_ffmetadata_demuxer; +extern const FFInputFormat ff_ffmetadata_demuxer; extern const FFOutputFormat ff_ffmetadata_muxer; extern const FFOutputFormat ff_fifo_muxer; extern const FFOutputFormat ff_fifo_test_muxer; -extern const AVInputFormat ff_filmstrip_demuxer; +extern const FFInputFormat ff_filmstrip_demuxer; extern const FFOutputFormat ff_filmstrip_muxer; -extern const AVInputFormat ff_fits_demuxer; +extern const FFInputFormat ff_fits_demuxer; extern const FFOutputFormat ff_fits_muxer; -extern const AVInputFormat ff_flac_demuxer; +extern const FFInputFormat ff_flac_demuxer; extern const FFOutputFormat ff_flac_muxer; -extern const AVInputFormat ff_flic_demuxer; -extern const AVInputFormat ff_flv_demuxer; +extern const FFInputFormat ff_flic_demuxer; +extern const FFInputFormat ff_flv_demuxer; extern const FFOutputFormat ff_flv_muxer; -extern const AVInputFormat ff_live_flv_demuxer; -extern const AVInputFormat ff_fourxm_demuxer; +extern const FFInputFormat ff_live_flv_demuxer; +extern const FFInputFormat ff_fourxm_demuxer; extern const FFOutputFormat ff_framecrc_muxer; extern const FFOutputFormat ff_framehash_muxer; extern const FFOutputFormat ff_framemd5_muxer; -extern const AVInputFormat ff_frm_demuxer; -extern const AVInputFormat ff_fsb_demuxer; -extern const AVInputFormat ff_fwse_demuxer; -extern const AVInputFormat ff_g722_demuxer; +extern const FFInputFormat ff_frm_demuxer; +extern const FFInputFormat ff_fsb_demuxer; +extern const FFInputFormat ff_fwse_demuxer; +extern const FFInputFormat ff_g722_demuxer; extern const FFOutputFormat ff_g722_muxer; -extern const AVInputFormat ff_g723_1_demuxer; +extern const FFInputFormat ff_g723_1_demuxer; extern const FFOutputFormat ff_g723_1_muxer; -extern const AVInputFormat ff_g726_demuxer; +extern const FFInputFormat ff_g726_demuxer; extern const FFOutputFormat ff_g726_muxer; -extern const AVInputFormat ff_g726le_demuxer; +extern const FFInputFormat ff_g726le_demuxer; extern const FFOutputFormat ff_g726le_muxer; -extern const AVInputFormat ff_g729_demuxer; -extern const AVInputFormat ff_gdv_demuxer; -extern const AVInputFormat ff_genh_demuxer; -extern const AVInputFormat ff_gif_demuxer; +extern const FFInputFormat ff_g729_demuxer; +extern const FFInputFormat ff_gdv_demuxer; +extern const FFInputFormat ff_genh_demuxer; +extern const FFInputFormat ff_gif_demuxer; extern const FFOutputFormat ff_gif_muxer; -extern const AVInputFormat ff_gsm_demuxer; +extern const FFInputFormat ff_gsm_demuxer; extern const FFOutputFormat ff_gsm_muxer; -extern const AVInputFormat ff_gxf_demuxer; +extern const FFInputFormat ff_gxf_demuxer; extern const FFOutputFormat ff_gxf_muxer; -extern const AVInputFormat ff_h261_demuxer; +extern const FFInputFormat ff_h261_demuxer; extern const FFOutputFormat ff_h261_muxer; -extern const AVInputFormat ff_h263_demuxer; +extern const FFInputFormat ff_h263_demuxer; extern const FFOutputFormat ff_h263_muxer; -extern const AVInputFormat ff_h264_demuxer; +extern const FFInputFormat ff_h264_demuxer; extern const FFOutputFormat ff_h264_muxer; extern const FFOutputFormat ff_hash_muxer; -extern const AVInputFormat ff_hca_demuxer; -extern const AVInputFormat ff_hcom_demuxer; +extern const FFInputFormat ff_hca_demuxer; +extern const FFInputFormat ff_hcom_demuxer; extern const FFOutputFormat ff_hds_muxer; -extern const AVInputFormat ff_hevc_demuxer; +extern const FFInputFormat ff_hevc_demuxer; extern const FFOutputFormat ff_hevc_muxer; -extern const AVInputFormat ff_hls_demuxer; +extern const FFInputFormat ff_hls_demuxer; extern const FFOutputFormat ff_hls_muxer; -extern const AVInputFormat ff_hnm_demuxer; -extern const AVInputFormat ff_iamf_demuxer; +extern const FFInputFormat ff_hnm_demuxer; +extern const FFInputFormat ff_iamf_demuxer; extern const FFOutputFormat ff_iamf_muxer; -extern const AVInputFormat ff_ico_demuxer; +extern const FFInputFormat ff_ico_demuxer; extern const FFOutputFormat ff_ico_muxer; -extern const AVInputFormat ff_idcin_demuxer; -extern const AVInputFormat ff_idf_demuxer; -extern const AVInputFormat ff_iff_demuxer; -extern const AVInputFormat ff_ifv_demuxer; -extern const AVInputFormat ff_ilbc_demuxer; +extern const FFInputFormat ff_idcin_demuxer; +extern const FFInputFormat ff_idf_demuxer; +extern const FFInputFormat ff_iff_demuxer; +extern const FFInputFormat ff_ifv_demuxer; +extern const FFInputFormat ff_ilbc_demuxer; extern const FFOutputFormat ff_ilbc_muxer; -extern const AVInputFormat ff_image2_demuxer; +extern const FFInputFormat ff_image2_demuxer; extern const FFOutputFormat ff_image2_muxer; -extern const AVInputFormat ff_image2pipe_demuxer; +extern const FFInputFormat ff_image2pipe_demuxer; extern const FFOutputFormat ff_image2pipe_muxer; -extern const AVInputFormat ff_image2_alias_pix_demuxer; -extern const AVInputFormat ff_image2_brender_pix_demuxer; -extern const AVInputFormat ff_imf_demuxer; -extern const AVInputFormat ff_ingenient_demuxer; -extern const AVInputFormat ff_ipmovie_demuxer; +extern const FFInputFormat ff_image2_alias_pix_demuxer; +extern const FFInputFormat ff_image2_brender_pix_demuxer; +extern const FFInputFormat ff_imf_demuxer; +extern const FFInputFormat ff_ingenient_demuxer; +extern const FFInputFormat ff_ipmovie_demuxer; extern const FFOutputFormat ff_ipod_muxer; -extern const AVInputFormat ff_ipu_demuxer; -extern const AVInputFormat ff_ircam_demuxer; +extern const FFInputFormat ff_ipu_demuxer; +extern const FFInputFormat ff_ircam_demuxer; extern const FFOutputFormat ff_ircam_muxer; extern const FFOutputFormat ff_ismv_muxer; -extern const AVInputFormat ff_iss_demuxer; -extern const AVInputFormat ff_iv8_demuxer; -extern const AVInputFormat ff_ivf_demuxer; +extern const FFInputFormat ff_iss_demuxer; +extern const FFInputFormat ff_iv8_demuxer; +extern const FFInputFormat ff_ivf_demuxer; extern const FFOutputFormat ff_ivf_muxer; -extern const AVInputFormat ff_ivr_demuxer; -extern const AVInputFormat ff_jacosub_demuxer; +extern const FFInputFormat ff_ivr_demuxer; +extern const FFInputFormat ff_jacosub_demuxer; extern const FFOutputFormat ff_jacosub_muxer; -extern const AVInputFormat ff_jv_demuxer; -extern const AVInputFormat ff_jpegxl_anim_demuxer; -extern const AVInputFormat ff_kux_demuxer; -extern const AVInputFormat ff_kvag_demuxer; +extern const FFInputFormat ff_jv_demuxer; +extern const FFInputFormat ff_jpegxl_anim_demuxer; +extern const FFInputFormat ff_kux_demuxer; +extern const FFInputFormat ff_kvag_demuxer; extern const FFOutputFormat ff_kvag_muxer; -extern const AVInputFormat ff_laf_demuxer; +extern const FFInputFormat ff_laf_demuxer; extern const FFOutputFormat ff_latm_muxer; -extern const AVInputFormat ff_lmlm4_demuxer; -extern const AVInputFormat ff_loas_demuxer; -extern const AVInputFormat ff_luodat_demuxer; -extern const AVInputFormat ff_lrc_demuxer; +extern const FFInputFormat ff_lmlm4_demuxer; +extern const FFInputFormat ff_loas_demuxer; +extern const FFInputFormat ff_luodat_demuxer; +extern const FFInputFormat ff_lrc_demuxer; extern const FFOutputFormat ff_lrc_muxer; -extern const AVInputFormat ff_lvf_demuxer; -extern const AVInputFormat ff_lxf_demuxer; -extern const AVInputFormat ff_m4v_demuxer; +extern const FFInputFormat ff_lvf_demuxer; +extern const FFInputFormat ff_lxf_demuxer; +extern const FFInputFormat ff_m4v_demuxer; extern const FFOutputFormat ff_m4v_muxer; -extern const AVInputFormat ff_mca_demuxer; -extern const AVInputFormat ff_mcc_demuxer; +extern const FFInputFormat ff_mca_demuxer; +extern const FFInputFormat ff_mcc_demuxer; extern const FFOutputFormat ff_md5_muxer; -extern const AVInputFormat ff_matroska_demuxer; +extern const FFInputFormat ff_matroska_demuxer; extern const FFOutputFormat ff_matroska_muxer; extern const FFOutputFormat ff_matroska_audio_muxer; -extern const AVInputFormat ff_mgsts_demuxer; -extern const AVInputFormat ff_microdvd_demuxer; +extern const FFInputFormat ff_mgsts_demuxer; +extern const FFInputFormat ff_microdvd_demuxer; extern const FFOutputFormat ff_microdvd_muxer; -extern const AVInputFormat ff_mjpeg_demuxer; +extern const FFInputFormat ff_mjpeg_demuxer; extern const FFOutputFormat ff_mjpeg_muxer; -extern const AVInputFormat ff_mjpeg_2000_demuxer; -extern const AVInputFormat ff_mlp_demuxer; +extern const FFInputFormat ff_mjpeg_2000_demuxer; +extern const FFInputFormat ff_mlp_demuxer; extern const FFOutputFormat ff_mlp_muxer; -extern const AVInputFormat ff_mlv_demuxer; -extern const AVInputFormat ff_mm_demuxer; -extern const AVInputFormat ff_mmf_demuxer; +extern const FFInputFormat ff_mlv_demuxer; +extern const FFInputFormat ff_mm_demuxer; +extern const FFInputFormat ff_mmf_demuxer; extern const FFOutputFormat ff_mmf_muxer; -extern const AVInputFormat ff_mods_demuxer; -extern const AVInputFormat ff_moflex_demuxer; -extern const AVInputFormat ff_mov_demuxer; +extern const FFInputFormat ff_mods_demuxer; +extern const FFInputFormat ff_moflex_demuxer; +extern const FFInputFormat ff_mov_demuxer; extern const FFOutputFormat ff_mov_muxer; extern const FFOutputFormat ff_mp2_muxer; -extern const AVInputFormat ff_mp3_demuxer; +extern const FFInputFormat ff_mp3_demuxer; extern const FFOutputFormat ff_mp3_muxer; extern const FFOutputFormat ff_mp4_muxer; -extern const AVInputFormat ff_mpc_demuxer; -extern const AVInputFormat ff_mpc8_demuxer; +extern const FFInputFormat ff_mpc_demuxer; +extern const FFInputFormat ff_mpc8_demuxer; extern const FFOutputFormat ff_mpeg1system_muxer; extern const FFOutputFormat ff_mpeg1vcd_muxer; extern const FFOutputFormat ff_mpeg1video_muxer; @@ -294,282 +295,282 @@ extern const FFOutputFormat ff_mpeg2dvd_muxer; extern const FFOutputFormat ff_mpeg2svcd_muxer; extern const FFOutputFormat ff_mpeg2video_muxer; extern const FFOutputFormat ff_mpeg2vob_muxer; -extern const AVInputFormat ff_mpegps_demuxer; -extern const AVInputFormat ff_mpegts_demuxer; +extern const FFInputFormat ff_mpegps_demuxer; +extern const FFInputFormat ff_mpegts_demuxer; extern const FFOutputFormat ff_mpegts_muxer; -extern const AVInputFormat ff_mpegtsraw_demuxer; -extern const AVInputFormat ff_mpegvideo_demuxer; -extern const AVInputFormat ff_mpjpeg_demuxer; +extern const FFInputFormat ff_mpegtsraw_demuxer; +extern const FFInputFormat ff_mpegvideo_demuxer; +extern const FFInputFormat ff_mpjpeg_demuxer; extern const FFOutputFormat ff_mpjpeg_muxer; -extern const AVInputFormat ff_mpl2_demuxer; -extern const AVInputFormat ff_mpsub_demuxer; -extern const AVInputFormat ff_msf_demuxer; -extern const AVInputFormat ff_msnwc_tcp_demuxer; -extern const AVInputFormat ff_msp_demuxer; -extern const AVInputFormat ff_mtaf_demuxer; -extern const AVInputFormat ff_mtv_demuxer; -extern const AVInputFormat ff_musx_demuxer; -extern const AVInputFormat ff_mv_demuxer; -extern const AVInputFormat ff_mvi_demuxer; -extern const AVInputFormat ff_mxf_demuxer; +extern const FFInputFormat ff_mpl2_demuxer; +extern const FFInputFormat ff_mpsub_demuxer; +extern const FFInputFormat ff_msf_demuxer; +extern const FFInputFormat ff_msnwc_tcp_demuxer; +extern const FFInputFormat ff_msp_demuxer; +extern const FFInputFormat ff_mtaf_demuxer; +extern const FFInputFormat ff_mtv_demuxer; +extern const FFInputFormat ff_musx_demuxer; +extern const FFInputFormat ff_mv_demuxer; +extern const FFInputFormat ff_mvi_demuxer; +extern const FFInputFormat ff_mxf_demuxer; extern const FFOutputFormat ff_mxf_muxer; extern const FFOutputFormat ff_mxf_d10_muxer; extern const FFOutputFormat ff_mxf_opatom_muxer; -extern const AVInputFormat ff_mxg_demuxer; -extern const AVInputFormat ff_nc_demuxer; -extern const AVInputFormat ff_nistsphere_demuxer; -extern const AVInputFormat ff_nsp_demuxer; -extern const AVInputFormat ff_nsv_demuxer; +extern const FFInputFormat ff_mxg_demuxer; +extern const FFInputFormat ff_nc_demuxer; +extern const FFInputFormat ff_nistsphere_demuxer; +extern const FFInputFormat ff_nsp_demuxer; +extern const FFInputFormat ff_nsv_demuxer; extern const FFOutputFormat ff_null_muxer; -extern const AVInputFormat ff_nut_demuxer; +extern const FFInputFormat ff_nut_demuxer; extern const FFOutputFormat ff_nut_muxer; -extern const AVInputFormat ff_nuv_demuxer; -extern const AVInputFormat ff_obu_demuxer; +extern const FFInputFormat ff_nuv_demuxer; +extern const FFInputFormat ff_obu_demuxer; extern const FFOutputFormat ff_obu_muxer; extern const FFOutputFormat ff_oga_muxer; -extern const AVInputFormat ff_ogg_demuxer; +extern const FFInputFormat ff_ogg_demuxer; extern const FFOutputFormat ff_ogg_muxer; extern const FFOutputFormat ff_ogv_muxer; -extern const AVInputFormat ff_oma_demuxer; +extern const FFInputFormat ff_oma_demuxer; extern const FFOutputFormat ff_oma_muxer; extern const FFOutputFormat ff_opus_muxer; -extern const AVInputFormat ff_osq_demuxer; -extern const AVInputFormat ff_paf_demuxer; -extern const AVInputFormat ff_pcm_alaw_demuxer; +extern const FFInputFormat ff_osq_demuxer; +extern const FFInputFormat ff_paf_demuxer; +extern const FFInputFormat ff_pcm_alaw_demuxer; extern const FFOutputFormat ff_pcm_alaw_muxer; -extern const AVInputFormat ff_pcm_mulaw_demuxer; +extern const FFInputFormat ff_pcm_mulaw_demuxer; extern const FFOutputFormat ff_pcm_mulaw_muxer; -extern const AVInputFormat ff_pcm_vidc_demuxer; +extern const FFInputFormat ff_pcm_vidc_demuxer; extern const FFOutputFormat ff_pcm_vidc_muxer; -extern const AVInputFormat ff_pcm_f64be_demuxer; +extern const FFInputFormat ff_pcm_f64be_demuxer; extern const FFOutputFormat ff_pcm_f64be_muxer; -extern const AVInputFormat ff_pcm_f64le_demuxer; +extern const FFInputFormat ff_pcm_f64le_demuxer; extern const FFOutputFormat ff_pcm_f64le_muxer; -extern const AVInputFormat ff_pcm_f32be_demuxer; +extern const FFInputFormat ff_pcm_f32be_demuxer; extern const FFOutputFormat ff_pcm_f32be_muxer; -extern const AVInputFormat ff_pcm_f32le_demuxer; +extern const FFInputFormat ff_pcm_f32le_demuxer; extern const FFOutputFormat ff_pcm_f32le_muxer; -extern const AVInputFormat ff_pcm_s32be_demuxer; +extern const FFInputFormat ff_pcm_s32be_demuxer; extern const FFOutputFormat ff_pcm_s32be_muxer; -extern const AVInputFormat ff_pcm_s32le_demuxer; +extern const FFInputFormat ff_pcm_s32le_demuxer; extern const FFOutputFormat ff_pcm_s32le_muxer; -extern const AVInputFormat ff_pcm_s24be_demuxer; +extern const FFInputFormat ff_pcm_s24be_demuxer; extern const FFOutputFormat ff_pcm_s24be_muxer; -extern const AVInputFormat ff_pcm_s24le_demuxer; +extern const FFInputFormat ff_pcm_s24le_demuxer; extern const FFOutputFormat ff_pcm_s24le_muxer; -extern const AVInputFormat ff_pcm_s16be_demuxer; +extern const FFInputFormat ff_pcm_s16be_demuxer; extern const FFOutputFormat ff_pcm_s16be_muxer; -extern const AVInputFormat ff_pcm_s16le_demuxer; +extern const FFInputFormat ff_pcm_s16le_demuxer; extern const FFOutputFormat ff_pcm_s16le_muxer; -extern const AVInputFormat ff_pcm_s8_demuxer; +extern const FFInputFormat ff_pcm_s8_demuxer; extern const FFOutputFormat ff_pcm_s8_muxer; -extern const AVInputFormat ff_pcm_u32be_demuxer; +extern const FFInputFormat ff_pcm_u32be_demuxer; extern const FFOutputFormat ff_pcm_u32be_muxer; -extern const AVInputFormat ff_pcm_u32le_demuxer; +extern const FFInputFormat ff_pcm_u32le_demuxer; extern const FFOutputFormat ff_pcm_u32le_muxer; -extern const AVInputFormat ff_pcm_u24be_demuxer; +extern const FFInputFormat ff_pcm_u24be_demuxer; extern const FFOutputFormat ff_pcm_u24be_muxer; -extern const AVInputFormat ff_pcm_u24le_demuxer; +extern const FFInputFormat ff_pcm_u24le_demuxer; extern const FFOutputFormat ff_pcm_u24le_muxer; -extern const AVInputFormat ff_pcm_u16be_demuxer; +extern const FFInputFormat ff_pcm_u16be_demuxer; extern const FFOutputFormat ff_pcm_u16be_muxer; -extern const AVInputFormat ff_pcm_u16le_demuxer; +extern const FFInputFormat ff_pcm_u16le_demuxer; extern const FFOutputFormat ff_pcm_u16le_muxer; -extern const AVInputFormat ff_pcm_u8_demuxer; +extern const FFInputFormat ff_pcm_u8_demuxer; extern const FFOutputFormat ff_pcm_u8_muxer; -extern const AVInputFormat ff_pdv_demuxer; -extern const AVInputFormat ff_pjs_demuxer; -extern const AVInputFormat ff_pmp_demuxer; -extern const AVInputFormat ff_pp_bnk_demuxer; +extern const FFInputFormat ff_pdv_demuxer; +extern const FFInputFormat ff_pjs_demuxer; +extern const FFInputFormat ff_pmp_demuxer; +extern const FFInputFormat ff_pp_bnk_demuxer; extern const FFOutputFormat ff_psp_muxer; -extern const AVInputFormat ff_pva_demuxer; -extern const AVInputFormat ff_pvf_demuxer; -extern const AVInputFormat ff_qcp_demuxer; -extern const AVInputFormat ff_qoa_demuxer; -extern const AVInputFormat ff_r3d_demuxer; -extern const AVInputFormat ff_rawvideo_demuxer; +extern const FFInputFormat ff_pva_demuxer; +extern const FFInputFormat ff_pvf_demuxer; +extern const FFInputFormat ff_qcp_demuxer; +extern const FFInputFormat ff_qoa_demuxer; +extern const FFInputFormat ff_r3d_demuxer; +extern const FFInputFormat ff_rawvideo_demuxer; extern const FFOutputFormat ff_rawvideo_muxer; extern const FFOutputFormat ff_rcwt_muxer; -extern const AVInputFormat ff_realtext_demuxer; -extern const AVInputFormat ff_redspark_demuxer; -extern const AVInputFormat ff_rka_demuxer; -extern const AVInputFormat ff_rl2_demuxer; -extern const AVInputFormat ff_rm_demuxer; +extern const FFInputFormat ff_realtext_demuxer; +extern const FFInputFormat ff_redspark_demuxer; +extern const FFInputFormat ff_rka_demuxer; +extern const FFInputFormat ff_rl2_demuxer; +extern const FFInputFormat ff_rm_demuxer; extern const FFOutputFormat ff_rm_muxer; -extern const AVInputFormat ff_roq_demuxer; +extern const FFInputFormat ff_roq_demuxer; extern const FFOutputFormat ff_roq_muxer; -extern const AVInputFormat ff_rpl_demuxer; -extern const AVInputFormat ff_rsd_demuxer; -extern const AVInputFormat ff_rso_demuxer; +extern const FFInputFormat ff_rpl_demuxer; +extern const FFInputFormat ff_rsd_demuxer; +extern const FFInputFormat ff_rso_demuxer; extern const FFOutputFormat ff_rso_muxer; -extern const AVInputFormat ff_rtp_demuxer; +extern const FFInputFormat ff_rtp_demuxer; extern const FFOutputFormat ff_rtp_muxer; extern const FFOutputFormat ff_rtp_mpegts_muxer; -extern const AVInputFormat ff_rtsp_demuxer; +extern const FFInputFormat ff_rtsp_demuxer; extern const FFOutputFormat ff_rtsp_muxer; -extern const AVInputFormat ff_s337m_demuxer; -extern const AVInputFormat ff_sami_demuxer; -extern const AVInputFormat ff_sap_demuxer; +extern const FFInputFormat ff_s337m_demuxer; +extern const FFInputFormat ff_sami_demuxer; +extern const FFInputFormat ff_sap_demuxer; extern const FFOutputFormat ff_sap_muxer; -extern const AVInputFormat ff_sbc_demuxer; +extern const FFInputFormat ff_sbc_demuxer; extern const FFOutputFormat ff_sbc_muxer; -extern const AVInputFormat ff_sbg_demuxer; -extern const AVInputFormat ff_scc_demuxer; +extern const FFInputFormat ff_sbg_demuxer; +extern const FFInputFormat ff_scc_demuxer; extern const FFOutputFormat ff_scc_muxer; -extern const AVInputFormat ff_scd_demuxer; -extern const AVInputFormat ff_sdns_demuxer; -extern const AVInputFormat ff_sdp_demuxer; -extern const AVInputFormat ff_sdr2_demuxer; -extern const AVInputFormat ff_sds_demuxer; -extern const AVInputFormat ff_sdx_demuxer; -extern const AVInputFormat ff_segafilm_demuxer; +extern const FFInputFormat ff_scd_demuxer; +extern const FFInputFormat ff_sdns_demuxer; +extern const FFInputFormat ff_sdp_demuxer; +extern const FFInputFormat ff_sdr2_demuxer; +extern const FFInputFormat ff_sds_demuxer; +extern const FFInputFormat ff_sdx_demuxer; +extern const FFInputFormat ff_segafilm_demuxer; extern const FFOutputFormat ff_segafilm_muxer; extern const FFOutputFormat ff_segment_muxer; extern const FFOutputFormat ff_stream_segment_muxer; -extern const AVInputFormat ff_ser_demuxer; -extern const AVInputFormat ff_sga_demuxer; -extern const AVInputFormat ff_shorten_demuxer; -extern const AVInputFormat ff_siff_demuxer; -extern const AVInputFormat ff_simbiosis_imx_demuxer; -extern const AVInputFormat ff_sln_demuxer; -extern const AVInputFormat ff_smacker_demuxer; -extern const AVInputFormat ff_smjpeg_demuxer; +extern const FFInputFormat ff_ser_demuxer; +extern const FFInputFormat ff_sga_demuxer; +extern const FFInputFormat ff_shorten_demuxer; +extern const FFInputFormat ff_siff_demuxer; +extern const FFInputFormat ff_simbiosis_imx_demuxer; +extern const FFInputFormat ff_sln_demuxer; +extern const FFInputFormat ff_smacker_demuxer; +extern const FFInputFormat ff_smjpeg_demuxer; extern const FFOutputFormat ff_smjpeg_muxer; extern const FFOutputFormat ff_smoothstreaming_muxer; -extern const AVInputFormat ff_smush_demuxer; -extern const AVInputFormat ff_sol_demuxer; -extern const AVInputFormat ff_sox_demuxer; +extern const FFInputFormat ff_smush_demuxer; +extern const FFInputFormat ff_sol_demuxer; +extern const FFInputFormat ff_sox_demuxer; extern const FFOutputFormat ff_sox_muxer; extern const FFOutputFormat ff_spx_muxer; -extern const AVInputFormat ff_spdif_demuxer; +extern const FFInputFormat ff_spdif_demuxer; extern const FFOutputFormat ff_spdif_muxer; -extern const AVInputFormat ff_srt_demuxer; +extern const FFInputFormat ff_srt_demuxer; extern const FFOutputFormat ff_srt_muxer; -extern const AVInputFormat ff_str_demuxer; -extern const AVInputFormat ff_stl_demuxer; +extern const FFInputFormat ff_str_demuxer; +extern const FFInputFormat ff_stl_demuxer; extern const FFOutputFormat ff_streamhash_muxer; -extern const AVInputFormat ff_subviewer1_demuxer; -extern const AVInputFormat ff_subviewer_demuxer; -extern const AVInputFormat ff_sup_demuxer; +extern const FFInputFormat ff_subviewer1_demuxer; +extern const FFInputFormat ff_subviewer_demuxer; +extern const FFInputFormat ff_sup_demuxer; extern const FFOutputFormat ff_sup_muxer; -extern const AVInputFormat ff_svag_demuxer; -extern const AVInputFormat ff_svs_demuxer; -extern const AVInputFormat ff_swf_demuxer; +extern const FFInputFormat ff_svag_demuxer; +extern const FFInputFormat ff_svs_demuxer; +extern const FFInputFormat ff_swf_demuxer; extern const FFOutputFormat ff_swf_muxer; -extern const AVInputFormat ff_tak_demuxer; +extern const FFInputFormat ff_tak_demuxer; extern const FFOutputFormat ff_tee_muxer; -extern const AVInputFormat ff_tedcaptions_demuxer; +extern const FFInputFormat ff_tedcaptions_demuxer; extern const FFOutputFormat ff_tg2_muxer; extern const FFOutputFormat ff_tgp_muxer; -extern const AVInputFormat ff_thp_demuxer; -extern const AVInputFormat ff_threedostr_demuxer; -extern const AVInputFormat ff_tiertexseq_demuxer; +extern const FFInputFormat ff_thp_demuxer; +extern const FFInputFormat ff_threedostr_demuxer; +extern const FFInputFormat ff_tiertexseq_demuxer; extern const FFOutputFormat ff_mkvtimestamp_v2_muxer; -extern const AVInputFormat ff_tmv_demuxer; -extern const AVInputFormat ff_truehd_demuxer; +extern const FFInputFormat ff_tmv_demuxer; +extern const FFInputFormat ff_truehd_demuxer; extern const FFOutputFormat ff_truehd_muxer; -extern const AVInputFormat ff_tta_demuxer; +extern const FFInputFormat ff_tta_demuxer; extern const FFOutputFormat ff_tta_muxer; extern const FFOutputFormat ff_ttml_muxer; -extern const AVInputFormat ff_txd_demuxer; -extern const AVInputFormat ff_tty_demuxer; -extern const AVInputFormat ff_ty_demuxer; +extern const FFInputFormat ff_txd_demuxer; +extern const FFInputFormat ff_tty_demuxer; +extern const FFInputFormat ff_ty_demuxer; extern const FFOutputFormat ff_uncodedframecrc_muxer; -extern const AVInputFormat ff_usm_demuxer; -extern const AVInputFormat ff_v210_demuxer; -extern const AVInputFormat ff_v210x_demuxer; -extern const AVInputFormat ff_vag_demuxer; -extern const AVInputFormat ff_vc1_demuxer; +extern const FFInputFormat ff_usm_demuxer; +extern const FFInputFormat ff_v210_demuxer; +extern const FFInputFormat ff_v210x_demuxer; +extern const FFInputFormat ff_vag_demuxer; +extern const FFInputFormat ff_vc1_demuxer; extern const FFOutputFormat ff_vc1_muxer; -extern const AVInputFormat ff_vc1t_demuxer; +extern const FFInputFormat ff_vc1t_demuxer; extern const FFOutputFormat ff_vc1t_muxer; -extern const AVInputFormat ff_vividas_demuxer; -extern const AVInputFormat ff_vivo_demuxer; -extern const AVInputFormat ff_vmd_demuxer; -extern const AVInputFormat ff_vobsub_demuxer; -extern const AVInputFormat ff_voc_demuxer; +extern const FFInputFormat ff_vividas_demuxer; +extern const FFInputFormat ff_vivo_demuxer; +extern const FFInputFormat ff_vmd_demuxer; +extern const FFInputFormat ff_vobsub_demuxer; +extern const FFInputFormat ff_voc_demuxer; extern const FFOutputFormat ff_voc_muxer; -extern const AVInputFormat ff_vpk_demuxer; -extern const AVInputFormat ff_vplayer_demuxer; -extern const AVInputFormat ff_vqf_demuxer; -extern const AVInputFormat ff_vvc_demuxer; +extern const FFInputFormat ff_vpk_demuxer; +extern const FFInputFormat ff_vplayer_demuxer; +extern const FFInputFormat ff_vqf_demuxer; +extern const FFInputFormat ff_vvc_demuxer; extern const FFOutputFormat ff_vvc_muxer; -extern const AVInputFormat ff_w64_demuxer; +extern const FFInputFormat ff_w64_demuxer; extern const FFOutputFormat ff_w64_muxer; -extern const AVInputFormat ff_wady_demuxer; -extern const AVInputFormat ff_wavarc_demuxer; -extern const AVInputFormat ff_wav_demuxer; +extern const FFInputFormat ff_wady_demuxer; +extern const FFInputFormat ff_wavarc_demuxer; +extern const FFInputFormat ff_wav_demuxer; extern const FFOutputFormat ff_wav_muxer; -extern const AVInputFormat ff_wc3_demuxer; +extern const FFInputFormat ff_wc3_demuxer; extern const FFOutputFormat ff_webm_muxer; -extern const AVInputFormat ff_webm_dash_manifest_demuxer; +extern const FFInputFormat ff_webm_dash_manifest_demuxer; extern const FFOutputFormat ff_webm_dash_manifest_muxer; extern const FFOutputFormat ff_webm_chunk_muxer; extern const FFOutputFormat ff_webp_muxer; -extern const AVInputFormat ff_webvtt_demuxer; +extern const FFInputFormat ff_webvtt_demuxer; extern const FFOutputFormat ff_webvtt_muxer; -extern const AVInputFormat ff_wsaud_demuxer; +extern const FFInputFormat ff_wsaud_demuxer; extern const FFOutputFormat ff_wsaud_muxer; -extern const AVInputFormat ff_wsd_demuxer; -extern const AVInputFormat ff_wsvqa_demuxer; -extern const AVInputFormat ff_wtv_demuxer; +extern const FFInputFormat ff_wsd_demuxer; +extern const FFInputFormat ff_wsvqa_demuxer; +extern const FFInputFormat ff_wtv_demuxer; extern const FFOutputFormat ff_wtv_muxer; -extern const AVInputFormat ff_wve_demuxer; -extern const AVInputFormat ff_wv_demuxer; +extern const FFInputFormat ff_wve_demuxer; +extern const FFInputFormat ff_wv_demuxer; extern const FFOutputFormat ff_wv_muxer; -extern const AVInputFormat ff_xa_demuxer; -extern const AVInputFormat ff_xbin_demuxer; -extern const AVInputFormat ff_xmd_demuxer; -extern const AVInputFormat ff_xmv_demuxer; -extern const AVInputFormat ff_xvag_demuxer; -extern const AVInputFormat ff_xwma_demuxer; -extern const AVInputFormat ff_yop_demuxer; -extern const AVInputFormat ff_yuv4mpegpipe_demuxer; +extern const FFInputFormat ff_xa_demuxer; +extern const FFInputFormat ff_xbin_demuxer; +extern const FFInputFormat ff_xmd_demuxer; +extern const FFInputFormat ff_xmv_demuxer; +extern const FFInputFormat ff_xvag_demuxer; +extern const FFInputFormat ff_xwma_demuxer; +extern const FFInputFormat ff_yop_demuxer; +extern const FFInputFormat ff_yuv4mpegpipe_demuxer; extern const FFOutputFormat ff_yuv4mpegpipe_muxer; /* image demuxers */ -extern const AVInputFormat ff_image_bmp_pipe_demuxer; -extern const AVInputFormat ff_image_cri_pipe_demuxer; -extern const AVInputFormat ff_image_dds_pipe_demuxer; -extern const AVInputFormat ff_image_dpx_pipe_demuxer; -extern const AVInputFormat ff_image_exr_pipe_demuxer; -extern const AVInputFormat ff_image_gem_pipe_demuxer; -extern const AVInputFormat ff_image_gif_pipe_demuxer; -extern const AVInputFormat ff_image_hdr_pipe_demuxer; -extern const AVInputFormat ff_image_j2k_pipe_demuxer; -extern const AVInputFormat ff_image_jpeg_pipe_demuxer; -extern const AVInputFormat ff_image_jpegls_pipe_demuxer; -extern const AVInputFormat ff_image_jpegxl_pipe_demuxer; -extern const AVInputFormat ff_image_pam_pipe_demuxer; -extern const AVInputFormat ff_image_pbm_pipe_demuxer; -extern const AVInputFormat ff_image_pcx_pipe_demuxer; -extern const AVInputFormat ff_image_pfm_pipe_demuxer; -extern const AVInputFormat ff_image_pgmyuv_pipe_demuxer; -extern const AVInputFormat ff_image_pgm_pipe_demuxer; -extern const AVInputFormat ff_image_pgx_pipe_demuxer; -extern const AVInputFormat ff_image_phm_pipe_demuxer; -extern const AVInputFormat ff_image_photocd_pipe_demuxer; -extern const AVInputFormat ff_image_pictor_pipe_demuxer; -extern const AVInputFormat ff_image_png_pipe_demuxer; -extern const AVInputFormat ff_image_ppm_pipe_demuxer; -extern const AVInputFormat ff_image_psd_pipe_demuxer; -extern const AVInputFormat ff_image_qdraw_pipe_demuxer; -extern const AVInputFormat ff_image_qoi_pipe_demuxer; -extern const AVInputFormat ff_image_sgi_pipe_demuxer; -extern const AVInputFormat ff_image_svg_pipe_demuxer; -extern const AVInputFormat ff_image_sunrast_pipe_demuxer; -extern const AVInputFormat ff_image_tiff_pipe_demuxer; -extern const AVInputFormat ff_image_vbn_pipe_demuxer; -extern const AVInputFormat ff_image_webp_pipe_demuxer; -extern const AVInputFormat ff_image_xbm_pipe_demuxer; -extern const AVInputFormat ff_image_xpm_pipe_demuxer; -extern const AVInputFormat ff_image_xwd_pipe_demuxer; +extern const FFInputFormat ff_image_bmp_pipe_demuxer; +extern const FFInputFormat ff_image_cri_pipe_demuxer; +extern const FFInputFormat ff_image_dds_pipe_demuxer; +extern const FFInputFormat ff_image_dpx_pipe_demuxer; +extern const FFInputFormat ff_image_exr_pipe_demuxer; +extern const FFInputFormat ff_image_gem_pipe_demuxer; +extern const FFInputFormat ff_image_gif_pipe_demuxer; +extern const FFInputFormat ff_image_hdr_pipe_demuxer; +extern const FFInputFormat ff_image_j2k_pipe_demuxer; +extern const FFInputFormat ff_image_jpeg_pipe_demuxer; +extern const FFInputFormat ff_image_jpegls_pipe_demuxer; +extern const FFInputFormat ff_image_jpegxl_pipe_demuxer; +extern const FFInputFormat ff_image_pam_pipe_demuxer; +extern const FFInputFormat ff_image_pbm_pipe_demuxer; +extern const FFInputFormat ff_image_pcx_pipe_demuxer; +extern const FFInputFormat ff_image_pfm_pipe_demuxer; +extern const FFInputFormat ff_image_pgmyuv_pipe_demuxer; +extern const FFInputFormat ff_image_pgm_pipe_demuxer; +extern const FFInputFormat ff_image_pgx_pipe_demuxer; +extern const FFInputFormat ff_image_phm_pipe_demuxer; +extern const FFInputFormat ff_image_photocd_pipe_demuxer; +extern const FFInputFormat ff_image_pictor_pipe_demuxer; +extern const FFInputFormat ff_image_png_pipe_demuxer; +extern const FFInputFormat ff_image_ppm_pipe_demuxer; +extern const FFInputFormat ff_image_psd_pipe_demuxer; +extern const FFInputFormat ff_image_qdraw_pipe_demuxer; +extern const FFInputFormat ff_image_qoi_pipe_demuxer; +extern const FFInputFormat ff_image_sgi_pipe_demuxer; +extern const FFInputFormat ff_image_svg_pipe_demuxer; +extern const FFInputFormat ff_image_sunrast_pipe_demuxer; +extern const FFInputFormat ff_image_tiff_pipe_demuxer; +extern const FFInputFormat ff_image_vbn_pipe_demuxer; +extern const FFInputFormat ff_image_webp_pipe_demuxer; +extern const FFInputFormat ff_image_xbm_pipe_demuxer; +extern const FFInputFormat ff_image_xpm_pipe_demuxer; +extern const FFInputFormat ff_image_xwd_pipe_demuxer; /* external libraries */ extern const FFOutputFormat ff_chromaprint_muxer; -extern const AVInputFormat ff_libgme_demuxer; -extern const AVInputFormat ff_libmodplug_demuxer; -extern const AVInputFormat ff_libopenmpt_demuxer; -extern const AVInputFormat ff_vapoursynth_demuxer; +extern const FFInputFormat ff_libgme_demuxer; +extern const FFInputFormat ff_libmodplug_demuxer; +extern const FFInputFormat ff_libopenmpt_demuxer; +extern const FFInputFormat ff_vapoursynth_demuxer; #include "libavformat/muxer_list.c" #include "libavformat/demuxer_list.c" @@ -602,22 +603,24 @@ const AVInputFormat *av_demuxer_iterate(void **opaque) { static const uintptr_t size = sizeof(demuxer_list)/sizeof(demuxer_list[0]) - 1; uintptr_t i = (uintptr_t)*opaque; - const AVInputFormat *f = NULL; + const FFInputFormat *f = NULL; uintptr_t tmp; if (i < size) { f = demuxer_list[i]; } else if (tmp = atomic_load_explicit(&indev_list_intptr, memory_order_relaxed)) { - const AVInputFormat *const *indev_list = (const AVInputFormat *const *)tmp; + const FFInputFormat *const *indev_list = (const FFInputFormat *const *)tmp; f = indev_list[i - size]; } - if (f) + if (f) { *opaque = (void*)(i + 1); - return f; + return &f->p; + } + return NULL; } -void avpriv_register_devices(const FFOutputFormat * const o[], const AVInputFormat * const i[]) +void avpriv_register_devices(const FFOutputFormat * const o[], const FFInputFormat * const i[]) { atomic_store_explicit(&outdev_list_intptr, (uintptr_t)o, memory_order_relaxed); atomic_store_explicit(&indev_list_intptr, (uintptr_t)i, memory_order_relaxed); diff --git a/libavformat/alp.c b/libavformat/alp.c index 8c6066a59c..3db256cd05 100644 --- a/libavformat/alp.c +++ b/libavformat/alp.c @@ -24,6 +24,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "rawenc.h" @@ -163,9 +164,9 @@ static int alp_seek(AVFormatContext *s, int stream_index, return avio_seek(s->pb, hdr->header_size + 8, SEEK_SET); } -const AVInputFormat ff_alp_demuxer = { - .name = "alp", - .long_name = NULL_IF_CONFIG_SMALL("LEGO Racers ALP"), +const FFInputFormat ff_alp_demuxer = { + .p.name = "alp", + .p.long_name = NULL_IF_CONFIG_SMALL("LEGO Racers ALP"), .priv_data_size = sizeof(ALPHeader), .read_probe = alp_probe, .read_header = alp_read_header, diff --git a/libavformat/amr.c b/libavformat/amr.c index b6615d8295..85815e8675 100644 --- a/libavformat/amr.c +++ b/libavformat/amr.c @@ -29,6 +29,7 @@ Write and read amr data according to RFC3267, http://www.ietf.org/rfc/rfc3267.tx #include "libavutil/intreadwrite.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "rawdec.h" @@ -140,15 +141,15 @@ static int amr_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_amr_demuxer = { - .name = "amr", - .long_name = NULL_IF_CONFIG_SMALL("3GPP AMR"), +const FFInputFormat ff_amr_demuxer = { + .p.name = "amr", + .p.long_name = NULL_IF_CONFIG_SMALL("3GPP AMR"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &ff_raw_demuxer_class, .priv_data_size = sizeof(AMRContext), .read_probe = amr_probe, .read_header = amr_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX, - .priv_class = &ff_raw_demuxer_class, }; #endif @@ -197,15 +198,15 @@ static int amrnb_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_amrnb_demuxer = { - .name = "amrnb", - .long_name = NULL_IF_CONFIG_SMALL("raw AMR-NB"), +const FFInputFormat ff_amrnb_demuxer = { + .p.name = "amrnb", + .p.long_name = NULL_IF_CONFIG_SMALL("raw AMR-NB"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &ff_raw_demuxer_class, .priv_data_size = sizeof(AMRContext), .read_probe = amrnb_probe, .read_header = amrnb_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX, - .priv_class = &ff_raw_demuxer_class, }; #endif @@ -254,15 +255,15 @@ static int amrwb_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_amrwb_demuxer = { - .name = "amrwb", - .long_name = NULL_IF_CONFIG_SMALL("raw AMR-WB"), +const FFInputFormat ff_amrwb_demuxer = { + .p.name = "amrwb", + .p.long_name = NULL_IF_CONFIG_SMALL("raw AMR-WB"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &ff_raw_demuxer_class, .priv_data_size = sizeof(AMRContext), .read_probe = amrwb_probe, .read_header = amrwb_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX, - .priv_class = &ff_raw_demuxer_class, }; #endif diff --git a/libavformat/anm.c b/libavformat/anm.c index f2ac6958a9..789780d606 100644 --- a/libavformat/anm.c +++ b/libavformat/anm.c @@ -215,9 +215,9 @@ repeat: return 0; } -const AVInputFormat ff_anm_demuxer = { - .name = "anm", - .long_name = NULL_IF_CONFIG_SMALL("Deluxe Paint Animation"), +const FFInputFormat ff_anm_demuxer = { + .p.name = "anm", + .p.long_name = NULL_IF_CONFIG_SMALL("Deluxe Paint Animation"), .priv_data_size = sizeof(AnmDemuxContext), .read_probe = probe, .read_header = read_header, diff --git a/libavformat/apac.c b/libavformat/apac.c index 18970e19dd..139035ca13 100644 --- a/libavformat/apac.c +++ b/libavformat/apac.c @@ -72,15 +72,15 @@ static int apac_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_apac_demuxer = { - .name = "apac", - .long_name = NULL_IF_CONFIG_SMALL("raw APAC"), +const FFInputFormat ff_apac_demuxer = { + .p.name = "apac", + .p.long_name = NULL_IF_CONFIG_SMALL("raw APAC"), + .p.extensions = "apc", + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, + .p.priv_class = &ff_raw_demuxer_class, .read_probe = apac_probe, .read_header = apac_read_header, .read_packet = ff_raw_read_partial_packet, - .extensions = "apc", - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, .raw_codec_id = AV_CODEC_ID_APAC, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/apc.c b/libavformat/apc.c index b8b18c966c..d24f57d021 100644 --- a/libavformat/apc.c +++ b/libavformat/apc.c @@ -79,9 +79,9 @@ static int apc_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_apc_demuxer = { - .name = "apc", - .long_name = NULL_IF_CONFIG_SMALL("CRYO APC"), +const FFInputFormat ff_apc_demuxer = { + .p.name = "apc", + .p.long_name = NULL_IF_CONFIG_SMALL("CRYO APC"), .read_probe = apc_probe, .read_header = apc_read_header, .read_packet = apc_read_packet, diff --git a/libavformat/ape.c b/libavformat/ape.c index 92e9ac7cb1..b3994d12fd 100644 --- a/libavformat/ape.c +++ b/libavformat/ape.c @@ -24,6 +24,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "apetag.h" @@ -444,9 +445,10 @@ static int ape_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp return 0; } -const AVInputFormat ff_ape_demuxer = { - .name = "ape", - .long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"), +const FFInputFormat ff_ape_demuxer = { + .p.name = "ape", + .p.long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"), + .p.extensions = "ape,apl,mac", .priv_data_size = sizeof(APEContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = ape_probe, @@ -454,5 +456,4 @@ const AVInputFormat ff_ape_demuxer = { .read_packet = ape_read_packet, .read_close = ape_read_close, .read_seek = ape_read_seek, - .extensions = "ape,apl,mac", }; diff --git a/libavformat/apm.c b/libavformat/apm.c index ccb8e22437..bcde82d958 100644 --- a/libavformat/apm.c +++ b/libavformat/apm.c @@ -23,6 +23,7 @@ #include "config_components.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "rawenc.h" @@ -202,9 +203,9 @@ static int apm_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_apm_demuxer = { - .name = "apm", - .long_name = NULL_IF_CONFIG_SMALL("Ubisoft Rayman 2 APM"), +const FFInputFormat ff_apm_demuxer = { + .p.name = "apm", + .p.long_name = NULL_IF_CONFIG_SMALL("Ubisoft Rayman 2 APM"), .read_probe = apm_probe, .read_header = apm_read_header, .read_packet = apm_read_packet diff --git a/libavformat/apngdec.c b/libavformat/apngdec.c index 8f5f37a2b1..4690283337 100644 --- a/libavformat/apngdec.c +++ b/libavformat/apngdec.c @@ -28,6 +28,7 @@ #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "libavutil/imgutils.h" #include "libavutil/intreadwrite.h" @@ -421,13 +422,13 @@ static const AVClass demuxer_class = { .category = AV_CLASS_CATEGORY_DEMUXER, }; -const AVInputFormat ff_apng_demuxer = { - .name = "apng", - .long_name = NULL_IF_CONFIG_SMALL("Animated Portable Network Graphics"), +const FFInputFormat ff_apng_demuxer = { + .p.name = "apng", + .p.long_name = NULL_IF_CONFIG_SMALL("Animated Portable Network Graphics"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &demuxer_class, .priv_data_size = sizeof(APNGDemuxContext), .read_probe = apng_probe, .read_header = apng_read_header, .read_packet = apng_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .priv_class = &demuxer_class, }; diff --git a/libavformat/aptxdec.c b/libavformat/aptxdec.c index 0637a8afde..2fca45a71e 100644 --- a/libavformat/aptxdec.c +++ b/libavformat/aptxdec.c @@ -24,6 +24,7 @@ #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #define APTX_BLOCK_SIZE 4 #define APTX_PACKET_SIZE (256*APTX_BLOCK_SIZE) @@ -101,27 +102,27 @@ static const AVClass aptx_demuxer_class = { }; #if CONFIG_APTX_DEMUXER -const AVInputFormat ff_aptx_demuxer = { - .name = "aptx", - .long_name = NULL_IF_CONFIG_SMALL("raw aptX"), - .extensions = "aptx", +const FFInputFormat ff_aptx_demuxer = { + .p.name = "aptx", + .p.long_name = NULL_IF_CONFIG_SMALL("raw aptX"), + .p.extensions = "aptx", + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &aptx_demuxer_class, .priv_data_size = sizeof(AptXDemuxerContext), .read_header = aptx_read_header, .read_packet = aptx_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .priv_class = &aptx_demuxer_class, }; #endif #if CONFIG_APTX_HD_DEMUXER -const AVInputFormat ff_aptx_hd_demuxer = { - .name = "aptx_hd", - .long_name = NULL_IF_CONFIG_SMALL("raw aptX HD"), - .extensions = "aptxhd", +const FFInputFormat ff_aptx_hd_demuxer = { + .p.name = "aptx_hd", + .p.long_name = NULL_IF_CONFIG_SMALL("raw aptX HD"), + .p.extensions = "aptxhd", + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &aptx_demuxer_class, .priv_data_size = sizeof(AptXDemuxerContext), .read_header = aptx_hd_read_header, .read_packet = aptx_hd_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .priv_class = &aptx_demuxer_class, }; #endif diff --git a/libavformat/aqtitledec.c b/libavformat/aqtitledec.c index 6c14b23862..e8e538e414 100644 --- a/libavformat/aqtitledec.c +++ b/libavformat/aqtitledec.c @@ -27,6 +27,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/opt.h" @@ -135,9 +136,11 @@ static const AVClass aqt_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_aqtitle_demuxer = { - .name = "aqtitle", - .long_name = NULL_IF_CONFIG_SMALL("AQTitle subtitles"), +const FFInputFormat ff_aqtitle_demuxer = { + .p.name = "aqtitle", + .p.long_name = NULL_IF_CONFIG_SMALL("AQTitle subtitles"), + .p.extensions = "aqt", + .p.priv_class = &aqt_class, .priv_data_size = sizeof(AQTitleContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = aqt_probe, @@ -145,6 +148,4 @@ const AVInputFormat ff_aqtitle_demuxer = { .read_packet = aqt_read_packet, .read_seek2 = aqt_read_seek, .read_close = aqt_read_close, - .extensions = "aqt", - .priv_class = &aqt_class, }; diff --git a/libavformat/argo_asf.c b/libavformat/argo_asf.c index 5f38b68b6a..0e1eae24fb 100644 --- a/libavformat/argo_asf.c +++ b/libavformat/argo_asf.c @@ -24,6 +24,7 @@ #include "libavutil/avstring.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "libavutil/channel_layout.h" @@ -272,9 +273,9 @@ static int argo_asf_seek(AVFormatContext *s, int stream_index, * - Argonaut Sound File? * - Audio Stream File? */ -const AVInputFormat ff_argo_asf_demuxer = { - .name = "argo_asf", - .long_name = NULL_IF_CONFIG_SMALL("Argonaut Games ASF"), +const FFInputFormat ff_argo_asf_demuxer = { + .p.name = "argo_asf", + .p.long_name = NULL_IF_CONFIG_SMALL("Argonaut Games ASF"), .priv_data_size = sizeof(ArgoASFDemuxContext), .read_probe = argo_asf_probe, .read_header = argo_asf_read_header, diff --git a/libavformat/argo_brp.c b/libavformat/argo_brp.c index 2ccdbd3e5b..f88def3731 100644 --- a/libavformat/argo_brp.c +++ b/libavformat/argo_brp.c @@ -21,6 +21,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/intreadwrite.h" #include "libavutil/avassert.h" @@ -413,9 +414,9 @@ static int argo_brp_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_argo_brp_demuxer = { - .name = "argo_brp", - .long_name = NULL_IF_CONFIG_SMALL("Argonaut Games BRP"), +const FFInputFormat ff_argo_brp_demuxer = { + .p.name = "argo_brp", + .p.long_name = NULL_IF_CONFIG_SMALL("Argonaut Games BRP"), .priv_data_size = sizeof(ArgoBRPDemuxContext), .read_probe = argo_brp_probe, .read_header = argo_brp_read_header, diff --git a/libavformat/argo_cvg.c b/libavformat/argo_cvg.c index 2c74200b7d..0cf0bf3e9a 100644 --- a/libavformat/argo_cvg.c +++ b/libavformat/argo_cvg.c @@ -25,6 +25,7 @@ #include "libavutil/avstring.h" #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "libavutil/opt.h" @@ -253,9 +254,9 @@ static int argo_cvg_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_argo_cvg_demuxer = { - .name = "argo_cvg", - .long_name = NULL_IF_CONFIG_SMALL("Argonaut Games CVG"), +const FFInputFormat ff_argo_cvg_demuxer = { + .p.name = "argo_cvg", + .p.long_name = NULL_IF_CONFIG_SMALL("Argonaut Games CVG"), .priv_data_size = sizeof(ArgoCVGDemuxContext), .read_probe = argo_cvg_probe, .read_header = argo_cvg_read_header, diff --git a/libavformat/asfdec_f.c b/libavformat/asfdec_f.c index a579c3e894..9713c02b0a 100644 --- a/libavformat/asfdec_f.c +++ b/libavformat/asfdec_f.c @@ -1617,9 +1617,11 @@ static int asf_read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_asf_demuxer = { - .name = "asf", - .long_name = NULL_IF_CONFIG_SMALL("ASF (Advanced / Active Streaming Format)"), +const FFInputFormat ff_asf_demuxer = { + .p.name = "asf", + .p.long_name = NULL_IF_CONFIG_SMALL("ASF (Advanced / Active Streaming Format)"), + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH, + .p.priv_class = &asf_class, .priv_data_size = sizeof(ASFContext), .read_probe = asf_probe, .read_header = asf_read_header, @@ -1627,6 +1629,4 @@ const AVInputFormat ff_asf_demuxer = { .read_close = asf_read_close, .read_seek = asf_read_seek, .read_timestamp = asf_read_pts, - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH, - .priv_class = &asf_class, }; diff --git a/libavformat/asfdec_o.c b/libavformat/asfdec_o.c index 10942ecfa0..484fb64b36 100644 --- a/libavformat/asfdec_o.c +++ b/libavformat/asfdec_o.c @@ -1674,9 +1674,10 @@ failed: return ret; } -const AVInputFormat ff_asf_o_demuxer = { - .name = "asf_o", - .long_name = NULL_IF_CONFIG_SMALL("ASF (Advanced / Active Streaming Format)"), +const FFInputFormat ff_asf_o_demuxer = { + .p.name = "asf_o", + .p.long_name = NULL_IF_CONFIG_SMALL("ASF (Advanced / Active Streaming Format)"), + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH, .priv_data_size = sizeof(ASFContext), .read_probe = asf_probe, .read_header = asf_read_header, @@ -1684,5 +1685,4 @@ const AVInputFormat ff_asf_o_demuxer = { .read_close = asf_read_close, .read_timestamp = asf_read_timestamp, .read_seek = asf_read_seek, - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH, }; diff --git a/libavformat/assdec.c b/libavformat/assdec.c index bf7b8a73a2..a689a59689 100644 --- a/libavformat/assdec.c +++ b/libavformat/assdec.c @@ -23,6 +23,7 @@ #include #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/bprint.h" @@ -160,9 +161,9 @@ end: return res; } -const AVInputFormat ff_ass_demuxer = { - .name = "ass", - .long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) subtitle"), +const FFInputFormat ff_ass_demuxer = { + .p.name = "ass", + .p.long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) subtitle"), .flags_internal = FF_FMT_INIT_CLEANUP, .priv_data_size = sizeof(ASSContext), .read_probe = ass_probe, diff --git a/libavformat/astdec.c b/libavformat/astdec.c index f812f6437c..7185e27fd4 100644 --- a/libavformat/astdec.c +++ b/libavformat/astdec.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "ast.h" @@ -111,13 +112,13 @@ static int ast_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_ast_demuxer = { - .name = "ast", - .long_name = NULL_IF_CONFIG_SMALL("AST (Audio Stream)"), +const FFInputFormat ff_ast_demuxer = { + .p.name = "ast", + .p.long_name = NULL_IF_CONFIG_SMALL("AST (Audio Stream)"), + .p.extensions = "ast", + .p.flags = AVFMT_GENERIC_INDEX, + .p.codec_tag = ff_ast_codec_tags_list, .read_probe = ast_probe, .read_header = ast_read_header, .read_packet = ast_read_packet, - .extensions = "ast", - .flags = AVFMT_GENERIC_INDEX, - .codec_tag = ff_ast_codec_tags_list, }; diff --git a/libavformat/au.c b/libavformat/au.c index 63dfd71d0f..da1fc79f0d 100644 --- a/libavformat/au.c +++ b/libavformat/au.c @@ -32,6 +32,7 @@ #include "libavutil/bprint.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" #include "mux.h" @@ -235,14 +236,14 @@ static int au_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_au_demuxer = { - .name = "au", - .long_name = NULL_IF_CONFIG_SMALL("Sun AU"), +const FFInputFormat ff_au_demuxer = { + .p.name = "au", + .p.long_name = NULL_IF_CONFIG_SMALL("Sun AU"), + .p.codec_tag = au_codec_tags, .read_probe = au_probe, .read_header = au_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .codec_tag = au_codec_tags, }; #endif /* CONFIG_AU_DEMUXER */ diff --git a/libavformat/av1dec.c b/libavformat/av1dec.c index c4542a5cbe..3382613d54 100644 --- a/libavformat/av1dec.c +++ b/libavformat/av1dec.c @@ -27,6 +27,7 @@ #include "libavcodec/bsf.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" typedef struct AV1DemuxContext { @@ -281,18 +282,18 @@ end: return ret; } -const AVInputFormat ff_av1_demuxer = { - .name = "av1", - .long_name = NULL_IF_CONFIG_SMALL("AV1 Annex B"), +const FFInputFormat ff_av1_demuxer = { + .p.name = "av1", + .p.long_name = NULL_IF_CONFIG_SMALL("AV1 Annex B"), + .p.extensions = "obu", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, + .p.priv_class = &av1_demuxer_class, .priv_data_size = sizeof(AV1DemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = annexb_probe, .read_header = av1_read_header, .read_packet = annexb_read_packet, .read_close = av1_read_close, - .extensions = "obu", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, - .priv_class = &av1_demuxer_class, }; #endif @@ -426,17 +427,17 @@ static int obu_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_obu_demuxer = { - .name = "obu", - .long_name = NULL_IF_CONFIG_SMALL("AV1 low overhead OBU"), +const FFInputFormat ff_obu_demuxer = { + .p.name = "obu", + .p.long_name = NULL_IF_CONFIG_SMALL("AV1 low overhead OBU"), + .p.extensions = "obu", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, + .p.priv_class = &av1_demuxer_class, .priv_data_size = sizeof(AV1DemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = obu_probe, .read_header = av1_read_header, .read_packet = obu_read_packet, .read_close = av1_read_close, - .extensions = "obu", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, - .priv_class = &av1_demuxer_class, }; #endif diff --git a/libavformat/avformat.h b/libavformat/avformat.h index ed02dd87b9..5fd1387e9e 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -330,7 +330,6 @@ struct AVFormatContext; struct AVFrame; -struct AVDeviceInfoList; /** * @defgroup metadata_api Public Metadata API @@ -584,103 +583,6 @@ typedef struct AVInputFormat { * @see av_probe_input_format2 */ const char *mime_type; - - /***************************************************************** - * No fields below this line are part of the public API. They - * may not be used outside of libavformat and can be changed and - * removed at will. - * New public fields should be added right above. - ***************************************************************** - */ - /** - * Raw demuxers store their codec ID here. - */ - int raw_codec_id; - - /** - * Size of private data so that it can be allocated in the wrapper. - */ - int priv_data_size; - - /** - * Internal flags. See FF_FMT_FLAG_* in internal.h. - */ - int flags_internal; - - /** - * Tell if a given file has a chance of being parsed as this format. - * The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes - * big so you do not have to check for that unless you need more. - */ - int (*read_probe)(const AVProbeData *); - - /** - * Read the format header and initialize the AVFormatContext - * structure. Return 0 if OK. 'avformat_new_stream' should be - * called to create new streams. - */ - int (*read_header)(struct AVFormatContext *); - - /** - * Read one packet and put it in 'pkt'. pts and flags are also - * set. 'avformat_new_stream' can be called only if the flag - * AVFMTCTX_NOHEADER is used and only in the calling thread (not in a - * background thread). - * @return 0 on success, < 0 on error. - * Upon returning an error, pkt must be unreferenced by the caller. - */ - int (*read_packet)(struct AVFormatContext *, AVPacket *pkt); - - /** - * Close the stream. The AVFormatContext and AVStreams are not - * freed by this function - */ - int (*read_close)(struct AVFormatContext *); - - /** - * Seek to a given timestamp relative to the frames in - * stream component stream_index. - * @param stream_index Must not be -1. - * @param flags Selects which direction should be preferred if no exact - * match is available. - * @return >= 0 on success (but not necessarily the new offset) - */ - int (*read_seek)(struct AVFormatContext *, - int stream_index, int64_t timestamp, int flags); - - /** - * Get the next timestamp in stream[stream_index].time_base units. - * @return the timestamp or AV_NOPTS_VALUE if an error occurred - */ - int64_t (*read_timestamp)(struct AVFormatContext *s, int stream_index, - int64_t *pos, int64_t pos_limit); - - /** - * Start/resume playing - only meaningful if using a network-based format - * (RTSP). - */ - int (*read_play)(struct AVFormatContext *); - - /** - * Pause playing - only meaningful if using a network-based format - * (RTSP). - */ - int (*read_pause)(struct AVFormatContext *); - - /** - * Seek to timestamp ts. - * Seeking will be done so that the point from which all active streams - * can be presented successfully will be closest to ts and within min/max_ts. - * Active streams are all streams that have AVStream.discard < AVDISCARD_ALL. - */ - int (*read_seek2)(struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags); - - /** - * Returns device list with it properties. - * @see avdevice_list_devices() for more details. - */ - int (*get_device_list)(struct AVFormatContext *s, struct AVDeviceInfoList *device_list); - } AVInputFormat; /** * @} diff --git a/libavformat/avidec.c b/libavformat/avidec.c index 00bd7a98a9..f3183b2698 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -2010,16 +2010,16 @@ static int avi_probe(const AVProbeData *p) return 0; } -const AVInputFormat ff_avi_demuxer = { - .name = "avi", - .long_name = NULL_IF_CONFIG_SMALL("AVI (Audio Video Interleaved)"), +const FFInputFormat ff_avi_demuxer = { + .p.name = "avi", + .p.long_name = NULL_IF_CONFIG_SMALL("AVI (Audio Video Interleaved)"), + .p.extensions = "avi", + .p.priv_class = &demuxer_class, .priv_data_size = sizeof(AVIContext), .flags_internal = FF_FMT_INIT_CLEANUP, - .extensions = "avi", .read_probe = avi_probe, .read_header = avi_read_header, .read_packet = avi_read_packet, .read_close = avi_read_close, .read_seek = avi_read_seek, - .priv_class = &demuxer_class, }; diff --git a/libavformat/avisynth.c b/libavformat/avisynth.c index 027e8c63f6..482607460b 100644 --- a/libavformat/avisynth.c +++ b/libavformat/avisynth.c @@ -26,6 +26,7 @@ #include "libavcodec/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "config.h" @@ -1197,14 +1198,14 @@ static const AVClass avisynth_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_avisynth_demuxer = { - .name = "avisynth", - .long_name = NULL_IF_CONFIG_SMALL("AviSynth script"), +const FFInputFormat ff_avisynth_demuxer = { + .p.name = "avisynth", + .p.long_name = NULL_IF_CONFIG_SMALL("AviSynth script"), + .p.extensions = "avs", + .p.priv_class = &avisynth_demuxer_class, .priv_data_size = sizeof(AviSynthContext), .read_header = avisynth_read_header, .read_packet = avisynth_read_packet, .read_close = avisynth_read_close, .read_seek = avisynth_read_seek, - .extensions = "avs", - .priv_class = &avisynth_demuxer_class, }; diff --git a/libavformat/avr.c b/libavformat/avr.c index dce977b6ac..12286c04d4 100644 --- a/libavformat/avr.c +++ b/libavformat/avr.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -90,13 +91,13 @@ static int avr_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_avr_demuxer = { - .name = "avr", - .long_name = NULL_IF_CONFIG_SMALL("AVR (Audio Visual Research)"), +const FFInputFormat ff_avr_demuxer = { + .p.name = "avr", + .p.long_name = NULL_IF_CONFIG_SMALL("AVR (Audio Visual Research)"), + .p.extensions = "avr", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = avr_probe, .read_header = avr_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "avr", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/avs.c b/libavformat/avs.c index 19f0373157..3cd814836b 100644 --- a/libavformat/avs.c +++ b/libavformat/avs.c @@ -26,6 +26,7 @@ */ #include "avformat.h" +#include "demux.h" #include "voc.h" @@ -228,9 +229,9 @@ static int avs_read_packet(AVFormatContext * s, AVPacket * pkt) } } -const AVInputFormat ff_avs_demuxer = { - .name = "avs", - .long_name = NULL_IF_CONFIG_SMALL("Argonaut Games Creature Shock"), +const FFInputFormat ff_avs_demuxer = { + .p.name = "avs", + .p.long_name = NULL_IF_CONFIG_SMALL("Argonaut Games Creature Shock"), .priv_data_size = sizeof(AvsFormat), .read_probe = avs_probe, .read_header = avs_read_header, diff --git a/libavformat/bethsoftvid.c b/libavformat/bethsoftvid.c index cfb7d57332..bdf1bdc6c0 100644 --- a/libavformat/bethsoftvid.c +++ b/libavformat/bethsoftvid.c @@ -31,6 +31,7 @@ #include "libavutil/imgutils.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavcodec/bethsoftvideo.h" @@ -290,9 +291,9 @@ static int vid_read_packet(AVFormatContext *s, } } -const AVInputFormat ff_bethsoftvid_demuxer = { - .name = "bethsoftvid", - .long_name = NULL_IF_CONFIG_SMALL("Bethesda Softworks VID"), +const FFInputFormat ff_bethsoftvid_demuxer = { + .p.name = "bethsoftvid", + .p.long_name = NULL_IF_CONFIG_SMALL("Bethesda Softworks VID"), .priv_data_size = sizeof(BVID_DemuxContext), .read_probe = vid_probe, .read_header = vid_read_header, diff --git a/libavformat/bfi.c b/libavformat/bfi.c index 6bcd3cd400..06bf5d2c17 100644 --- a/libavformat/bfi.c +++ b/libavformat/bfi.c @@ -176,9 +176,9 @@ static int bfi_read_packet(AVFormatContext * s, AVPacket * pkt) return ret; } -const AVInputFormat ff_bfi_demuxer = { - .name = "bfi", - .long_name = NULL_IF_CONFIG_SMALL("Brute Force & Ignorance"), +const FFInputFormat ff_bfi_demuxer = { + .p.name = "bfi", + .p.long_name = NULL_IF_CONFIG_SMALL("Brute Force & Ignorance"), .priv_data_size = sizeof(BFIContext), .read_probe = bfi_probe, .read_header = bfi_read_header, diff --git a/libavformat/bink.c b/libavformat/bink.c index f4079dfb1d..0632d390a2 100644 --- a/libavformat/bink.c +++ b/libavformat/bink.c @@ -324,13 +324,13 @@ static int read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, in return 0; } -const AVInputFormat ff_bink_demuxer = { - .name = "bink", - .long_name = NULL_IF_CONFIG_SMALL("Bink"), +const FFInputFormat ff_bink_demuxer = { + .p.name = "bink", + .p.long_name = NULL_IF_CONFIG_SMALL("Bink"), + .p.flags = AVFMT_SHOW_IDS, .priv_data_size = sizeof(BinkDemuxContext), .read_probe = probe, .read_header = read_header, .read_packet = read_packet, .read_seek = read_seek, - .flags = AVFMT_SHOW_IDS, }; diff --git a/libavformat/binka.c b/libavformat/binka.c index 00703ad015..cc5f2555ca 100644 --- a/libavformat/binka.c +++ b/libavformat/binka.c @@ -20,6 +20,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int binka_probe(const AVProbeData *p) @@ -89,12 +90,12 @@ static int binka_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_binka_demuxer = { - .name = "binka", - .long_name = NULL_IF_CONFIG_SMALL("Bink Audio"), +const FFInputFormat ff_binka_demuxer = { + .p.name = "binka", + .p.long_name = NULL_IF_CONFIG_SMALL("Bink Audio"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "binka", .read_probe = binka_probe, .read_header = binka_read_header, .read_packet = binka_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "binka", }; diff --git a/libavformat/bintext.c b/libavformat/bintext.c index b6f14a03e5..90d48b6691 100644 --- a/libavformat/bintext.c +++ b/libavformat/bintext.c @@ -36,6 +36,7 @@ #include "libavutil/opt.h" #include "libavutil/parseutils.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "sauce.h" #include "libavcodec/bintext.h" @@ -388,50 +389,50 @@ static const AVOption options[] = { }} #if CONFIG_BINTEXT_DEMUXER -const AVInputFormat ff_bintext_demuxer = { - .name = "bin", - .long_name = NULL_IF_CONFIG_SMALL("Binary text"), +const FFInputFormat ff_bintext_demuxer = { + .p.name = "bin", + .p.long_name = NULL_IF_CONFIG_SMALL("Binary text"), + .p.priv_class = CLASS("Binary text demuxer"), .priv_data_size = sizeof(BinDemuxContext), .read_probe = bin_probe, .read_header = bintext_read_header, .read_packet = read_packet, - .priv_class = CLASS("Binary text demuxer"), }; #endif #if CONFIG_XBIN_DEMUXER -const AVInputFormat ff_xbin_demuxer = { - .name = "xbin", - .long_name = NULL_IF_CONFIG_SMALL("eXtended BINary text (XBIN)"), +const FFInputFormat ff_xbin_demuxer = { + .p.name = "xbin", + .p.long_name = NULL_IF_CONFIG_SMALL("eXtended BINary text (XBIN)"), + .p.priv_class = CLASS("eXtended BINary text (XBIN) demuxer"), .priv_data_size = sizeof(BinDemuxContext), .read_probe = xbin_probe, .read_header = xbin_read_header, .read_packet = read_packet, - .priv_class = CLASS("eXtended BINary text (XBIN) demuxer"), }; #endif #if CONFIG_ADF_DEMUXER -const AVInputFormat ff_adf_demuxer = { - .name = "adf", - .long_name = NULL_IF_CONFIG_SMALL("Artworx Data Format"), +const FFInputFormat ff_adf_demuxer = { + .p.name = "adf", + .p.long_name = NULL_IF_CONFIG_SMALL("Artworx Data Format"), + .p.extensions = "adf", + .p.priv_class = CLASS("Artworx Data Format demuxer"), .priv_data_size = sizeof(BinDemuxContext), .read_header = adf_read_header, .read_packet = read_packet, - .extensions = "adf", - .priv_class = CLASS("Artworx Data Format demuxer"), }; #endif #if CONFIG_IDF_DEMUXER -const AVInputFormat ff_idf_demuxer = { - .name = "idf", - .long_name = NULL_IF_CONFIG_SMALL("iCE Draw File"), +const FFInputFormat ff_idf_demuxer = { + .p.name = "idf", + .p.long_name = NULL_IF_CONFIG_SMALL("iCE Draw File"), + .p.extensions = "idf", + .p.priv_class = CLASS("iCE Draw File demuxer"), .priv_data_size = sizeof(BinDemuxContext), .read_probe = idf_probe, .read_header = idf_read_header, .read_packet = read_packet, - .extensions = "idf", - .priv_class = CLASS("iCE Draw File demuxer"), }; #endif diff --git a/libavformat/bit.c b/libavformat/bit.c index c3b9cf4d3d..8133b1f44d 100644 --- a/libavformat/bit.c +++ b/libavformat/bit.c @@ -22,6 +22,7 @@ #include "config_components.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "libavcodec/get_bits.h" @@ -113,13 +114,13 @@ static int read_packet(AVFormatContext *s, return 0; } -const AVInputFormat ff_bit_demuxer = { - .name = "bit", - .long_name = NULL_IF_CONFIG_SMALL("G.729 BIT file format"), +const FFInputFormat ff_bit_demuxer = { + .p.name = "bit", + .p.long_name = NULL_IF_CONFIG_SMALL("G.729 BIT file format"), + .p.extensions = "bit", .read_probe = probe, .read_header = read_header, .read_packet = read_packet, - .extensions = "bit", }; #endif diff --git a/libavformat/bmv.c b/libavformat/bmv.c index e1f667076e..b2980cf582 100644 --- a/libavformat/bmv.c +++ b/libavformat/bmv.c @@ -21,6 +21,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" enum BMVFlags { @@ -124,12 +125,12 @@ static int bmv_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_bmv_demuxer = { - .name = "bmv", - .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV"), +const FFInputFormat ff_bmv_demuxer = { + .p.name = "bmv", + .p.long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV"), + .p.extensions = "bmv", .priv_data_size = sizeof(BMVContext), .read_header = bmv_read_header, .read_packet = bmv_read_packet, .read_close = bmv_read_close, - .extensions = "bmv", }; diff --git a/libavformat/boadec.c b/libavformat/boadec.c index 02763142fb..d70966c97f 100644 --- a/libavformat/boadec.c +++ b/libavformat/boadec.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "libavcodec/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int probe(const AVProbeData *p) @@ -78,11 +79,11 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, st->codecpar->block_align); } -const AVInputFormat ff_boa_demuxer = { - .name = "boa", - .long_name = NULL_IF_CONFIG_SMALL("Black Ops Audio"), +const FFInputFormat ff_boa_demuxer = { + .p.name = "boa", + .p.long_name = NULL_IF_CONFIG_SMALL("Black Ops Audio"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = probe, .read_header = read_header, .read_packet = read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/bonk.c b/libavformat/bonk.c index bd99c553e7..44de8e2087 100644 --- a/libavformat/bonk.c +++ b/libavformat/bonk.c @@ -103,15 +103,15 @@ static int bonk_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_bonk_demuxer = { - .name = "bonk", - .long_name = NULL_IF_CONFIG_SMALL("raw Bonk"), +const FFInputFormat ff_bonk_demuxer = { + .p.name = "bonk", + .p.long_name = NULL_IF_CONFIG_SMALL("raw Bonk"), + .p.extensions = "bonk", + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, + .p.priv_class = &ff_raw_demuxer_class, .read_probe = bonk_probe, .read_header = bonk_read_header, .read_packet = ff_raw_read_partial_packet, - .extensions = "bonk", - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, .raw_codec_id = AV_CODEC_ID_BONK, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/brstm.c b/libavformat/brstm.c index 628c556e66..5b2a59b6eb 100644 --- a/libavformat/brstm.c +++ b/libavformat/brstm.c @@ -467,9 +467,10 @@ static int read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_brstm_demuxer = { - .name = "brstm", - .long_name = NULL_IF_CONFIG_SMALL("BRSTM (Binary Revolution Stream)"), +const FFInputFormat ff_brstm_demuxer = { + .p.name = "brstm", + .p.long_name = NULL_IF_CONFIG_SMALL("BRSTM (Binary Revolution Stream)"), + .p.extensions = "brstm", .priv_data_size = sizeof(BRSTMDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = probe, @@ -477,12 +478,12 @@ const AVInputFormat ff_brstm_demuxer = { .read_packet = read_packet, .read_close = read_close, .read_seek = read_seek, - .extensions = "brstm", }; -const AVInputFormat ff_bfstm_demuxer = { - .name = "bfstm", - .long_name = NULL_IF_CONFIG_SMALL("BFSTM (Binary Cafe Stream)"), +const FFInputFormat ff_bfstm_demuxer = { + .p.name = "bfstm", + .p.long_name = NULL_IF_CONFIG_SMALL("BFSTM (Binary Cafe Stream)"), + .p.extensions = "bfstm,bcstm", .priv_data_size = sizeof(BRSTMDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = probe_bfstm, @@ -490,5 +491,4 @@ const AVInputFormat ff_bfstm_demuxer = { .read_packet = read_packet, .read_close = read_close, .read_seek = read_seek, - .extensions = "bfstm,bcstm", }; diff --git a/libavformat/c93.c b/libavformat/c93.c index 9ecf1427a9..933fe4a99e 100644 --- a/libavformat/c93.c +++ b/libavformat/c93.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "voc.h" #include "libavutil/intreadwrite.h" @@ -185,9 +186,9 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_c93_demuxer = { - .name = "c93", - .long_name = NULL_IF_CONFIG_SMALL("Interplay C93"), +const FFInputFormat ff_c93_demuxer = { + .p.name = "c93", + .p.long_name = NULL_IF_CONFIG_SMALL("Interplay C93"), .priv_data_size = sizeof(C93DemuxContext), .read_probe = probe, .read_header = read_header, diff --git a/libavformat/cafdec.c b/libavformat/cafdec.c index f5ba0f4108..426c56b9bd 100644 --- a/libavformat/cafdec.c +++ b/libavformat/cafdec.c @@ -512,13 +512,13 @@ static int read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_caf_demuxer = { - .name = "caf", - .long_name = NULL_IF_CONFIG_SMALL("Apple CAF (Core Audio Format)"), +const FFInputFormat ff_caf_demuxer = { + .p.name = "caf", + .p.long_name = NULL_IF_CONFIG_SMALL("Apple CAF (Core Audio Format)"), + .p.codec_tag = ff_caf_codec_tags_list, .priv_data_size = sizeof(CafContext), .read_probe = probe, .read_header = read_header, .read_packet = read_packet, .read_seek = read_seek, - .codec_tag = ff_caf_codec_tags_list, }; diff --git a/libavformat/cdg.c b/libavformat/cdg.c index f598285911..2030cdff89 100644 --- a/libavformat/cdg.c +++ b/libavformat/cdg.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #define CDG_PACKET_SIZE 24 @@ -83,12 +84,12 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_cdg_demuxer = { - .name = "cdg", - .long_name = NULL_IF_CONFIG_SMALL("CD Graphics"), +const FFInputFormat ff_cdg_demuxer = { + .p.name = "cdg", + .p.long_name = NULL_IF_CONFIG_SMALL("CD Graphics"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "cdg", .read_probe = read_probe, .read_header = read_header, .read_packet = read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "cdg", }; diff --git a/libavformat/cdxl.c b/libavformat/cdxl.c index 065148360e..0ed426d55a 100644 --- a/libavformat/cdxl.c +++ b/libavformat/cdxl.c @@ -24,6 +24,7 @@ #include "libavutil/parseutils.h" #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define CDXL_HEADER_SIZE 32 @@ -257,15 +258,15 @@ static const AVClass cdxl_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_cdxl_demuxer = { - .name = "cdxl", - .long_name = NULL_IF_CONFIG_SMALL("Commodore CDXL video"), +const FFInputFormat ff_cdxl_demuxer = { + .p.name = "cdxl", + .p.long_name = NULL_IF_CONFIG_SMALL("Commodore CDXL video"), + .p.priv_class = &cdxl_demuxer_class, + .p.extensions = "cdxl,xl", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(CDXLDemuxContext), - .priv_class = &cdxl_demuxer_class, .read_probe = cdxl_read_probe, .read_header = cdxl_read_header, .read_packet = cdxl_read_packet, .read_seek = read_seek, - .extensions = "cdxl,xl", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/cinedec.c b/libavformat/cinedec.c index e8d9657ee1..9ddfc90b47 100644 --- a/libavformat/cinedec.c +++ b/libavformat/cinedec.c @@ -29,6 +29,7 @@ #include "libavcodec/bmp.h" #include "libavutil/intfloat.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct { @@ -336,9 +337,9 @@ static int cine_read_seek(AVFormatContext *avctx, int stream_index, int64_t time return 0; } -const AVInputFormat ff_cine_demuxer = { - .name = "cine", - .long_name = NULL_IF_CONFIG_SMALL("Phantom Cine"), +const FFInputFormat ff_cine_demuxer = { + .p.name = "cine", + .p.long_name = NULL_IF_CONFIG_SMALL("Phantom Cine"), .priv_data_size = sizeof(CineDemuxContext), .read_probe = cine_read_probe, .read_header = cine_read_header, diff --git a/libavformat/codec2.c b/libavformat/codec2.c index f0f7b89253..4a3e10c6e3 100644 --- a/libavformat/codec2.c +++ b/libavformat/codec2.c @@ -27,6 +27,7 @@ #include "libavutil/opt.h" #include "avio_internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "rawenc.h" @@ -294,18 +295,18 @@ static const AVClass codec2raw_demux_class = { }; #if CONFIG_CODEC2_DEMUXER -const AVInputFormat ff_codec2_demuxer = { - .name = "codec2", - .long_name = NULL_IF_CONFIG_SMALL("codec2 .c2 demuxer"), +const FFInputFormat ff_codec2_demuxer = { + .p.name = "codec2", + .p.long_name = NULL_IF_CONFIG_SMALL("codec2 .c2 demuxer"), + .p.extensions = "c2", + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &codec2_demux_class, .priv_data_size = sizeof(Codec2Context), - .extensions = "c2", .read_probe = codec2_probe, .read_header = codec2_read_header, .read_packet = codec2_read_packet, .read_seek = ff_pcm_read_seek, - .flags = AVFMT_GENERIC_INDEX, .raw_codec_id = AV_CODEC_ID_CODEC2, - .priv_class = &codec2_demux_class, }; #endif @@ -324,15 +325,15 @@ const FFOutputFormat ff_codec2_muxer = { #endif #if CONFIG_CODEC2RAW_DEMUXER -const AVInputFormat ff_codec2raw_demuxer = { - .name = "codec2raw", - .long_name = NULL_IF_CONFIG_SMALL("raw codec2 demuxer"), +const FFInputFormat ff_codec2raw_demuxer = { + .p.name = "codec2raw", + .p.long_name = NULL_IF_CONFIG_SMALL("raw codec2 demuxer"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &codec2raw_demux_class, .priv_data_size = sizeof(Codec2Context), .read_header = codec2raw_read_header, .read_packet = codec2_read_packet, .read_seek = ff_pcm_read_seek, - .flags = AVFMT_GENERIC_INDEX, .raw_codec_id = AV_CODEC_ID_CODEC2, - .priv_class = &codec2raw_demux_class, }; #endif diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c index ffa8ade25b..2abe479fb0 100644 --- a/libavformat/concatdec.c +++ b/libavformat/concatdec.c @@ -936,9 +936,10 @@ static const AVClass concat_class = { }; -const AVInputFormat ff_concat_demuxer = { - .name = "concat", - .long_name = NULL_IF_CONFIG_SMALL("Virtual concatenation script"), +const FFInputFormat ff_concat_demuxer = { + .p.name = "concat", + .p.long_name = NULL_IF_CONFIG_SMALL("Virtual concatenation script"), + .p.priv_class = &concat_class, .priv_data_size = sizeof(ConcatContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = concat_probe, @@ -946,5 +947,4 @@ const AVInputFormat ff_concat_demuxer = { .read_packet = concat_read_packet, .read_close = concat_read_close, .read_seek2 = concat_seek, - .priv_class = &concat_class, }; diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c index 1215407f3c..2998bcfb48 100644 --- a/libavformat/dashdec.c +++ b/libavformat/dashdec.c @@ -2355,10 +2355,11 @@ static const AVClass dash_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_dash_demuxer = { - .name = "dash", - .long_name = NULL_IF_CONFIG_SMALL("Dynamic Adaptive Streaming over HTTP"), - .priv_class = &dash_class, +const FFInputFormat ff_dash_demuxer = { + .p.name = "dash", + .p.long_name = NULL_IF_CONFIG_SMALL("Dynamic Adaptive Streaming over HTTP"), + .p.priv_class = &dash_class, + .p.flags = AVFMT_NO_BYTE_SEEK, .priv_data_size = sizeof(DASHContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = dash_probe, @@ -2366,5 +2367,4 @@ const AVInputFormat ff_dash_demuxer = { .read_packet = dash_read_packet, .read_close = dash_close, .read_seek = dash_read_seek, - .flags = AVFMT_NO_BYTE_SEEK, }; diff --git a/libavformat/dauddec.c b/libavformat/dauddec.c index 7e411091ec..7631cd7065 100644 --- a/libavformat/dauddec.c +++ b/libavformat/dauddec.c @@ -21,6 +21,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int daud_header(AVFormatContext *s) { @@ -53,10 +54,10 @@ static int daud_packet(AVFormatContext *s, AVPacket *pkt) { return ret; } -const AVInputFormat ff_daud_demuxer = { - .name = "daud", - .long_name = NULL_IF_CONFIG_SMALL("D-Cinema audio"), +const FFInputFormat ff_daud_demuxer = { + .p.name = "daud", + .p.long_name = NULL_IF_CONFIG_SMALL("D-Cinema audio"), + .p.extensions = "302,daud", .read_header = daud_header, .read_packet = daud_packet, - .extensions = "302,daud", }; diff --git a/libavformat/dcstr.c b/libavformat/dcstr.c index 286ec92df3..3badb7d4c8 100644 --- a/libavformat/dcstr.c +++ b/libavformat/dcstr.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" static int dcstr_probe(const AVProbeData *p) @@ -80,12 +81,12 @@ static int dcstr_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align); } -const AVInputFormat ff_dcstr_demuxer = { - .name = "dcstr", - .long_name = NULL_IF_CONFIG_SMALL("Sega DC STR"), +const FFInputFormat ff_dcstr_demuxer = { + .p.name = "dcstr", + .p.long_name = NULL_IF_CONFIG_SMALL("Sega DC STR"), + .p.extensions = "str", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOBINSEARCH, .read_probe = dcstr_probe, .read_header = dcstr_read_header, .read_packet = dcstr_read_packet, - .extensions = "str", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOBINSEARCH, }; diff --git a/libavformat/demux.c b/libavformat/demux.c index f0929a2479..670f2c0a65 100644 --- a/libavformat/demux.c +++ b/libavformat/demux.c @@ -283,8 +283,8 @@ int avformat_open_input(AVFormatContext **ps, const char *filename, s->duration = s->start_time = AV_NOPTS_VALUE; /* Allocate private data. */ - if (s->iformat->priv_data_size > 0) { - if (!(s->priv_data = av_mallocz(s->iformat->priv_data_size))) { + if (ffifmt(s->iformat)->priv_data_size > 0) { + if (!(s->priv_data = av_mallocz(ffifmt(s->iformat)->priv_data_size))) { ret = AVERROR(ENOMEM); goto fail; } @@ -300,9 +300,9 @@ int avformat_open_input(AVFormatContext **ps, const char *filename, if (s->pb) ff_id3v2_read_dict(s->pb, &si->id3v2_meta, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta); - if (s->iformat->read_header) - if ((ret = s->iformat->read_header(s)) < 0) { - if (s->iformat->flags_internal & FF_FMT_INIT_CLEANUP) + if (ffifmt(s->iformat)->read_header) + if ((ret = ffifmt(s->iformat)->read_header(s)) < 0) { + if (ffifmt(s->iformat)->flags_internal & FF_FMT_INIT_CLEANUP) goto close; goto fail; } @@ -347,8 +347,8 @@ int avformat_open_input(AVFormatContext **ps, const char *filename, return 0; close: - if (s->iformat->read_close) - s->iformat->read_close(s); + if (ffifmt(s->iformat)->read_close) + ffifmt(s->iformat)->read_close(s); fail: ff_id3v2_free_extra_meta(&id3v2_extra_meta); av_dict_free(&tmp); @@ -375,8 +375,8 @@ void avformat_close_input(AVFormatContext **ps) pb = NULL; if (s->iformat) - if (s->iformat->read_close) - s->iformat->read_close(s); + if (ffifmt(s->iformat)->read_close) + ffifmt(s->iformat)->read_close(s); avformat_free_context(s); @@ -561,7 +561,7 @@ FF_ENABLE_DEPRECATION_WARNINGS } } - err = s->iformat->read_packet(s, pkt); + err = ffifmt(s->iformat)->read_packet(s, pkt); if (err < 0) { av_packet_unref(pkt); diff --git a/libavformat/demux.h b/libavformat/demux.h index d65eb16ff8..41d1318f75 100644 --- a/libavformat/demux.h +++ b/libavformat/demux.h @@ -26,6 +26,109 @@ #include "libavcodec/packet.h" #include "avformat.h" +struct AVDeviceInfoList; + +typedef struct FFInputFormat { + /** + * The public AVInputFormat. See avformat.h for it. + */ + AVInputFormat p; + + /** + * Raw demuxers store their codec ID here. + */ + int raw_codec_id; + + /** + * Size of private data so that it can be allocated in the wrapper. + */ + int priv_data_size; + + /** + * Internal flags. See FF_FMT_FLAG_* in internal.h. + */ + int flags_internal; + + /** + * Tell if a given file has a chance of being parsed as this format. + * The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes + * big so you do not have to check for that unless you need more. + */ + int (*read_probe)(const AVProbeData *); + + /** + * Read the format header and initialize the AVFormatContext + * structure. Return 0 if OK. 'avformat_new_stream' should be + * called to create new streams. + */ + int (*read_header)(struct AVFormatContext *); + + /** + * Read one packet and put it in 'pkt'. pts and flags are also + * set. 'avformat_new_stream' can be called only if the flag + * AVFMTCTX_NOHEADER is used and only in the calling thread (not in a + * background thread). + * @return 0 on success, < 0 on error. + * Upon returning an error, pkt must be unreferenced by the caller. + */ + int (*read_packet)(struct AVFormatContext *, AVPacket *pkt); + + /** + * Close the stream. The AVFormatContext and AVStreams are not + * freed by this function + */ + int (*read_close)(struct AVFormatContext *); + + /** + * Seek to a given timestamp relative to the frames in + * stream component stream_index. + * @param stream_index Must not be -1. + * @param flags Selects which direction should be preferred if no exact + * match is available. + * @return >= 0 on success (but not necessarily the new offset) + */ + int (*read_seek)(struct AVFormatContext *, + int stream_index, int64_t timestamp, int flags); + + /** + * Get the next timestamp in stream[stream_index].time_base units. + * @return the timestamp or AV_NOPTS_VALUE if an error occurred + */ + int64_t (*read_timestamp)(struct AVFormatContext *s, int stream_index, + int64_t *pos, int64_t pos_limit); + + /** + * Start/resume playing - only meaningful if using a network-based format + * (RTSP). + */ + int (*read_play)(struct AVFormatContext *); + + /** + * Pause playing - only meaningful if using a network-based format + * (RTSP). + */ + int (*read_pause)(struct AVFormatContext *); + + /** + * Seek to timestamp ts. + * Seeking will be done so that the point from which all active streams + * can be presented successfully will be closest to ts and within min/max_ts. + * Active streams are all streams that have AVStream.discard < AVDISCARD_ALL. + */ + int (*read_seek2)(struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags); + + /** + * Returns device list with it properties. + * @see avdevice_list_devices() for more details. + */ + int (*get_device_list)(struct AVFormatContext *s, struct AVDeviceInfoList *device_list); +} FFInputFormat; + +static inline const FFInputFormat *ffifmt(const AVInputFormat *fmt) +{ + return (const FFInputFormat*)fmt; +} + #define MAX_STD_TIMEBASES (30*12+30+3+6) typedef struct FFStreamInfo { int64_t last_dts; @@ -90,7 +193,7 @@ void ff_read_frame_flush(AVFormatContext *s); /** * Perform a binary search using av_index_search_timestamp() and - * AVInputFormat.read_timestamp(). + * FFInputFormat.read_timestamp(). * * @param target_ts target timestamp in the time base of the given stream * @param stream_index stream number @@ -166,7 +269,7 @@ void ff_rfps_calculate(AVFormatContext *ic); * rounded to the nearest integer and halfway cases away from zero, and can * therefore fall outside of the output interval. * - * Useful to simplify the rescaling of the arguments of AVInputFormat::read_seek2() + * Useful to simplify the rescaling of the arguments of FFInputFormat::read_seek2() * * @param[in] tb_in Timebase of the input `min_ts`, `ts` and `max_ts` * @param[in] tb_out Timebase of the output `min_ts`, `ts` and `max_ts` diff --git a/libavformat/demux_utils.c b/libavformat/demux_utils.c index b16bc47a96..171a07107b 100644 --- a/libavformat/demux_utils.c +++ b/libavformat/demux_utils.c @@ -181,8 +181,8 @@ int ff_add_param_change(AVPacket *pkt, int32_t channels, int av_read_play(AVFormatContext *s) { - if (s->iformat->read_play) - return s->iformat->read_play(s); + if (ffifmt(s->iformat)->read_play) + return ffifmt(s->iformat)->read_play(s); if (s->pb) return avio_pause(s->pb, 0); return AVERROR(ENOSYS); @@ -190,8 +190,8 @@ int av_read_play(AVFormatContext *s) int av_read_pause(AVFormatContext *s) { - if (s->iformat->read_pause) - return s->iformat->read_pause(s); + if (ffifmt(s->iformat)->read_pause) + return ffifmt(s->iformat)->read_pause(s); if (s->pb) return avio_pause(s->pb, 1); return AVERROR(ENOSYS); diff --git a/libavformat/derf.c b/libavformat/derf.c index 9da7fc4f19..f0077e9f06 100644 --- a/libavformat/derf.c +++ b/libavformat/derf.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -67,12 +68,12 @@ static int derf_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_derf_demuxer = { - .name = "derf", - .long_name = NULL_IF_CONFIG_SMALL("Xilam DERF"), +const FFInputFormat ff_derf_demuxer = { + .p.name = "derf", + .p.long_name = NULL_IF_CONFIG_SMALL("Xilam DERF"), + .p.extensions = "adp", .read_probe = derf_probe, .read_header = derf_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "adp", }; diff --git a/libavformat/dfa.c b/libavformat/dfa.c index 9808c9b617..1d78c348b1 100644 --- a/libavformat/dfa.c +++ b/libavformat/dfa.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int dfa_probe(const AVProbeData *p) @@ -120,11 +121,11 @@ static int dfa_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_dfa_demuxer = { - .name = "dfa", - .long_name = NULL_IF_CONFIG_SMALL("Chronomaster DFA"), +const FFInputFormat ff_dfa_demuxer = { + .p.name = "dfa", + .p.long_name = NULL_IF_CONFIG_SMALL("Chronomaster DFA"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = dfa_probe, .read_header = dfa_read_header, .read_packet = dfa_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/dfpwmdec.c b/libavformat/dfpwmdec.c index 4c998bea48..52ed33b8cf 100644 --- a/libavformat/dfpwmdec.c +++ b/libavformat/dfpwmdec.c @@ -22,6 +22,7 @@ #include "libavutil/avstring.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" #include "libavutil/log.h" @@ -71,15 +72,15 @@ static const AVClass dfpwm_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_dfpwm_demuxer = { - .name = "dfpwm", - .long_name = NULL_IF_CONFIG_SMALL("raw DFPWM1a"), +const FFInputFormat ff_dfpwm_demuxer = { + .p.name = "dfpwm", + .p.long_name = NULL_IF_CONFIG_SMALL("raw DFPWM1a"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "dfpwm", + .p.priv_class = &dfpwm_demuxer_class, .priv_data_size = sizeof(DFPWMAudioDemuxerContext), .read_header = dfpwm_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "dfpwm", .raw_codec_id = AV_CODEC_ID_DFPWM, - .priv_class = &dfpwm_demuxer_class, }; diff --git a/libavformat/dhav.c b/libavformat/dhav.c index 2ec4857f29..997875eff6 100644 --- a/libavformat/dhav.c +++ b/libavformat/dhav.c @@ -25,6 +25,7 @@ #include "libavutil/parseutils.h" #include "avio_internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct DHAVContext { @@ -462,14 +463,14 @@ static int dhav_read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_dhav_demuxer = { - .name = "dhav", - .long_name = NULL_IF_CONFIG_SMALL("Video DAV"), +const FFInputFormat ff_dhav_demuxer = { + .p.name = "dhav", + .p.long_name = NULL_IF_CONFIG_SMALL("Video DAV"), + .p.extensions = "dav", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_TS_DISCONT | AVFMT_TS_NONSTRICT | AVFMT_SEEK_TO_PTS, .priv_data_size = sizeof(DHAVContext), .read_probe = dhav_probe, .read_header = dhav_read_header, .read_packet = dhav_read_packet, .read_seek = dhav_read_seek, - .extensions = "dav", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_TS_DISCONT | AVFMT_TS_NONSTRICT | AVFMT_SEEK_TO_PTS, }; diff --git a/libavformat/dsfdec.c b/libavformat/dsfdec.c index 3d3a82956e..17e109e345 100644 --- a/libavformat/dsfdec.c +++ b/libavformat/dsfdec.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "id3v2.h" @@ -209,12 +210,12 @@ static int dsf_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_dsf_demuxer = { - .name = "dsf", - .long_name = NULL_IF_CONFIG_SMALL("DSD Stream File (DSF)"), +const FFInputFormat ff_dsf_demuxer = { + .p.name = "dsf", + .p.long_name = NULL_IF_CONFIG_SMALL("DSD Stream File (DSF)"), + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK, .priv_data_size = sizeof(DSFContext), .read_probe = dsf_probe, .read_header = dsf_read_header, .read_packet = dsf_read_packet, - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK, }; diff --git a/libavformat/dsicin.c b/libavformat/dsicin.c index 13ee9f87bb..6eff38e010 100644 --- a/libavformat/dsicin.c +++ b/libavformat/dsicin.c @@ -27,6 +27,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -227,9 +228,9 @@ static int cin_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_dsicin_demuxer = { - .name = "dsicin", - .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN"), +const FFInputFormat ff_dsicin_demuxer = { + .p.name = "dsicin", + .p.long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN"), .priv_data_size = sizeof(CinDemuxContext), .read_probe = cin_probe, .read_header = cin_read_header, diff --git a/libavformat/dss.c b/libavformat/dss.c index d619ea00d7..510b1bd60c 100644 --- a/libavformat/dss.c +++ b/libavformat/dss.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define DSS_HEAD_OFFSET_AUTHOR 0xc @@ -353,13 +354,13 @@ static int dss_read_seek(AVFormatContext *s, int stream_index, } -const AVInputFormat ff_dss_demuxer = { - .name = "dss", - .long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard (DSS)"), +const FFInputFormat ff_dss_demuxer = { + .p.name = "dss", + .p.long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard (DSS)"), + .p.extensions = "dss", .priv_data_size = sizeof(DSSDemuxContext), .read_probe = dss_probe, .read_header = dss_read_header, .read_packet = dss_read_packet, .read_seek = dss_read_seek, - .extensions = "dss" }; diff --git a/libavformat/dtsdec.c b/libavformat/dtsdec.c index ceedb2eb49..38ba3e73d4 100644 --- a/libavformat/dtsdec.c +++ b/libavformat/dtsdec.c @@ -27,6 +27,7 @@ #include "libavcodec/get_bits.h" #include "avformat.h" +#include "demux.h" #include "rawdec.h" static int dts_probe(const AVProbeData *p) @@ -132,15 +133,15 @@ static int dts_probe(const AVProbeData *p) return 0; } -const AVInputFormat ff_dts_demuxer = { - .name = "dts", - .long_name = NULL_IF_CONFIG_SMALL("raw DTS"), +const FFInputFormat ff_dts_demuxer = { + .p.name = "dts", + .p.long_name = NULL_IF_CONFIG_SMALL("raw DTS"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "dts", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = dts_probe, .read_header = ff_raw_audio_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "dts", .raw_codec_id = AV_CODEC_ID_DTS, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/dtshddec.c b/libavformat/dtshddec.c index a3dea0668f..9939724ac7 100644 --- a/libavformat/dtshddec.c +++ b/libavformat/dtshddec.c @@ -23,6 +23,7 @@ #include "libavutil/dict.h" #include "libavcodec/dca.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define AUPR_HDR 0x415550522D484452 @@ -162,14 +163,14 @@ static int raw_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_dtshd_demuxer = { - .name = "dtshd", - .long_name = NULL_IF_CONFIG_SMALL("raw DTS-HD"), +const FFInputFormat ff_dtshd_demuxer = { + .p.name = "dtshd", + .p.long_name = NULL_IF_CONFIG_SMALL("raw DTS-HD"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "dtshd", .priv_data_size = sizeof(DTSHDDemuxContext), .read_probe = dtshd_probe, .read_header = dtshd_read_header, .read_packet = raw_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "dtshd", .raw_codec_id = AV_CODEC_ID_DTS, }; diff --git a/libavformat/dv.c b/libavformat/dv.c index 6df93fe416..c0d3343e37 100644 --- a/libavformat/dv.c +++ b/libavformat/dv.c @@ -710,15 +710,15 @@ static int dv_probe(const AVProbeData *p) return 0; } -const AVInputFormat ff_dv_demuxer = { - .name = "dv", - .long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"), +const FFInputFormat ff_dv_demuxer = { + .p.name = "dv", + .p.long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"), + .p.extensions = "dv,dif", .priv_data_size = sizeof(RawDVContext), .read_probe = dv_probe, .read_header = dv_read_header, .read_packet = dv_read_packet, .read_seek = dv_read_seek, - .extensions = "dv,dif", }; #else // CONFIG_DV_DEMUXER diff --git a/libavformat/dxa.c b/libavformat/dxa.c index 474b85270a..58757e8358 100644 --- a/libavformat/dxa.c +++ b/libavformat/dxa.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "riff.h" @@ -229,9 +230,9 @@ static int dxa_read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR_EOF; } -const AVInputFormat ff_dxa_demuxer = { - .name = "dxa", - .long_name = NULL_IF_CONFIG_SMALL("DXA"), +const FFInputFormat ff_dxa_demuxer = { + .p.name = "dxa", + .p.long_name = NULL_IF_CONFIG_SMALL("DXA"), .priv_data_size = sizeof(DXAContext), .read_probe = dxa_probe, .read_header = dxa_read_header, diff --git a/libavformat/eacdata.c b/libavformat/eacdata.c index ebc98d274f..381f93dc71 100644 --- a/libavformat/eacdata.c +++ b/libavformat/eacdata.c @@ -30,6 +30,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/channel_layout.h" @@ -103,12 +104,12 @@ static int cdata_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_ea_cdata_demuxer = { - .name = "ea_cdata", - .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts cdata"), +const FFInputFormat ff_ea_cdata_demuxer = { + .p.name = "ea_cdata", + .p.long_name = NULL_IF_CONFIG_SMALL("Electronic Arts cdata"), + .p.extensions = "cdata", .priv_data_size = sizeof(CdataDemuxContext), .read_probe = cdata_probe, .read_header = cdata_read_header, .read_packet = cdata_read_packet, - .extensions = "cdata", }; diff --git a/libavformat/electronicarts.c b/libavformat/electronicarts.c index e7f574aede..f7f6fd4cab 100644 --- a/libavformat/electronicarts.c +++ b/libavformat/electronicarts.c @@ -30,6 +30,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define SCHl_TAG MKTAG('S', 'C', 'H', 'l') @@ -783,12 +784,12 @@ static const AVClass ea_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_ea_demuxer = { - .name = "ea", - .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts Multimedia"), +const FFInputFormat ff_ea_demuxer = { + .p.name = "ea", + .p.long_name = NULL_IF_CONFIG_SMALL("Electronic Arts Multimedia"), + .p.priv_class = &ea_class, .priv_data_size = sizeof(EaDemuxContext), .read_probe = ea_probe, .read_header = ea_read_header, .read_packet = ea_read_packet, - .priv_class = &ea_class, }; diff --git a/libavformat/epafdec.c b/libavformat/epafdec.c index a132360ebf..f2701b60ca 100644 --- a/libavformat/epafdec.c +++ b/libavformat/epafdec.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "libavcodec/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -94,13 +95,13 @@ static int epaf_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_epaf_demuxer = { - .name = "epaf", - .long_name = NULL_IF_CONFIG_SMALL("Ensoniq Paris Audio File"), +const FFInputFormat ff_epaf_demuxer = { + .p.name = "epaf", + .p.long_name = NULL_IF_CONFIG_SMALL("Ensoniq Paris Audio File"), + .p.extensions = "paf,fap", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = epaf_probe, .read_header = epaf_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "paf,fap", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/evcdec.c b/libavformat/evcdec.c index 5ace604db6..5e565809ec 100644 --- a/libavformat/evcdec.c +++ b/libavformat/evcdec.c @@ -27,6 +27,7 @@ #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "evc.h" #include "internal.h" @@ -201,17 +202,17 @@ static int evc_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_evc_demuxer = { - .name = "evc", - .long_name = NULL_IF_CONFIG_SMALL("EVC Annex B"), +const FFInputFormat ff_evc_demuxer = { + .p.name = "evc", + .p.long_name = NULL_IF_CONFIG_SMALL("EVC Annex B"), + .p.extensions = "evc", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, + .p.priv_class = &evc_demuxer_class, .read_probe = annexb_probe, .read_header = evc_read_header, // annexb_read_header .read_packet = evc_read_packet, // annexb_read_packet .read_close = evc_read_close, - .extensions = "evc", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, .flags_internal = FF_FMT_INIT_CLEANUP, .raw_codec_id = AV_CODEC_ID_EVC, .priv_data_size = sizeof(EVCDemuxContext), - .priv_class = &evc_demuxer_class, }; diff --git a/libavformat/ffmetadec.c b/libavformat/ffmetadec.c index 90f2e2b861..ab62b7006e 100644 --- a/libavformat/ffmetadec.c +++ b/libavformat/ffmetadec.c @@ -222,9 +222,9 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR_EOF; } -const AVInputFormat ff_ffmetadata_demuxer = { - .name = "ffmetadata", - .long_name = NULL_IF_CONFIG_SMALL("FFmpeg metadata in text"), +const FFInputFormat ff_ffmetadata_demuxer = { + .p.name = "ffmetadata", + .p.long_name = NULL_IF_CONFIG_SMALL("FFmpeg metadata in text"), .read_probe = probe, .read_header = read_header, .read_packet = read_packet, diff --git a/libavformat/filmstripdec.c b/libavformat/filmstripdec.c index 000f807181..5ce0af234c 100644 --- a/libavformat/filmstripdec.c +++ b/libavformat/filmstripdec.c @@ -27,6 +27,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/imgutils.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define RAND_TAG MKBETAG('R','a','n','d') @@ -104,12 +105,12 @@ static int read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, in return 0; } -const AVInputFormat ff_filmstrip_demuxer = { - .name = "filmstrip", - .long_name = NULL_IF_CONFIG_SMALL("Adobe Filmstrip"), +const FFInputFormat ff_filmstrip_demuxer = { + .p.name = "filmstrip", + .p.long_name = NULL_IF_CONFIG_SMALL("Adobe Filmstrip"), + .p.extensions = "flm", .priv_data_size = sizeof(FilmstripDemuxContext), .read_header = read_header, .read_packet = read_packet, .read_seek = read_seek, - .extensions = "flm", }; diff --git a/libavformat/fitsdec.c b/libavformat/fitsdec.c index e0f502e4e3..fe2dd5ad5d 100644 --- a/libavformat/fitsdec.c +++ b/libavformat/fitsdec.c @@ -26,6 +26,7 @@ #include "libavutil/avassert.h" #include "libavutil/intreadwrite.h" +#include "demux.h" #include "internal.h" #include "libavutil/opt.h" #include "libavcodec/fits.h" @@ -220,13 +221,13 @@ static const AVClass fits_demuxer_class = { .category = AV_CLASS_CATEGORY_DEMUXER, }; -const AVInputFormat ff_fits_demuxer = { - .name = "fits", - .long_name = NULL_IF_CONFIG_SMALL("Flexible Image Transport System"), +const FFInputFormat ff_fits_demuxer = { + .p.name = "fits", + .p.long_name = NULL_IF_CONFIG_SMALL("Flexible Image Transport System"), + .p.priv_class = &fits_demuxer_class, + .p.flags = AVFMT_NOTIMESTAMPS, .priv_data_size = sizeof(FITSContext), .read_probe = fits_probe, .read_header = fits_read_header, .read_packet = fits_read_packet, - .priv_class = &fits_demuxer_class, - .flags = AVFMT_NOTIMESTAMPS, }; diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c index bbb205078a..4ce6251137 100644 --- a/libavformat/flacdec.c +++ b/libavformat/flacdec.c @@ -364,18 +364,18 @@ static int flac_seek(AVFormatContext *s, int stream_index, int64_t timestamp, in return -1; } -const AVInputFormat ff_flac_demuxer = { - .name = "flac", - .long_name = NULL_IF_CONFIG_SMALL("raw FLAC"), +const FFInputFormat ff_flac_demuxer = { + .p.name = "flac", + .p.long_name = NULL_IF_CONFIG_SMALL("raw FLAC"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "flac", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = flac_probe, .read_header = flac_read_header, .read_close = flac_close, .read_packet = ff_raw_read_partial_packet, .read_seek = flac_seek, .read_timestamp = flac_read_timestamp, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "flac", .raw_codec_id = AV_CODEC_ID_FLAC, .priv_data_size = sizeof(FLACDecContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/flic.c b/libavformat/flic.c index 222452eac8..41dfb4f39e 100644 --- a/libavformat/flic.c +++ b/libavformat/flic.c @@ -34,6 +34,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define FLIC_FILE_MAGIC_1 0xAF11 @@ -285,9 +286,9 @@ static int flic_read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_flic_demuxer = { - .name = "flic", - .long_name = NULL_IF_CONFIG_SMALL("FLI/FLC/FLX animation"), +const FFInputFormat ff_flic_demuxer = { + .p.name = "flic", + .p.long_name = NULL_IF_CONFIG_SMALL("FLI/FLC/FLX animation"), .priv_data_size = sizeof(FlicDemuxContext), .read_probe = flic_probe, .read_header = flic_read_header, diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c index e25b5bd163..31dcb41b06 100644 --- a/libavformat/flvdec.c +++ b/libavformat/flvdec.c @@ -1412,42 +1412,42 @@ static const AVClass flv_kux_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_flv_demuxer = { - .name = "flv", - .long_name = NULL_IF_CONFIG_SMALL("FLV (Flash Video)"), +const FFInputFormat ff_flv_demuxer = { + .p.name = "flv", + .p.long_name = NULL_IF_CONFIG_SMALL("FLV (Flash Video)"), + .p.extensions = "flv", + .p.priv_class = &flv_kux_class, .priv_data_size = sizeof(FLVContext), .read_probe = flv_probe, .read_header = flv_read_header, .read_packet = flv_read_packet, .read_seek = flv_read_seek, .read_close = flv_read_close, - .extensions = "flv", - .priv_class = &flv_kux_class, }; -const AVInputFormat ff_live_flv_demuxer = { - .name = "live_flv", - .long_name = NULL_IF_CONFIG_SMALL("live RTMP FLV (Flash Video)"), +const FFInputFormat ff_live_flv_demuxer = { + .p.name = "live_flv", + .p.long_name = NULL_IF_CONFIG_SMALL("live RTMP FLV (Flash Video)"), + .p.extensions = "flv", + .p.priv_class = &flv_kux_class, + .p.flags = AVFMT_TS_DISCONT, .priv_data_size = sizeof(FLVContext), .read_probe = live_flv_probe, .read_header = flv_read_header, .read_packet = flv_read_packet, .read_seek = flv_read_seek, .read_close = flv_read_close, - .extensions = "flv", - .priv_class = &flv_kux_class, - .flags = AVFMT_TS_DISCONT }; -const AVInputFormat ff_kux_demuxer = { - .name = "kux", - .long_name = NULL_IF_CONFIG_SMALL("KUX (YouKu)"), +const FFInputFormat ff_kux_demuxer = { + .p.name = "kux", + .p.long_name = NULL_IF_CONFIG_SMALL("KUX (YouKu)"), + .p.extensions = "kux", + .p.priv_class = &flv_kux_class, .priv_data_size = sizeof(FLVContext), .read_probe = kux_probe, .read_header = flv_read_header, .read_packet = flv_read_packet, .read_seek = flv_read_seek, .read_close = flv_read_close, - .extensions = "kux", - .priv_class = &flv_kux_class, }; diff --git a/libavformat/format.c b/libavformat/format.c index 4738e69a1c..0cdfd85c22 100644 --- a/libavformat/format.c +++ b/libavformat/format.c @@ -28,6 +28,7 @@ #include "avio_internal.h" #include "avformat.h" +#include "demux.h" #include "id3v2.h" #include "internal.h" #include "url.h" @@ -189,8 +190,8 @@ const AVInputFormat *av_probe_input_format3(const AVProbeData *pd, if (!is_opened == !(fmt1->flags & AVFMT_NOFILE) && strcmp(fmt1->name, "image2")) continue; score = 0; - if (fmt1->read_probe) { - score = fmt1->read_probe(&lpd); + if (ffifmt(fmt1)->read_probe) { + score = ffifmt(fmt1)->read_probe(&lpd); if (score) av_log(NULL, AV_LOG_TRACE, "Probing %s score:%d size:%d\n", fmt1->name, score, lpd.buf_size); if (fmt1->extensions && av_match_ext(lpd.filename, fmt1->extensions)) { diff --git a/libavformat/frmdec.c b/libavformat/frmdec.c index e6c1179dcd..412430e4fc 100644 --- a/libavformat/frmdec.c +++ b/libavformat/frmdec.c @@ -27,6 +27,7 @@ #include "libavutil/imgutils.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" static const enum AVPixelFormat frm_pix_fmt_tags[] = { AV_PIX_FMT_RGB555, @@ -102,10 +103,10 @@ static int frm_read_packet(AVFormatContext *avctx, AVPacket *pkt) return 0; } -const AVInputFormat ff_frm_demuxer = { - .name = "frm", +const FFInputFormat ff_frm_demuxer = { + .p.name = "frm", + .p.long_name = NULL_IF_CONFIG_SMALL("Megalux Frame"), .priv_data_size = sizeof(FrmContext), - .long_name = NULL_IF_CONFIG_SMALL("Megalux Frame"), .read_probe = frm_read_probe, .read_header = frm_read_header, .read_packet = frm_read_packet, diff --git a/libavformat/fsb.c b/libavformat/fsb.c index 12b67f631c..4189822d8e 100644 --- a/libavformat/fsb.c +++ b/libavformat/fsb.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" #include "avio.h" +#include "demux.h" #include "internal.h" static int fsb_probe(const AVProbeData *p) @@ -200,12 +201,12 @@ static int fsb_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_fsb_demuxer = { - .name = "fsb", - .long_name = NULL_IF_CONFIG_SMALL("FMOD Sample Bank"), +const FFInputFormat ff_fsb_demuxer = { + .p.name = "fsb", + .p.long_name = NULL_IF_CONFIG_SMALL("FMOD Sample Bank"), + .p.extensions = "fsb", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = fsb_probe, .read_header = fsb_read_header, .read_packet = fsb_read_packet, - .extensions = "fsb", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/fwse.c b/libavformat/fwse.c index 28a322d9d6..6c1103da14 100644 --- a/libavformat/fwse.c +++ b/libavformat/fwse.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -77,11 +78,11 @@ static int fwse_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_fwse_demuxer = { - .name = "fwse", - .long_name = NULL_IF_CONFIG_SMALL("Capcom's MT Framework sound"), +const FFInputFormat ff_fwse_demuxer = { + .p.name = "fwse", + .p.long_name = NULL_IF_CONFIG_SMALL("Capcom's MT Framework sound"), + .p.extensions = "fwse", .read_probe = fwse_probe, .read_header = fwse_read_header, .read_packet = ff_pcm_read_packet, - .extensions = "fwse", }; diff --git a/libavformat/g722.c b/libavformat/g722.c index 08cd2cbc87..15519d90b5 100644 --- a/libavformat/g722.c +++ b/libavformat/g722.c @@ -21,6 +21,7 @@ #include "libavutil/avassert.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "rawdec.h" @@ -46,14 +47,14 @@ static int g722_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_g722_demuxer = { - .name = "g722", - .long_name = NULL_IF_CONFIG_SMALL("raw G.722"), +const FFInputFormat ff_g722_demuxer = { + .p.name = "g722", + .p.long_name = NULL_IF_CONFIG_SMALL("raw G.722"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "g722,722", + .p.priv_class = &ff_raw_demuxer_class, .read_header = g722_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "g722,722", .raw_codec_id = AV_CODEC_ID_ADPCM_G722, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/g723_1.c b/libavformat/g723_1.c index e35b4ed503..17c7a13d38 100644 --- a/libavformat/g723_1.c +++ b/libavformat/g723_1.c @@ -27,6 +27,7 @@ #include "libavutil/attributes.h" #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static const uint8_t frame_size[4] = { 24, 20, 4, 1 }; @@ -74,11 +75,11 @@ static int g723_1_read_packet(AVFormatContext *s, AVPacket *pkt) return pkt->size; } -const AVInputFormat ff_g723_1_demuxer = { - .name = "g723_1", - .long_name = NULL_IF_CONFIG_SMALL("G.723.1"), +const FFInputFormat ff_g723_1_demuxer = { + .p.name = "g723_1", + .p.long_name = NULL_IF_CONFIG_SMALL("G.723.1"), + .p.extensions = "tco,rco,g723_1", + .p.flags = AVFMT_GENERIC_INDEX, .read_header = g723_1_init, .read_packet = g723_1_read_packet, - .extensions = "tco,rco,g723_1", - .flags = AVFMT_GENERIC_INDEX }; diff --git a/libavformat/g726.c b/libavformat/g726.c index 97580a74f8..e783fa4123 100644 --- a/libavformat/g726.c +++ b/libavformat/g726.c @@ -22,6 +22,7 @@ #include "config_components.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/opt.h" @@ -39,7 +40,7 @@ static int g726_read_header(AVFormatContext *s) return AVERROR(ENOMEM); st->codecpar->codec_type = AVMEDIA_TYPE_AUDIO; - st->codecpar->codec_id = s->iformat->raw_codec_id; + st->codecpar->codec_id = ffifmt(s->iformat)->raw_codec_id; st->codecpar->sample_rate = c->sample_rate; st->codecpar->bits_per_coded_sample = c->code_size; @@ -75,25 +76,25 @@ static const AVClass g726_demuxer_class = { }; #if CONFIG_G726_DEMUXER -const AVInputFormat ff_g726_demuxer = { - .name = "g726", - .long_name = NULL_IF_CONFIG_SMALL("raw big-endian G.726 (\"left aligned\")"), +const FFInputFormat ff_g726_demuxer = { + .p.name = "g726", + .p.long_name = NULL_IF_CONFIG_SMALL("raw big-endian G.726 (\"left aligned\")"), + .p.priv_class = &g726_demuxer_class, .read_header = g726_read_header, .read_packet = g726_read_packet, .priv_data_size = sizeof(G726Context), - .priv_class = &g726_demuxer_class, .raw_codec_id = AV_CODEC_ID_ADPCM_G726, }; #endif #if CONFIG_G726LE_DEMUXER -const AVInputFormat ff_g726le_demuxer = { - .name = "g726le", - .long_name = NULL_IF_CONFIG_SMALL("raw little-endian G.726 (\"right aligned\")"), +const FFInputFormat ff_g726le_demuxer = { + .p.name = "g726le", + .p.long_name = NULL_IF_CONFIG_SMALL("raw little-endian G.726 (\"right aligned\")"), + .p.priv_class = &g726_demuxer_class, .read_header = g726_read_header, .read_packet = g726_read_packet, .priv_data_size = sizeof(G726Context), - .priv_class = &g726_demuxer_class, .raw_codec_id = AV_CODEC_ID_ADPCM_G726LE, }; #endif diff --git a/libavformat/g729dec.c b/libavformat/g729dec.c index 9c92ea4fcf..d6f55b70de 100644 --- a/libavformat/g729dec.c +++ b/libavformat/g729dec.c @@ -23,6 +23,7 @@ #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct G729DemuxerContext { @@ -93,13 +94,13 @@ static const AVClass g729_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_g729_demuxer = { - .name = "g729", - .long_name = NULL_IF_CONFIG_SMALL("G.729 raw format demuxer"), +const FFInputFormat ff_g729_demuxer = { + .p.name = "g729", + .p.long_name = NULL_IF_CONFIG_SMALL("G.729 raw format demuxer"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "g729", + .p.priv_class = &g729_demuxer_class, .priv_data_size = sizeof(G729DemuxerContext), .read_header = g729_read_header, .read_packet = g729_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "g729", - .priv_class = &g729_demuxer_class, }; diff --git a/libavformat/gdv.c b/libavformat/gdv.c index f8a8f50351..9a042a1fc8 100644 --- a/libavformat/gdv.c +++ b/libavformat/gdv.c @@ -23,6 +23,7 @@ #include "avformat.h" #include "avio.h" +#include "demux.h" #include "internal.h" typedef struct GDVContext { @@ -194,9 +195,9 @@ static int gdv_read_packet(AVFormatContext *ctx, AVPacket *pkt) return 0; } -const AVInputFormat ff_gdv_demuxer = { - .name = "gdv", - .long_name = NULL_IF_CONFIG_SMALL("Gremlin Digital Video"), +const FFInputFormat ff_gdv_demuxer = { + .p.name = "gdv", + .p.long_name = NULL_IF_CONFIG_SMALL("Gremlin Digital Video"), .priv_data_size = sizeof(GDVContext), .read_probe = gdv_read_probe, .read_header = gdv_read_header, diff --git a/libavformat/genh.c b/libavformat/genh.c index 1f707b5555..deecca4a4c 100644 --- a/libavformat/genh.c +++ b/libavformat/genh.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct GENHDemuxContext { @@ -195,12 +196,12 @@ static int genh_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_genh_demuxer = { - .name = "genh", - .long_name = NULL_IF_CONFIG_SMALL("GENeric Header"), +const FFInputFormat ff_genh_demuxer = { + .p.name = "genh", + .p.long_name = NULL_IF_CONFIG_SMALL("GENeric Header"), + .p.extensions = "genh", .priv_data_size = sizeof(GENHDemuxContext), .read_probe = genh_probe, .read_header = genh_read_header, .read_packet = genh_read_packet, - .extensions = "genh", }; diff --git a/libavformat/gifdec.c b/libavformat/gifdec.c index 32286adafe..294007682b 100644 --- a/libavformat/gifdec.c +++ b/libavformat/gifdec.c @@ -25,6 +25,7 @@ */ #include "avformat.h" +#include "demux.h" #include "libavutil/bprint.h" #include "libavutil/intreadwrite.h" #include "libavutil/opt.h" @@ -278,14 +279,14 @@ static const AVClass demuxer_class = { .category = AV_CLASS_CATEGORY_DEMUXER, }; -const AVInputFormat ff_gif_demuxer = { - .name = "gif", - .long_name = NULL_IF_CONFIG_SMALL("CompuServe Graphics Interchange Format (GIF)"), +const FFInputFormat ff_gif_demuxer = { + .p.name = "gif", + .p.long_name = NULL_IF_CONFIG_SMALL("CompuServe Graphics Interchange Format (GIF)"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "gif", + .p.priv_class = &demuxer_class, .priv_data_size = sizeof(GIFDemuxContext), .read_probe = gif_probe, .read_header = gif_read_header, .read_packet = gif_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "gif", - .priv_class = &demuxer_class, }; diff --git a/libavformat/gsmdec.c b/libavformat/gsmdec.c index 7150daa510..10fba212e9 100644 --- a/libavformat/gsmdec.c +++ b/libavformat/gsmdec.c @@ -23,6 +23,7 @@ #include "libavutil/mathematics.h" #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define GSM_BLOCK_SIZE 33 @@ -102,15 +103,15 @@ static const AVClass gsm_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_gsm_demuxer = { - .name = "gsm", - .long_name = NULL_IF_CONFIG_SMALL("raw GSM"), +const FFInputFormat ff_gsm_demuxer = { + .p.name = "gsm", + .p.long_name = NULL_IF_CONFIG_SMALL("raw GSM"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "gsm", + .p.priv_class = &gsm_class, .priv_data_size = sizeof(GSMDemuxerContext), .read_probe = gsm_probe, .read_header = gsm_read_header, .read_packet = gsm_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "gsm", .raw_codec_id = AV_CODEC_ID_GSM, - .priv_class = &gsm_class, }; diff --git a/libavformat/gxf.c b/libavformat/gxf.c index f720521c1b..1a9f0d75b0 100644 --- a/libavformat/gxf.c +++ b/libavformat/gxf.c @@ -599,9 +599,9 @@ static int64_t gxf_read_timestamp(AVFormatContext *s, int stream_index, return res; } -const AVInputFormat ff_gxf_demuxer = { - .name = "gxf", - .long_name = NULL_IF_CONFIG_SMALL("GXF (General eXchange Format)"), +const FFInputFormat ff_gxf_demuxer = { + .p.name = "gxf", + .p.long_name = NULL_IF_CONFIG_SMALL("GXF (General eXchange Format)"), .priv_data_size = sizeof(struct gxf_stream_info), .read_probe = gxf_probe, .read_header = gxf_header, diff --git a/libavformat/hca.c b/libavformat/hca.c index e796512a62..713082f8b0 100644 --- a/libavformat/hca.c +++ b/libavformat/hca.c @@ -24,6 +24,7 @@ #include "libavcodec/bytestream.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define HCA_MASK 0x7f7f7f7f @@ -148,14 +149,14 @@ static const AVClass hca_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_hca_demuxer = { - .name = "hca", - .long_name = NULL_IF_CONFIG_SMALL("CRI HCA"), - .priv_class = &hca_class, +const FFInputFormat ff_hca_demuxer = { + .p.name = "hca", + .p.long_name = NULL_IF_CONFIG_SMALL("CRI HCA"), + .p.priv_class = &hca_class, + .p.extensions = "hca", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(HCADemuxContext), .read_probe = hca_probe, .read_header = hca_read_header, .read_packet = hca_read_packet, - .extensions = "hca", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/hcom.c b/libavformat/hcom.c index 5031f00297..2a8c524496 100644 --- a/libavformat/hcom.c +++ b/libavformat/hcom.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -81,9 +82,9 @@ static int hcom_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_hcom_demuxer = { - .name = "hcom", - .long_name = NULL_IF_CONFIG_SMALL("Macintosh HCOM"), +const FFInputFormat ff_hcom_demuxer = { + .p.name = "hcom", + .p.long_name = NULL_IF_CONFIG_SMALL("Macintosh HCOM"), .read_probe = hcom_probe, .read_header = hcom_read_header, .read_packet = ff_pcm_read_packet, diff --git a/libavformat/hls.c b/libavformat/hls.c index 61e2d67588..f6b44c2e35 100644 --- a/libavformat/hls.c +++ b/libavformat/hls.c @@ -2102,7 +2102,7 @@ static int hls_read_header(AVFormatContext *s) pls->audio_setup_info.codec_id != AV_CODEC_ID_NONE) { void *iter = NULL; while ((in_fmt = av_demuxer_iterate(&iter))) - if (in_fmt->raw_codec_id == pls->audio_setup_info.codec_id) + if (ffifmt(in_fmt)->raw_codec_id == pls->audio_setup_info.codec_id) break; } else { pls->ctx->probesize = s->probesize > 0 ? s->probesize : 1024 * 4; @@ -2594,12 +2594,12 @@ static const AVClass hls_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_hls_demuxer = { - .name = "hls", - .long_name = NULL_IF_CONFIG_SMALL("Apple HTTP Live Streaming"), - .priv_class = &hls_class, +const FFInputFormat ff_hls_demuxer = { + .p.name = "hls", + .p.long_name = NULL_IF_CONFIG_SMALL("Apple HTTP Live Streaming"), + .p.priv_class = &hls_class, + .p.flags = AVFMT_NOGENSEARCH | AVFMT_TS_DISCONT | AVFMT_NO_BYTE_SEEK, .priv_data_size = sizeof(HLSContext), - .flags = AVFMT_NOGENSEARCH | AVFMT_TS_DISCONT | AVFMT_NO_BYTE_SEEK, .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = hls_probe, .read_header = hls_read_header, diff --git a/libavformat/hnm.c b/libavformat/hnm.c index 97990b2673..42efaaa3e8 100644 --- a/libavformat/hnm.c +++ b/libavformat/hnm.c @@ -24,6 +24,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define HNM4_TAG MKTAG('H', 'N', 'M', '4') @@ -158,12 +159,12 @@ static int hnm_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_hnm_demuxer = { - .name = "hnm", - .long_name = NULL_IF_CONFIG_SMALL("Cryo HNM v4"), +const FFInputFormat ff_hnm_demuxer = { + .p.name = "hnm", + .p.long_name = NULL_IF_CONFIG_SMALL("Cryo HNM v4"), + .p.flags = AVFMT_NO_BYTE_SEEK | AVFMT_NOGENSEARCH | AVFMT_NOBINSEARCH, .priv_data_size = sizeof(Hnm4DemuxContext), .read_probe = hnm_probe, .read_header = hnm_read_header, .read_packet = hnm_read_packet, - .flags = AVFMT_NO_BYTE_SEEK | AVFMT_NOGENSEARCH | AVFMT_NOBINSEARCH }; diff --git a/libavformat/iamfdec.c b/libavformat/iamfdec.c index 99622f697b..900e8a450b 100644 --- a/libavformat/iamfdec.c +++ b/libavformat/iamfdec.c @@ -26,6 +26,7 @@ #include "libavcodec/mathops.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "iamf.h" #include "iamf_parse.h" #include "internal.h" @@ -490,15 +491,15 @@ static int iamf_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_iamf_demuxer = { - .name = "iamf", - .long_name = NULL_IF_CONFIG_SMALL("Raw Immersive Audio Model and Formats"), +const FFInputFormat ff_iamf_demuxer = { + .p.name = "iamf", + .p.long_name = NULL_IF_CONFIG_SMALL("Raw Immersive Audio Model and Formats"), + .p.extensions = "iamf", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS | AVFMT_SHOW_IDS, .priv_data_size = sizeof(IAMFDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = iamf_probe, .read_header = iamf_read_header, .read_packet = iamf_read_packet, .read_close = iamf_read_close, - .extensions = "iamf", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS | AVFMT_SHOW_IDS, }; diff --git a/libavformat/icodec.c b/libavformat/icodec.c index 85dab3bca0..0ec6e0b258 100644 --- a/libavformat/icodec.c +++ b/libavformat/icodec.c @@ -28,6 +28,7 @@ #include "libavcodec/bytestream.h" #include "libavcodec/png.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct { @@ -216,14 +217,14 @@ static int ico_read_close(AVFormatContext * s) return 0; } -const AVInputFormat ff_ico_demuxer = { - .name = "ico", - .long_name = NULL_IF_CONFIG_SMALL("Microsoft Windows ICO"), +const FFInputFormat ff_ico_demuxer = { + .p.name = "ico", + .p.long_name = NULL_IF_CONFIG_SMALL("Microsoft Windows ICO"), + .p.flags = AVFMT_NOTIMESTAMPS, .priv_data_size = sizeof(IcoDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = probe, .read_header = read_header, .read_packet = read_packet, .read_close = ico_read_close, - .flags = AVFMT_NOTIMESTAMPS, }; diff --git a/libavformat/idcin.c b/libavformat/idcin.c index 1560d58e39..561715d3d9 100644 --- a/libavformat/idcin.c +++ b/libavformat/idcin.c @@ -365,13 +365,13 @@ static int idcin_read_seek(AVFormatContext *s, int stream_index, return -1; } -const AVInputFormat ff_idcin_demuxer = { - .name = "idcin", - .long_name = NULL_IF_CONFIG_SMALL("id Cinematic"), +const FFInputFormat ff_idcin_demuxer = { + .p.name = "idcin", + .p.long_name = NULL_IF_CONFIG_SMALL("id Cinematic"), + .p.flags = AVFMT_NO_BYTE_SEEK, .priv_data_size = sizeof(IdcinDemuxContext), .read_probe = idcin_probe, .read_header = idcin_read_header, .read_packet = idcin_read_packet, .read_seek = idcin_read_seek, - .flags = AVFMT_NO_BYTE_SEEK, }; diff --git a/libavformat/idroqdec.c b/libavformat/idroqdec.c index 01ea2bb77b..67bc1246e6 100644 --- a/libavformat/idroqdec.c +++ b/libavformat/idroqdec.c @@ -30,6 +30,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -237,9 +238,9 @@ static int roq_read_packet(AVFormatContext *s, return ret; } -const AVInputFormat ff_roq_demuxer = { - .name = "roq", - .long_name = NULL_IF_CONFIG_SMALL("id RoQ"), +const FFInputFormat ff_roq_demuxer = { + .p.name = "roq", + .p.long_name = NULL_IF_CONFIG_SMALL("id RoQ"), .priv_data_size = sizeof(RoqDemuxContext), .read_probe = roq_probe, .read_header = roq_read_header, diff --git a/libavformat/iff.c b/libavformat/iff.c index b8e8bffe03..633e0c11fd 100644 --- a/libavformat/iff.c +++ b/libavformat/iff.c @@ -36,6 +36,7 @@ #include "libavutil/dict.h" #include "libavcodec/bytestream.h" #include "avformat.h" +#include "demux.h" #include "id3v2.h" #include "internal.h" @@ -901,12 +902,12 @@ static int iff_read_packet(AVFormatContext *s, return ret; } -const AVInputFormat ff_iff_demuxer = { - .name = "iff", - .long_name = NULL_IF_CONFIG_SMALL("IFF (Interchange File Format)"), +const FFInputFormat ff_iff_demuxer = { + .p.name = "iff", + .p.long_name = NULL_IF_CONFIG_SMALL("IFF (Interchange File Format)"), + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK, .priv_data_size = sizeof(IffDemuxContext), .read_probe = iff_probe, .read_header = iff_read_header, .read_packet = iff_read_packet, - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK, }; diff --git a/libavformat/ifv.c b/libavformat/ifv.c index 694abd951b..0cfd2763a9 100644 --- a/libavformat/ifv.c +++ b/libavformat/ifv.c @@ -23,6 +23,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/dict_internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -309,11 +310,11 @@ static int ifv_read_seek(AVFormatContext *s, int stream_index, int64_t ts, int f return 0; } -const AVInputFormat ff_ifv_demuxer = { - .name = "ifv", - .long_name = NULL_IF_CONFIG_SMALL("IFV CCTV DVR"), +const FFInputFormat ff_ifv_demuxer = { + .p.name = "ifv", + .p.long_name = NULL_IF_CONFIG_SMALL("IFV CCTV DVR"), + .p.extensions = "ifv", .priv_data_size = sizeof(IFVContext), - .extensions = "ifv", .read_probe = ifv_probe, .read_header = ifv_read_header, .read_packet = ifv_read_packet, diff --git a/libavformat/ilbc.c b/libavformat/ilbc.c index 6b5bb33b62..bb98d0e62a 100644 --- a/libavformat/ilbc.c +++ b/libavformat/ilbc.c @@ -22,6 +22,7 @@ #include "config_components.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "rawenc.h" @@ -111,13 +112,13 @@ static int ilbc_read_packet(AVFormatContext *s, return 0; } -const AVInputFormat ff_ilbc_demuxer = { - .name = "ilbc", - .long_name = NULL_IF_CONFIG_SMALL("iLBC storage"), +const FFInputFormat ff_ilbc_demuxer = { + .p.name = "ilbc", + .p.long_name = NULL_IF_CONFIG_SMALL("iLBC storage"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = ilbc_probe, .read_header = ilbc_read_header, .read_packet = ilbc_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; #if CONFIG_ILBC_MUXER diff --git a/libavformat/imfdec.c b/libavformat/imfdec.c index 901080555a..b57c54bd14 100644 --- a/libavformat/imfdec.c +++ b/libavformat/imfdec.c @@ -1014,12 +1014,12 @@ static const AVClass imf_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_imf_demuxer = { - .name = "imf", - .long_name = NULL_IF_CONFIG_SMALL("IMF (Interoperable Master Format)"), - .flags = AVFMT_NO_BYTE_SEEK, +const FFInputFormat ff_imf_demuxer = { + .p.name = "imf", + .p.long_name = NULL_IF_CONFIG_SMALL("IMF (Interoperable Master Format)"), + .p.flags = AVFMT_NO_BYTE_SEEK, + .p.priv_class = &imf_class, .flags_internal = FF_FMT_INIT_CLEANUP, - .priv_class = &imf_class, .priv_data_size = sizeof(IMFContext), .read_probe = imf_probe, .read_header = imf_read_header, diff --git a/libavformat/img2_alias_pix.c b/libavformat/img2_alias_pix.c index d0aac83924..d96c0ccf55 100644 --- a/libavformat/img2_alias_pix.c +++ b/libavformat/img2_alias_pix.c @@ -19,6 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "demux.h" #include "img2.h" #include "libavcodec/bytestream.h" @@ -61,13 +62,13 @@ static const AVClass image2_alias_pix_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_image2_alias_pix_demuxer = { - .name = "alias_pix", - .long_name = NULL_IF_CONFIG_SMALL("Alias/Wavefront PIX image"), +const FFInputFormat ff_image2_alias_pix_demuxer = { + .p.name = "alias_pix", + .p.long_name = NULL_IF_CONFIG_SMALL("Alias/Wavefront PIX image"), + .p.priv_class = &image2_alias_pix_class, .priv_data_size = sizeof(VideoDemuxData), .read_probe = alias_pix_read_probe, .read_header = ff_img_read_header, .read_packet = ff_img_read_packet, .raw_codec_id = AV_CODEC_ID_ALIAS_PIX, - .priv_class = &image2_alias_pix_class, }; diff --git a/libavformat/img2_brender_pix.c b/libavformat/img2_brender_pix.c index 9d9a7c0819..9e9335eafe 100644 --- a/libavformat/img2_brender_pix.c +++ b/libavformat/img2_brender_pix.c @@ -19,6 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "demux.h" #include "img2.h" #include "libavutil/intreadwrite.h" @@ -45,13 +46,13 @@ static const AVClass image2_brender_pix_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_image2_brender_pix_demuxer = { - .name = "brender_pix", - .long_name = NULL_IF_CONFIG_SMALL("BRender PIX image"), +const FFInputFormat ff_image2_brender_pix_demuxer = { + .p.name = "brender_pix", + .p.long_name = NULL_IF_CONFIG_SMALL("BRender PIX image"), + .p.priv_class = &image2_brender_pix_class, .priv_data_size = sizeof(VideoDemuxData), .read_probe = brender_read_probe, .read_header = ff_img_read_header, .read_packet = ff_img_read_packet, .raw_codec_id = AV_CODEC_ID_BRENDER_PIX, - .priv_class = &image2_brender_pix_class, }; diff --git a/libavformat/img2dec.c b/libavformat/img2dec.c index 2761cb37a4..ead92f22c4 100644 --- a/libavformat/img2dec.c +++ b/libavformat/img2dec.c @@ -34,6 +34,7 @@ #include "libavcodec/gif.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "img2.h" #include "os_support.h" @@ -322,9 +323,9 @@ int ff_img_read_header(AVFormatContext *s1) } else if (s1->audio_codec_id) { st->codecpar->codec_type = AVMEDIA_TYPE_AUDIO; st->codecpar->codec_id = s1->audio_codec_id; - } else if (s1->iformat->raw_codec_id) { + } else if (ffifmt(s1->iformat)->raw_codec_id) { st->codecpar->codec_type = AVMEDIA_TYPE_VIDEO; - st->codecpar->codec_id = s1->iformat->raw_codec_id; + st->codecpar->codec_id = ffifmt(s1->iformat)->raw_codec_id; } else { const char *str = strrchr(s->path, '.'); s->split_planes = str && !av_strcasecmp(str + 1, "y"); @@ -351,13 +352,14 @@ int ff_img_read_header(AVFormatContext *s1) pd.filename = s1->url; while ((fmt = av_demuxer_iterate(&fmt_iter))) { - if (fmt->read_header != ff_img_read_header || - !fmt->read_probe || + const FFInputFormat *fmt2 = ffifmt(fmt); + if (fmt2->read_header != ff_img_read_header || + !fmt2->read_probe || (fmt->flags & AVFMT_NOFILE) || - !fmt->raw_codec_id) + !fmt2->raw_codec_id) continue; - if (fmt->read_probe(&pd) > 0) { - st->codecpar->codec_id = fmt->raw_codec_id; + if (fmt2->read_probe(&pd) > 0) { + st->codecpar->codec_id = fmt2->raw_codec_id; break; } } @@ -458,7 +460,7 @@ int ff_img_read_packet(AVFormatContext *s1, AVPacket *pkt) if (par->codec_id == AV_CODEC_ID_NONE) { AVProbeData pd = { 0 }; - const AVInputFormat *ifmt; + const FFInputFormat *ifmt; uint8_t header[PROBE_BUF_MIN + AVPROBE_PADDING_SIZE]; int ret; int score = 0; @@ -472,7 +474,7 @@ int ff_img_read_packet(AVFormatContext *s1, AVPacket *pkt) pd.buf_size = ret; pd.filename = filename; - ifmt = av_probe_input_format3(&pd, 1, &score); + ifmt = ffifmt(av_probe_input_format3(&pd, 1, &score)); if (ifmt && ifmt->read_packet == ff_img_read_packet && ifmt->raw_codec_id) par->codec_id = ifmt->raw_codec_id; } @@ -638,17 +640,17 @@ static const AVClass img2_class = { .option = ff_img_options, .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_image2_demuxer = { - .name = "image2", - .long_name = NULL_IF_CONFIG_SMALL("image2 sequence"), +const FFInputFormat ff_image2_demuxer = { + .p.name = "image2", + .p.long_name = NULL_IF_CONFIG_SMALL("image2 sequence"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &img2_class, .priv_data_size = sizeof(VideoDemuxData), .read_probe = img_read_probe, .read_header = ff_img_read_header, .read_packet = ff_img_read_packet, .read_close = img_read_close, .read_seek = img_read_seek, - .flags = AVFMT_NOFILE, - .priv_class = &img2_class, }; #endif @@ -664,13 +666,13 @@ static const AVClass imagepipe_class = { }; #if CONFIG_IMAGE2PIPE_DEMUXER -const AVInputFormat ff_image2pipe_demuxer = { - .name = "image2pipe", - .long_name = NULL_IF_CONFIG_SMALL("piped image2 sequence"), +const FFInputFormat ff_image2pipe_demuxer = { + .p.name = "image2pipe", + .p.long_name = NULL_IF_CONFIG_SMALL("piped image2 sequence"), + .p.priv_class = &imagepipe_class, .priv_data_size = sizeof(VideoDemuxData), .read_header = ff_img_read_header, .read_packet = ff_img_read_packet, - .priv_class = &imagepipe_class, }; #endif @@ -1205,15 +1207,15 @@ static int vbn_probe(const AVProbeData *p) #define IMAGEAUTO_DEMUXER_0(imgname, codecid) #define IMAGEAUTO_DEMUXER_1(imgname, codecid)\ -const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\ - .name = AV_STRINGIFY(imgname) "_pipe",\ - .long_name = NULL_IF_CONFIG_SMALL("piped " AV_STRINGIFY(imgname) " sequence"),\ +const FFInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\ + .p.name = AV_STRINGIFY(imgname) "_pipe",\ + .p.long_name = NULL_IF_CONFIG_SMALL("piped " AV_STRINGIFY(imgname) " sequence"),\ + .p.priv_class = &imagepipe_class,\ + .p.flags = AVFMT_GENERIC_INDEX,\ .priv_data_size = sizeof(VideoDemuxData),\ .read_probe = imgname ## _probe,\ .read_header = ff_img_read_header,\ .read_packet = ff_img_read_packet,\ - .priv_class = &imagepipe_class,\ - .flags = AVFMT_GENERIC_INDEX, \ .raw_codec_id = codecid,\ }; diff --git a/libavformat/imx.c b/libavformat/imx.c index c8b1a3b2ad..70b62b63d7 100644 --- a/libavformat/imx.c +++ b/libavformat/imx.c @@ -21,6 +21,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/intreadwrite.h" #include "libavutil/channel_layout.h" @@ -155,13 +156,13 @@ retry: return ret; } -const AVInputFormat ff_simbiosis_imx_demuxer = { - .name = "simbiosis_imx", - .long_name = NULL_IF_CONFIG_SMALL("Simbiosis Interactive IMX"), +const FFInputFormat ff_simbiosis_imx_demuxer = { + .p.name = "simbiosis_imx", + .p.long_name = NULL_IF_CONFIG_SMALL("Simbiosis Interactive IMX"), + .p.extensions = "imx", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(SimbiosisIMXDemuxContext), .read_probe = simbiosis_imx_probe, .read_header = simbiosis_imx_read_header, .read_packet = simbiosis_imx_read_packet, - .extensions = "imx", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/ingenientdec.c b/libavformat/ingenientdec.c index 7a9cce155f..63624372a6 100644 --- a/libavformat/ingenientdec.c +++ b/libavformat/ingenientdec.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "rawdec.h" #include "libavutil/intreadwrite.h" @@ -61,15 +62,15 @@ static int ingenient_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_ingenient_demuxer = { - .name = "ingenient", - .long_name = NULL_IF_CONFIG_SMALL("raw Ingenient MJPEG"), +const FFInputFormat ff_ingenient_demuxer = { + .p.name = "ingenient", + .p.long_name = NULL_IF_CONFIG_SMALL("raw Ingenient MJPEG"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "cgi", // FIXME + .p.priv_class = &ff_rawvideo_demuxer_class, .priv_data_size = sizeof(FFRawVideoDemuxerContext), .read_probe = ingenient_probe, .read_header = ff_raw_video_read_header, .read_packet = ingenient_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "cgi", // FIXME .raw_codec_id = AV_CODEC_ID_MJPEG, - .priv_class = &ff_rawvideo_demuxer_class, }; diff --git a/libavformat/internal.h b/libavformat/internal.h index c66f959e9f..350762def7 100644 --- a/libavformat/internal.h +++ b/libavformat/internal.h @@ -40,7 +40,7 @@ #endif /** - * For an AVInputFormat with this flag set read_close() needs to be called + * For an FFInputFormat with this flag set read_close() needs to be called * by the caller upon read_header() failure. */ #define FF_FMT_INIT_CLEANUP (1 << 0) @@ -752,6 +752,8 @@ void ff_format_set_url(AVFormatContext *s, char *url); int ff_match_url_ext(const char *url, const char *extensions); struct FFOutputFormat; -void avpriv_register_devices(const struct FFOutputFormat * const o[], const AVInputFormat * const i[]); +struct FFInputFormat; +void avpriv_register_devices(const struct FFOutputFormat * const o[], + const struct FFInputFormat * const i[]); #endif /* AVFORMAT_INTERNAL_H */ diff --git a/libavformat/ipmovie.c b/libavformat/ipmovie.c index 4f5c164d3f..5d1748953a 100644 --- a/libavformat/ipmovie.c +++ b/libavformat/ipmovie.c @@ -700,9 +700,9 @@ static int ipmovie_read_packet(AVFormatContext *s, } } -const AVInputFormat ff_ipmovie_demuxer = { - .name = "ipmovie", - .long_name = NULL_IF_CONFIG_SMALL("Interplay MVE"), +const FFInputFormat ff_ipmovie_demuxer = { + .p.name = "ipmovie", + .p.long_name = NULL_IF_CONFIG_SMALL("Interplay MVE"), .priv_data_size = sizeof(IPMVEContext), .read_probe = ipmovie_probe, .read_header = ipmovie_read_header, diff --git a/libavformat/ipudec.c b/libavformat/ipudec.c index 4e346f9638..770eb8a3d1 100644 --- a/libavformat/ipudec.c +++ b/libavformat/ipudec.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" #include "rawdec.h" @@ -67,15 +68,15 @@ static int ipu_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_ipu_demuxer = { - .name = "ipu", - .long_name = NULL_IF_CONFIG_SMALL("raw IPU Video"), +const FFInputFormat ff_ipu_demuxer = { + .p.name = "ipu", + .p.long_name = NULL_IF_CONFIG_SMALL("raw IPU Video"), + .p.extensions = "ipu", + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &ff_raw_demuxer_class, .read_probe = ipu_read_probe, .read_header = ipu_read_header, .read_packet = ff_raw_read_partial_packet, - .extensions = "ipu", - .flags = AVFMT_GENERIC_INDEX, .raw_codec_id = AV_CODEC_ID_IPU, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/ircamdec.c b/libavformat/ircamdec.c index eb59c95e14..03a61e9f13 100644 --- a/libavformat/ircamdec.c +++ b/libavformat/ircamdec.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "libavcodec/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" #include "ircam.h" @@ -107,13 +108,13 @@ static int ircam_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_ircam_demuxer = { - .name = "ircam", - .long_name = NULL_IF_CONFIG_SMALL("Berkeley/IRCAM/CARL Sound Format"), +const FFInputFormat ff_ircam_demuxer = { + .p.name = "ircam", + .p.long_name = NULL_IF_CONFIG_SMALL("Berkeley/IRCAM/CARL Sound Format"), + .p.extensions = "sf,ircam", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = ircam_probe, .read_header = ircam_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "sf,ircam", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/iss.c b/libavformat/iss.c index f54ff8b0de..7a68fcaf63 100644 --- a/libavformat/iss.c +++ b/libavformat/iss.c @@ -28,6 +28,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/avstring.h" @@ -144,9 +145,9 @@ static int iss_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_iss_demuxer = { - .name = "iss", - .long_name = NULL_IF_CONFIG_SMALL("Funcom ISS"), +const FFInputFormat ff_iss_demuxer = { + .p.name = "iss", + .p.long_name = NULL_IF_CONFIG_SMALL("Funcom ISS"), .priv_data_size = sizeof(IssDemuxContext), .read_probe = iss_probe, .read_header = iss_read_header, diff --git a/libavformat/iv8.c b/libavformat/iv8.c index a3954ca1ed..635675cdc7 100644 --- a/libavformat/iv8.c +++ b/libavformat/iv8.c @@ -19,6 +19,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" @@ -107,11 +108,11 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_iv8_demuxer = { - .name = "iv8", - .long_name = NULL_IF_CONFIG_SMALL("IndigoVision 8000 video"), +const FFInputFormat ff_iv8_demuxer = { + .p.name = "iv8", + .p.long_name = NULL_IF_CONFIG_SMALL("IndigoVision 8000 video"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = probe, .read_header = read_header, .read_packet = read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/ivfdec.c b/libavformat/ivfdec.c index 141ce4f1be..9e34fb014e 100644 --- a/libavformat/ivfdec.c +++ b/libavformat/ivfdec.c @@ -19,6 +19,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "riff.h" #include "libavutil/intreadwrite.h" @@ -88,12 +89,12 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_ivf_demuxer = { - .name = "ivf", - .long_name = NULL_IF_CONFIG_SMALL("On2 IVF"), +const FFInputFormat ff_ivf_demuxer = { + .p.name = "ivf", + .p.long_name = NULL_IF_CONFIG_SMALL("On2 IVF"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.codec_tag = (const AVCodecTag* const []){ ff_codec_bmp_tags, 0 }, .read_probe = probe, .read_header = read_header, .read_packet = read_packet, - .flags = AVFMT_GENERIC_INDEX, - .codec_tag = (const AVCodecTag* const []){ ff_codec_bmp_tags, 0 }, }; diff --git a/libavformat/jacosubdec.c b/libavformat/jacosubdec.c index c6e5b4aa6d..8b0aa312fc 100644 --- a/libavformat/jacosubdec.c +++ b/libavformat/jacosubdec.c @@ -26,6 +26,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavcodec/jacosub.h" @@ -256,9 +257,9 @@ static int jacosub_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_jacosub_demuxer = { - .name = "jacosub", - .long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle format"), +const FFInputFormat ff_jacosub_demuxer = { + .p.name = "jacosub", + .p.long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle format"), .priv_data_size = sizeof(JACOsubContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = jacosub_probe, diff --git a/libavformat/jpegxl_anim_dec.c b/libavformat/jpegxl_anim_dec.c index 54cd6e4e9d..f749b378b3 100644 --- a/libavformat/jpegxl_anim_dec.c +++ b/libavformat/jpegxl_anim_dec.c @@ -34,6 +34,7 @@ #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct JXLAnimDemuxContext { @@ -188,16 +189,16 @@ static int jpegxl_anim_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_jpegxl_anim_demuxer = { - .name = "jpegxl_anim", - .long_name = NULL_IF_CONFIG_SMALL("Animated JPEG XL"), +const FFInputFormat ff_jpegxl_anim_demuxer = { + .p.name = "jpegxl_anim", + .p.long_name = NULL_IF_CONFIG_SMALL("Animated JPEG XL"), + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, + .p.mime_type = "image/jxl", + .p.extensions = "jxl", .priv_data_size = sizeof(JXLAnimDemuxContext), .read_probe = jpegxl_anim_probe, .read_header = jpegxl_anim_read_header, .read_packet = jpegxl_anim_read_packet, .read_close = jpegxl_anim_close, .flags_internal = FF_FMT_INIT_CLEANUP, - .flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, - .mime_type = "image/jxl", - .extensions = "jxl", }; diff --git a/libavformat/jvdec.c b/libavformat/jvdec.c index 5e0e2239f5..89c82483aa 100644 --- a/libavformat/jvdec.c +++ b/libavformat/jvdec.c @@ -29,6 +29,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define JV_PREAMBLE_SIZE 5 @@ -250,9 +251,9 @@ static int read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_jv_demuxer = { - .name = "jv", - .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV"), +const FFInputFormat ff_jv_demuxer = { + .p.name = "jv", + .p.long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV"), .priv_data_size = sizeof(JVDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = read_probe, diff --git a/libavformat/kvag.c b/libavformat/kvag.c index 9487e7dd0e..bea1dda3e5 100644 --- a/libavformat/kvag.c +++ b/libavformat/kvag.c @@ -25,6 +25,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "rawenc.h" @@ -115,9 +116,9 @@ static int kvag_seek(AVFormatContext *s, int stream_index, return avio_seek(s->pb, KVAG_HEADER_SIZE, SEEK_SET); } -const AVInputFormat ff_kvag_demuxer = { - .name = "kvag", - .long_name = NULL_IF_CONFIG_SMALL("Simon & Schuster Interactive VAG"), +const FFInputFormat ff_kvag_demuxer = { + .p.name = "kvag", + .p.long_name = NULL_IF_CONFIG_SMALL("Simon & Schuster Interactive VAG"), .read_probe = kvag_probe, .read_header = kvag_read_header, .read_packet = kvag_read_packet, diff --git a/libavformat/lafdec.c b/libavformat/lafdec.c index b867f106ae..05f30691ba 100644 --- a/libavformat/lafdec.c +++ b/libavformat/lafdec.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #define MAX_STREAMS 4096 @@ -277,16 +278,16 @@ static int laf_read_seek(AVFormatContext *ctx, int stream_index, return -1; } -const AVInputFormat ff_laf_demuxer = { - .name = "laf", - .long_name = NULL_IF_CONFIG_SMALL("LAF (Limitless Audio Format)"), +const FFInputFormat ff_laf_demuxer = { + .p.name = "laf", + .p.long_name = NULL_IF_CONFIG_SMALL("LAF (Limitless Audio Format)"), + .p.extensions = "laf", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(LAFContext), .read_probe = laf_probe, .read_header = laf_read_header, .read_packet = laf_read_packet, .read_close = laf_read_close, .read_seek = laf_read_seek, - .extensions = "laf", - .flags = AVFMT_GENERIC_INDEX, .flags_internal = FF_FMT_INIT_CLEANUP, }; diff --git a/libavformat/libgme.c b/libavformat/libgme.c index 695155c9ac..c2baa9c3ff 100644 --- a/libavformat/libgme.c +++ b/libavformat/libgme.c @@ -26,6 +26,7 @@ #include "libavutil/eval.h" #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct GMEContext { @@ -193,9 +194,10 @@ static const AVClass class_gme = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_libgme_demuxer = { - .name = "libgme", - .long_name = NULL_IF_CONFIG_SMALL("Game Music Emu demuxer"), +const FFInputFormat ff_libgme_demuxer = { + .p.name = "libgme", + .p.long_name = NULL_IF_CONFIG_SMALL("Game Music Emu demuxer"), + .p.priv_class = &class_gme, .priv_data_size = sizeof(GMEContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = probe_gme, @@ -203,5 +205,4 @@ const AVInputFormat ff_libgme_demuxer = { .read_packet = read_packet_gme, .read_close = read_close_gme, .read_seek = read_seek_gme, - .priv_class = &class_gme, }; diff --git a/libavformat/libmodplug.c b/libavformat/libmodplug.c index 0cae13bd2e..8c6569f778 100644 --- a/libavformat/libmodplug.c +++ b/libavformat/libmodplug.c @@ -28,6 +28,7 @@ #include "libavutil/eval.h" #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct ModPlugContext { @@ -380,15 +381,15 @@ static const AVClass modplug_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_libmodplug_demuxer = { - .name = "libmodplug", - .long_name = NULL_IF_CONFIG_SMALL("ModPlug demuxer"), +const FFInputFormat ff_libmodplug_demuxer = { + .p.name = "libmodplug", + .p.long_name = NULL_IF_CONFIG_SMALL("ModPlug demuxer"), + .p.extensions = modplug_extensions, + .p.priv_class = &modplug_class, .priv_data_size = sizeof(ModPlugContext), .read_probe = modplug_probe, .read_header = modplug_read_header, .read_packet = modplug_read_packet, .read_close = modplug_read_close, .read_seek = modplug_read_seek, - .extensions = modplug_extensions, - .priv_class = &modplug_class, }; diff --git a/libavformat/libopenmpt.c b/libavformat/libopenmpt.c index 3ca59f506f..bba1c38521 100644 --- a/libavformat/libopenmpt.c +++ b/libavformat/libopenmpt.c @@ -34,6 +34,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct OpenMPTContext { @@ -278,9 +279,15 @@ static const AVClass class_openmpt = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_libopenmpt_demuxer = { - .name = "libopenmpt", - .long_name = NULL_IF_CONFIG_SMALL("Tracker formats (libopenmpt)"), +const FFInputFormat ff_libopenmpt_demuxer = { + .p.name = "libopenmpt", + .p.long_name = NULL_IF_CONFIG_SMALL("Tracker formats (libopenmpt)"), + .p.priv_class = &class_openmpt, +#if OPENMPT_API_VERSION_AT_LEAST(0,3,0) + .p.extensions = "669,amf,ams,dbm,digi,dmf,dsm,dtm,far,gdm,ice,imf,it,j2b,m15,mdl,med,mmcmp,mms,mo3,mod,mptm,mt2,mtm,nst,okt,plm,ppm,psm,pt36,ptm,s3m,sfx,sfx2,st26,stk,stm,stp,ult,umx,wow,xm,xpk", +#else + .p.extensions = "669,amf,ams,dbm,digi,dmf,dsm,far,gdm,ice,imf,it,j2b,m15,mdl,med,mmcmp,mms,mo3,mod,mptm,mt2,mtm,nst,okt,plm,ppm,psm,pt36,ptm,s3m,sfx,sfx2,st26,stk,stm,ult,umx,wow,xm,xpk", +#endif .priv_data_size = sizeof(OpenMPTContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = read_probe_openmpt, @@ -288,10 +295,4 @@ const AVInputFormat ff_libopenmpt_demuxer = { .read_packet = read_packet_openmpt, .read_close = read_close_openmpt, .read_seek = read_seek_openmpt, - .priv_class = &class_openmpt, -#if OPENMPT_API_VERSION_AT_LEAST(0,3,0) - .extensions = "669,amf,ams,dbm,digi,dmf,dsm,dtm,far,gdm,ice,imf,it,j2b,m15,mdl,med,mmcmp,mms,mo3,mod,mptm,mt2,mtm,nst,okt,plm,ppm,psm,pt36,ptm,s3m,sfx,sfx2,st26,stk,stm,stp,ult,umx,wow,xm,xpk", -#else - .extensions = "669,amf,ams,dbm,digi,dmf,dsm,far,gdm,ice,imf,it,j2b,m15,mdl,med,mmcmp,mms,mo3,mod,mptm,mt2,mtm,nst,okt,plm,ppm,psm,pt36,ptm,s3m,sfx,sfx2,st26,stk,stm,ult,umx,wow,xm,xpk", -#endif }; diff --git a/libavformat/lmlm4.c b/libavformat/lmlm4.c index b0bfad001b..209b544ccd 100644 --- a/libavformat/lmlm4.c +++ b/libavformat/lmlm4.c @@ -25,6 +25,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define LMLM4_I_FRAME 0x00 @@ -121,9 +122,9 @@ static int lmlm4_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_lmlm4_demuxer = { - .name = "lmlm4", - .long_name = NULL_IF_CONFIG_SMALL("raw lmlm4"), +const FFInputFormat ff_lmlm4_demuxer = { + .p.name = "lmlm4", + .p.long_name = NULL_IF_CONFIG_SMALL("raw lmlm4"), .read_probe = lmlm4_probe, .read_header = lmlm4_read_header, .read_packet = lmlm4_read_packet, diff --git a/libavformat/loasdec.c b/libavformat/loasdec.c index 7b8b2ea4bc..fcb812f5ca 100644 --- a/libavformat/loasdec.c +++ b/libavformat/loasdec.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "rawdec.h" @@ -83,14 +84,14 @@ static int loas_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_loas_demuxer = { - .name = "loas", - .long_name = NULL_IF_CONFIG_SMALL("LOAS AudioSyncStream"), +const FFInputFormat ff_loas_demuxer = { + .p.name = "loas", + .p.long_name = NULL_IF_CONFIG_SMALL("LOAS AudioSyncStream"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &ff_raw_demuxer_class, .read_probe = loas_probe, .read_header = loas_read_header, .read_packet = ff_raw_read_partial_packet, - .flags= AVFMT_GENERIC_INDEX, .raw_codec_id = AV_CODEC_ID_AAC_LATM, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/lrcdec.c b/libavformat/lrcdec.c index f43e9dccf5..216bcc42eb 100644 --- a/libavformat/lrcdec.c +++ b/libavformat/lrcdec.c @@ -24,6 +24,7 @@ #include #include "avformat.h" +#include "demux.h" #include "internal.h" #include "lrc.h" #include "metadata.h" @@ -224,9 +225,9 @@ err_nomem_out: return AVERROR(ENOMEM); } -const AVInputFormat ff_lrc_demuxer = { - .name = "lrc", - .long_name = NULL_IF_CONFIG_SMALL("LRC lyrics"), +const FFInputFormat ff_lrc_demuxer = { + .p.name = "lrc", + .p.long_name = NULL_IF_CONFIG_SMALL("LRC lyrics"), .priv_data_size = sizeof (LRCContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = lrc_probe, diff --git a/libavformat/luodatdec.c b/libavformat/luodatdec.c index fbd621dae6..c166ad71f0 100644 --- a/libavformat/luodatdec.c +++ b/libavformat/luodatdec.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avio_internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int dat_probe(const AVProbeData *p) @@ -115,12 +116,12 @@ static int dat_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_luodat_demuxer = { - .name = "luodat", - .long_name = NULL_IF_CONFIG_SMALL("Video CCTV DAT"), +const FFInputFormat ff_luodat_demuxer = { + .p.name = "luodat", + .p.long_name = NULL_IF_CONFIG_SMALL("Video CCTV DAT"), + .p.extensions = "dat", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = dat_probe, .read_header = dat_read_header, .read_packet = dat_read_packet, - .extensions = "dat", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/lvfdec.c b/libavformat/lvfdec.c index cc1e9be58c..cd013844fb 100644 --- a/libavformat/lvfdec.c +++ b/libavformat/lvfdec.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "riff.h" static int lvf_probe(const AVProbeData *p) @@ -145,12 +146,12 @@ static int lvf_read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR_EOF; } -const AVInputFormat ff_lvf_demuxer = { - .name = "lvf", - .long_name = NULL_IF_CONFIG_SMALL("LVF"), +const FFInputFormat ff_lvf_demuxer = { + .p.name = "lvf", + .p.long_name = NULL_IF_CONFIG_SMALL("LVF"), + .p.extensions = "lvf", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = lvf_probe, .read_header = lvf_read_header, .read_packet = lvf_read_packet, - .extensions = "lvf", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/lxfdec.c b/libavformat/lxfdec.c index 8003ae98b7..00a7813984 100644 --- a/libavformat/lxfdec.c +++ b/libavformat/lxfdec.c @@ -335,12 +335,12 @@ static int lxf_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_lxf_demuxer = { - .name = "lxf", - .long_name = NULL_IF_CONFIG_SMALL("VR native stream (LXF)"), +const FFInputFormat ff_lxf_demuxer = { + .p.name = "lxf", + .p.long_name = NULL_IF_CONFIG_SMALL("VR native stream (LXF)"), + .p.codec_tag = (const AVCodecTag* const []){lxf_tags, 0}, .priv_data_size = sizeof(LXFDemuxContext), .read_probe = lxf_probe, .read_header = lxf_read_header, .read_packet = lxf_read_packet, - .codec_tag = (const AVCodecTag* const []){lxf_tags, 0}, }; diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 8f000f86be..75768d429b 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -4777,10 +4777,10 @@ static const AVClass webm_dash_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_webm_dash_manifest_demuxer = { - .name = "webm_dash_manifest", - .long_name = NULL_IF_CONFIG_SMALL("WebM DASH Manifest"), - .priv_class = &webm_dash_class, +const FFInputFormat ff_webm_dash_manifest_demuxer = { + .p.name = "webm_dash_manifest", + .p.long_name = NULL_IF_CONFIG_SMALL("WebM DASH Manifest"), + .p.priv_class = &webm_dash_class, .priv_data_size = sizeof(MatroskaDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_header = webm_dash_manifest_read_header, @@ -4789,10 +4789,11 @@ const AVInputFormat ff_webm_dash_manifest_demuxer = { }; #endif -const AVInputFormat ff_matroska_demuxer = { - .name = "matroska,webm", - .long_name = NULL_IF_CONFIG_SMALL("Matroska / WebM"), - .extensions = "mkv,mk3d,mka,mks,webm", +const FFInputFormat ff_matroska_demuxer = { + .p.name = "matroska,webm", + .p.long_name = NULL_IF_CONFIG_SMALL("Matroska / WebM"), + .p.extensions = "mkv,mk3d,mka,mks,webm", + .p.mime_type = "audio/webm,audio/x-matroska,video/webm,video/x-matroska", .priv_data_size = sizeof(MatroskaDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = matroska_probe, @@ -4800,5 +4801,4 @@ const AVInputFormat ff_matroska_demuxer = { .read_packet = matroska_read_packet, .read_close = matroska_read_close, .read_seek = matroska_read_seek, - .mime_type = "audio/webm,audio/x-matroska,video/webm,video/x-matroska" }; diff --git a/libavformat/mca.c b/libavformat/mca.c index 74654c3b39..e707de3c3b 100644 --- a/libavformat/mca.c +++ b/libavformat/mca.c @@ -218,13 +218,13 @@ static int read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_mca_demuxer = { - .name = "mca", - .long_name = NULL_IF_CONFIG_SMALL("MCA Audio Format"), +const FFInputFormat ff_mca_demuxer = { + .p.name = "mca", + .p.long_name = NULL_IF_CONFIG_SMALL("MCA Audio Format"), + .p.extensions = "mca", .priv_data_size = sizeof(MCADemuxContext), .read_probe = probe, .read_header = read_header, .read_packet = read_packet, .read_seek = read_seek, - .extensions = "mca", }; diff --git a/libavformat/mccdec.c b/libavformat/mccdec.c index 8c36b27f12..d20724b879 100644 --- a/libavformat/mccdec.c +++ b/libavformat/mccdec.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/avstring.h" @@ -200,14 +201,14 @@ static int mcc_read_header(AVFormatContext *s) return ret; } -const AVInputFormat ff_mcc_demuxer = { - .name = "mcc", - .long_name = NULL_IF_CONFIG_SMALL("MacCaption"), +const FFInputFormat ff_mcc_demuxer = { + .p.name = "mcc", + .p.long_name = NULL_IF_CONFIG_SMALL("MacCaption"), + .p.extensions = "mcc", .priv_data_size = sizeof(MCCContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = mcc_probe, .read_header = mcc_read_header, - .extensions = "mcc", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/mgsts.c b/libavformat/mgsts.c index b5c704829d..07ea66163c 100644 --- a/libavformat/mgsts.c +++ b/libavformat/mgsts.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/intfloat.h" #include "avformat.h" +#include "demux.h" #include "riff.h" static int read_probe(const AVProbeData *p) @@ -96,11 +97,11 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_mgsts_demuxer = { - .name = "mgsts", - .long_name = NULL_IF_CONFIG_SMALL("Metal Gear Solid: The Twin Snakes"), +const FFInputFormat ff_mgsts_demuxer = { + .p.name = "mgsts", + .p.long_name = NULL_IF_CONFIG_SMALL("Metal Gear Solid: The Twin Snakes"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = read_probe, .read_header = read_header, .read_packet = read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/microdvddec.c b/libavformat/microdvddec.c index e536d12b85..8660c43ef9 100644 --- a/libavformat/microdvddec.c +++ b/libavformat/microdvddec.c @@ -21,6 +21,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/intreadwrite.h" @@ -198,9 +199,10 @@ static const AVClass microdvd_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_microdvd_demuxer = { - .name = "microdvd", - .long_name = NULL_IF_CONFIG_SMALL("MicroDVD subtitle format"), +const FFInputFormat ff_microdvd_demuxer = { + .p.name = "microdvd", + .p.long_name = NULL_IF_CONFIG_SMALL("MicroDVD subtitle format"), + .p.priv_class = µdvd_class, .priv_data_size = sizeof(MicroDVDContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = microdvd_probe, @@ -208,5 +210,4 @@ const AVInputFormat ff_microdvd_demuxer = { .read_packet = microdvd_read_packet, .read_seek2 = microdvd_read_seek, .read_close = microdvd_read_close, - .priv_class = µdvd_class, }; diff --git a/libavformat/mlpdec.c b/libavformat/mlpdec.c index f4fed65851..4927f9d351 100644 --- a/libavformat/mlpdec.c +++ b/libavformat/mlpdec.c @@ -25,6 +25,7 @@ #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "rawdec.h" #include "libavutil/intreadwrite.h" @@ -95,17 +96,17 @@ static int mlp_probe(const AVProbeData *p) return mlp_thd_probe(p, 0xf8726fbb); } -const AVInputFormat ff_mlp_demuxer = { - .name = "mlp", - .long_name = NULL_IF_CONFIG_SMALL("raw MLP"), +const FFInputFormat ff_mlp_demuxer = { + .p.name = "mlp", + .p.long_name = NULL_IF_CONFIG_SMALL("raw MLP"), + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, + .p.extensions = "mlp", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = mlp_probe, .read_header = mlp_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, - .extensions = "mlp", .raw_codec_id = AV_CODEC_ID_MLP, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; #endif @@ -115,16 +116,16 @@ static int thd_probe(const AVProbeData *p) return mlp_thd_probe(p, 0xf8726fba); } -const AVInputFormat ff_truehd_demuxer = { - .name = "truehd", - .long_name = NULL_IF_CONFIG_SMALL("raw TrueHD"), +const FFInputFormat ff_truehd_demuxer = { + .p.name = "truehd", + .p.long_name = NULL_IF_CONFIG_SMALL("raw TrueHD"), + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, + .p.extensions = "thd", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = thd_probe, .read_header = mlp_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX | AVFMT_NOTIMESTAMPS, - .extensions = "thd", .raw_codec_id = AV_CODEC_ID_TRUEHD, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; #endif diff --git a/libavformat/mlvdec.c b/libavformat/mlvdec.c index b706898cb3..b969a45550 100644 --- a/libavformat/mlvdec.c +++ b/libavformat/mlvdec.c @@ -488,9 +488,9 @@ static int read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_mlv_demuxer = { - .name = "mlv", - .long_name = NULL_IF_CONFIG_SMALL("Magic Lantern Video (MLV)"), +const FFInputFormat ff_mlv_demuxer = { + .p.name = "mlv", + .p.long_name = NULL_IF_CONFIG_SMALL("Magic Lantern Video (MLV)"), .priv_data_size = sizeof(MlvContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = probe, diff --git a/libavformat/mm.c b/libavformat/mm.c index 1d44f41a94..23c025d852 100644 --- a/libavformat/mm.c +++ b/libavformat/mm.c @@ -34,6 +34,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define MM_PREAMBLE_SIZE 6 @@ -189,9 +190,9 @@ static int read_packet(AVFormatContext *s, } } -const AVInputFormat ff_mm_demuxer = { - .name = "mm", - .long_name = NULL_IF_CONFIG_SMALL("American Laser Games MM"), +const FFInputFormat ff_mm_demuxer = { + .p.name = "mm", + .p.long_name = NULL_IF_CONFIG_SMALL("American Laser Games MM"), .priv_data_size = sizeof(MmDemuxContext), .read_probe = probe, .read_header = read_header, diff --git a/libavformat/mmf.c b/libavformat/mmf.c index 5cac4381f4..b3e257616d 100644 --- a/libavformat/mmf.c +++ b/libavformat/mmf.c @@ -24,6 +24,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "mux.h" #include "pcm.h" @@ -298,14 +299,14 @@ static int mmf_read_packet(AVFormatContext *s, AVPacket *pkt) } #if CONFIG_MMF_DEMUXER -const AVInputFormat ff_mmf_demuxer = { - .name = "mmf", - .long_name = NULL_IF_CONFIG_SMALL("Yamaha SMAF"), +const FFInputFormat ff_mmf_demuxer = { + .p.name = "mmf", + .p.long_name = NULL_IF_CONFIG_SMALL("Yamaha SMAF"), + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(MMFContext), .read_probe = mmf_probe, .read_header = mmf_read_header, .read_packet = mmf_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; #endif diff --git a/libavformat/mods.c b/libavformat/mods.c index 34524a19d8..7f76124821 100644 --- a/libavformat/mods.c +++ b/libavformat/mods.c @@ -24,6 +24,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int mods_probe(const AVProbeData *p) @@ -91,12 +92,12 @@ static int mods_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_mods_demuxer = { - .name = "mods", - .long_name = NULL_IF_CONFIG_SMALL("MobiClip MODS"), +const FFInputFormat ff_mods_demuxer = { + .p.name = "mods", + .p.long_name = NULL_IF_CONFIG_SMALL("MobiClip MODS"), + .p.extensions = "mods", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = mods_probe, .read_header = mods_read_header, .read_packet = mods_read_packet, - .extensions = "mods", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/moflex.c b/libavformat/moflex.c index 2ea7c1f994..44fdaf3269 100644 --- a/libavformat/moflex.c +++ b/libavformat/moflex.c @@ -24,6 +24,7 @@ #include "libavcodec/bytestream.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct BitReader { @@ -371,16 +372,16 @@ static int moflex_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_moflex_demuxer = { - .name = "moflex", - .long_name = NULL_IF_CONFIG_SMALL("MobiClip MOFLEX"), +const FFInputFormat ff_moflex_demuxer = { + .p.name = "moflex", + .p.long_name = NULL_IF_CONFIG_SMALL("MobiClip MOFLEX"), + .p.extensions = "moflex", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(MOFLEXDemuxContext), .read_probe = moflex_probe, .read_header = moflex_read_header, .read_packet = moflex_read_packet, .read_seek = moflex_read_seek, .read_close = moflex_read_close, - .extensions = "moflex", - .flags = AVFMT_GENERIC_INDEX, .flags_internal = FF_FMT_INIT_CLEANUP, }; diff --git a/libavformat/mov.c b/libavformat/mov.c index 42b0135987..f8c0fe9151 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -9641,17 +9641,17 @@ static const AVClass mov_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_mov_demuxer = { - .name = "mov,mp4,m4a,3gp,3g2,mj2", - .long_name = NULL_IF_CONFIG_SMALL("QuickTime / MOV"), - .priv_class = &mov_class, +const FFInputFormat ff_mov_demuxer = { + .p.name = "mov,mp4,m4a,3gp,3g2,mj2", + .p.long_name = NULL_IF_CONFIG_SMALL("QuickTime / MOV"), + .p.priv_class = &mov_class, + .p.extensions = "mov,mp4,m4a,3gp,3g2,mj2,psp,m4b,ism,ismv,isma,f4v,avif,heic,heif", + .p.flags = AVFMT_NO_BYTE_SEEK | AVFMT_SEEK_TO_PTS | AVFMT_SHOW_IDS, .priv_data_size = sizeof(MOVContext), - .extensions = "mov,mp4,m4a,3gp,3g2,mj2,psp,m4b,ism,ismv,isma,f4v,avif,heic,heif", .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = mov_probe, .read_header = mov_read_header, .read_packet = mov_read_packet, .read_close = mov_read_close, .read_seek = mov_read_seek, - .flags = AVFMT_NO_BYTE_SEEK | AVFMT_SEEK_TO_PTS | AVFMT_SHOW_IDS, }; diff --git a/libavformat/mp3dec.c b/libavformat/mp3dec.c index 05c13228bc..ec6cf567bc 100644 --- a/libavformat/mp3dec.c +++ b/libavformat/mp3dec.c @@ -610,15 +610,15 @@ static const AVClass demuxer_class = { .category = AV_CLASS_CATEGORY_DEMUXER, }; -const AVInputFormat ff_mp3_demuxer = { - .name = "mp3", - .long_name = NULL_IF_CONFIG_SMALL("MP2/3 (MPEG audio layer 2/3)"), +const FFInputFormat ff_mp3_demuxer = { + .p.name = "mp3", + .p.long_name = NULL_IF_CONFIG_SMALL("MP2/3 (MPEG audio layer 2/3)"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "mp2,mp3,m2a,mpa", /* XXX: use probe */ + .p.priv_class = &demuxer_class, .read_probe = mp3_read_probe, .read_header = mp3_read_header, .read_packet = mp3_read_packet, .read_seek = mp3_seek, .priv_data_size = sizeof(MP3DecContext), - .flags = AVFMT_GENERIC_INDEX, - .extensions = "mp2,mp3,m2a,mpa", /* XXX: use probe */ - .priv_class = &demuxer_class, }; diff --git a/libavformat/mpc.c b/libavformat/mpc.c index ef16237ab6..89130d5a7e 100644 --- a/libavformat/mpc.c +++ b/libavformat/mpc.c @@ -219,13 +219,13 @@ static int mpc_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp } -const AVInputFormat ff_mpc_demuxer = { - .name = "mpc", - .long_name = NULL_IF_CONFIG_SMALL("Musepack"), +const FFInputFormat ff_mpc_demuxer = { + .p.name = "mpc", + .p.long_name = NULL_IF_CONFIG_SMALL("Musepack"), + .p.extensions = "mpc", .priv_data_size = sizeof(MPCContext), .read_probe = mpc_probe, .read_header = mpc_read_header, .read_packet = mpc_read_packet, .read_seek = mpc_read_seek, - .extensions = "mpc", }; diff --git a/libavformat/mpc8.c b/libavformat/mpc8.c index 95a1529c5d..42a34a3255 100644 --- a/libavformat/mpc8.c +++ b/libavformat/mpc8.c @@ -348,9 +348,9 @@ static int mpc8_read_seek(AVFormatContext *s, int stream_index, int64_t timestam } -const AVInputFormat ff_mpc8_demuxer = { - .name = "mpc8", - .long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"), +const FFInputFormat ff_mpc8_demuxer = { + .p.name = "mpc8", + .p.long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"), .priv_data_size = sizeof(MPCContext), .read_probe = mpc8_probe, .read_header = mpc8_read_header, diff --git a/libavformat/mpeg.c b/libavformat/mpeg.c index a0f2c6da05..8399ad7062 100644 --- a/libavformat/mpeg.c +++ b/libavformat/mpeg.c @@ -692,15 +692,15 @@ static int64_t mpegps_read_dts(AVFormatContext *s, int stream_index, return dts; } -const AVInputFormat ff_mpegps_demuxer = { - .name = "mpeg", - .long_name = NULL_IF_CONFIG_SMALL("MPEG-PS (MPEG-2 Program Stream)"), +const FFInputFormat ff_mpegps_demuxer = { + .p.name = "mpeg", + .p.long_name = NULL_IF_CONFIG_SMALL("MPEG-PS (MPEG-2 Program Stream)"), + .p.flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, .priv_data_size = sizeof(MpegDemuxContext), .read_probe = mpegps_probe, .read_header = mpegps_read_header, .read_packet = mpegps_read_packet, .read_timestamp = mpegps_read_dts, - .flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, }; #if CONFIG_VOBSUB_DEMUXER @@ -1048,9 +1048,12 @@ static const AVClass vobsub_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_vobsub_demuxer = { - .name = "vobsub", - .long_name = NULL_IF_CONFIG_SMALL("VobSub subtitle format"), +const FFInputFormat ff_vobsub_demuxer = { + .p.name = "vobsub", + .p.long_name = NULL_IF_CONFIG_SMALL("VobSub subtitle format"), + .p.flags = AVFMT_SHOW_IDS, + .p.extensions = "idx", + .p.priv_class = &vobsub_demuxer_class, .priv_data_size = sizeof(VobSubDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = vobsub_probe, @@ -1058,8 +1061,5 @@ const AVInputFormat ff_vobsub_demuxer = { .read_packet = vobsub_read_packet, .read_seek2 = vobsub_read_seek, .read_close = vobsub_read_close, - .flags = AVFMT_SHOW_IDS, - .extensions = "idx", - .priv_class = &vobsub_demuxer_class, }; #endif diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 1cf390e98e..401e2cbb78 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -272,7 +272,7 @@ typedef struct PESContext { int merged_st; } PESContext; -extern const AVInputFormat ff_mpegts_demuxer; +extern const FFInputFormat ff_mpegts_demuxer; static struct Program * get_program(MpegTSContext *ts, unsigned int programid) { @@ -3117,7 +3117,7 @@ static int mpegts_read_header(AVFormatContext *s) ts->stream = s; ts->auto_guess = 0; - if (s->iformat == &ff_mpegts_demuxer) { + if (s->iformat == &ff_mpegts_demuxer.p) { /* normal demux */ /* first do a scan to get all the services */ @@ -3425,27 +3425,27 @@ void avpriv_mpegts_parse_close(MpegTSContext *ts) av_free(ts); } -const AVInputFormat ff_mpegts_demuxer = { - .name = "mpegts", - .long_name = NULL_IF_CONFIG_SMALL("MPEG-TS (MPEG-2 Transport Stream)"), +const FFInputFormat ff_mpegts_demuxer = { + .p.name = "mpegts", + .p.long_name = NULL_IF_CONFIG_SMALL("MPEG-TS (MPEG-2 Transport Stream)"), + .p.flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, + .p.priv_class = &mpegts_class, .priv_data_size = sizeof(MpegTSContext), .read_probe = mpegts_probe, .read_header = mpegts_read_header, .read_packet = mpegts_read_packet, .read_close = mpegts_read_close, .read_timestamp = mpegts_get_dts, - .flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, - .priv_class = &mpegts_class, }; -const AVInputFormat ff_mpegtsraw_demuxer = { - .name = "mpegtsraw", - .long_name = NULL_IF_CONFIG_SMALL("raw MPEG-TS (MPEG-2 Transport Stream)"), +const FFInputFormat ff_mpegtsraw_demuxer = { + .p.name = "mpegtsraw", + .p.long_name = NULL_IF_CONFIG_SMALL("raw MPEG-TS (MPEG-2 Transport Stream)"), + .p.flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, + .p.priv_class = &mpegtsraw_class, .priv_data_size = sizeof(MpegTSContext), .read_header = mpegts_read_header, .read_packet = mpegts_raw_read_packet, .read_close = mpegts_read_close, .read_timestamp = mpegts_get_dts, - .flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, - .priv_class = &mpegtsraw_class, }; diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c index 236aed716a..e20c61be9b 100644 --- a/libavformat/mpjpegdec.c +++ b/libavformat/mpjpegdec.c @@ -23,6 +23,7 @@ #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -368,16 +369,16 @@ static const AVClass mpjpeg_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_mpjpeg_demuxer = { - .name = "mpjpeg", - .long_name = NULL_IF_CONFIG_SMALL("MIME multipart JPEG"), - .mime_type = "multipart/x-mixed-replace", - .extensions = "mjpg", +const FFInputFormat ff_mpjpeg_demuxer = { + .p.name = "mpjpeg", + .p.long_name = NULL_IF_CONFIG_SMALL("MIME multipart JPEG"), + .p.mime_type = "multipart/x-mixed-replace", + .p.extensions = "mjpg", + .p.priv_class = &mpjpeg_demuxer_class, + .p.flags = AVFMT_NOTIMESTAMPS, .priv_data_size = sizeof(MPJPEGDemuxContext), .read_probe = mpjpeg_read_probe, .read_header = mpjpeg_read_header, .read_packet = mpjpeg_read_packet, .read_close = mpjpeg_read_close, - .priv_class = &mpjpeg_demuxer_class, - .flags = AVFMT_NOTIMESTAMPS, }; diff --git a/libavformat/mpl2dec.c b/libavformat/mpl2dec.c index 912a707d1a..6c3dba2d8f 100644 --- a/libavformat/mpl2dec.c +++ b/libavformat/mpl2dec.c @@ -26,6 +26,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" @@ -122,14 +123,14 @@ static int mpl2_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_mpl2_demuxer = { - .name = "mpl2", - .long_name = NULL_IF_CONFIG_SMALL("MPL2 subtitles"), +const FFInputFormat ff_mpl2_demuxer = { + .p.name = "mpl2", + .p.long_name = NULL_IF_CONFIG_SMALL("MPL2 subtitles"), + .p.extensions = "txt,mpl2", .priv_data_size = sizeof(MPL2Context), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = mpl2_probe, .read_header = mpl2_read_header, - .extensions = "txt,mpl2", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/mpsubdec.c b/libavformat/mpsubdec.c index 0374563575..b5abe296f1 100644 --- a/libavformat/mpsubdec.c +++ b/libavformat/mpsubdec.c @@ -24,6 +24,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" @@ -170,14 +171,14 @@ end: return res; } -const AVInputFormat ff_mpsub_demuxer = { - .name = "mpsub", - .long_name = NULL_IF_CONFIG_SMALL("MPlayer subtitles"), +const FFInputFormat ff_mpsub_demuxer = { + .p.name = "mpsub", + .p.long_name = NULL_IF_CONFIG_SMALL("MPlayer subtitles"), + .p.extensions = "sub", .priv_data_size = sizeof(MPSubContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = mpsub_probe, .read_header = mpsub_read_header, - .extensions = "sub", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/msf.c b/libavformat/msf.c index 354758971a..37e05b538b 100644 --- a/libavformat/msf.c +++ b/libavformat/msf.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int msf_probe(const AVProbeData *p) @@ -103,11 +104,11 @@ static int msf_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align ? par->block_align : 1024 * par->ch_layout.nb_channels); } -const AVInputFormat ff_msf_demuxer = { - .name = "msf", - .long_name = NULL_IF_CONFIG_SMALL("Sony PS3 MSF"), +const FFInputFormat ff_msf_demuxer = { + .p.name = "msf", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony PS3 MSF"), + .p.extensions = "msf", .read_probe = msf_probe, .read_header = msf_read_header, .read_packet = msf_read_packet, - .extensions = "msf", }; diff --git a/libavformat/msnwc_tcp.c b/libavformat/msnwc_tcp.c index 95d4e2bd33..c0b775e0e5 100644 --- a/libavformat/msnwc_tcp.c +++ b/libavformat/msnwc_tcp.c @@ -20,6 +20,7 @@ #include "libavcodec/bytestream.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define HEADER_SIZE 24 @@ -136,9 +137,9 @@ static int msnwc_tcp_read_packet(AVFormatContext *ctx, AVPacket *pkt) return HEADER_SIZE + size; } -const AVInputFormat ff_msnwc_tcp_demuxer = { - .name = "msnwctcp", - .long_name = NULL_IF_CONFIG_SMALL("MSN TCP Webcam stream"), +const FFInputFormat ff_msnwc_tcp_demuxer = { + .p.name = "msnwctcp", + .p.long_name = NULL_IF_CONFIG_SMALL("MSN TCP Webcam stream"), .read_probe = msnwc_tcp_probe, .read_header = msnwc_tcp_read_header, .read_packet = msnwc_tcp_read_packet, diff --git a/libavformat/mspdec.c b/libavformat/mspdec.c index 44854e99c2..6b3926f4cd 100644 --- a/libavformat/mspdec.c +++ b/libavformat/mspdec.c @@ -27,6 +27,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/imgutils.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct { @@ -106,12 +107,12 @@ static int msp_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_msp_demuxer = { - .name = "msp", - .long_name = NULL_IF_CONFIG_SMALL("Microsoft Paint (MSP))"), +const FFInputFormat ff_msp_demuxer = { + .p.name = "msp", + .p.long_name = NULL_IF_CONFIG_SMALL("Microsoft Paint (MSP))"), + .p.flags = AVFMT_NOTIMESTAMPS, .read_probe = msp_probe, .read_header = msp_read_header, .read_packet = msp_read_packet, - .flags = AVFMT_NOTIMESTAMPS, .priv_data_size = sizeof(MSPContext), }; diff --git a/libavformat/mtaf.c b/libavformat/mtaf.c index 954ffaa8ba..251da54963 100644 --- a/libavformat/mtaf.c +++ b/libavformat/mtaf.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int mtaf_probe(const AVProbeData *p) @@ -71,11 +72,11 @@ static int mtaf_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align); } -const AVInputFormat ff_mtaf_demuxer = { - .name = "mtaf", - .long_name = NULL_IF_CONFIG_SMALL("Konami PS2 MTAF"), +const FFInputFormat ff_mtaf_demuxer = { + .p.name = "mtaf", + .p.long_name = NULL_IF_CONFIG_SMALL("Konami PS2 MTAF"), + .p.extensions = "mtaf", .read_probe = mtaf_probe, .read_header = mtaf_read_header, .read_packet = mtaf_read_packet, - .extensions = "mtaf", }; diff --git a/libavformat/mtv.c b/libavformat/mtv.c index b6ed43d444..9f52cb6c67 100644 --- a/libavformat/mtv.c +++ b/libavformat/mtv.c @@ -27,6 +27,7 @@ #include "libavutil/bswap.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define MTV_ASUBCHUNK_DATA_SIZE 500 @@ -225,9 +226,9 @@ static int mtv_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_mtv_demuxer = { - .name = "mtv", - .long_name = NULL_IF_CONFIG_SMALL("MTV"), +const FFInputFormat ff_mtv_demuxer = { + .p.name = "mtv", + .p.long_name = NULL_IF_CONFIG_SMALL("MTV"), .priv_data_size = sizeof(MTVDemuxContext), .read_probe = mtv_probe, .read_header = mtv_read_header, diff --git a/libavformat/musx.c b/libavformat/musx.c index 5bf793f882..c87ee3c4ec 100644 --- a/libavformat/musx.c +++ b/libavformat/musx.c @@ -22,6 +22,7 @@ #include "libavutil/avassert.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int musx_probe(const AVProbeData *p) @@ -178,11 +179,11 @@ static int musx_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align); } -const AVInputFormat ff_musx_demuxer = { - .name = "musx", - .long_name = NULL_IF_CONFIG_SMALL("Eurocom MUSX"), +const FFInputFormat ff_musx_demuxer = { + .p.name = "musx", + .p.long_name = NULL_IF_CONFIG_SMALL("Eurocom MUSX"), + .p.extensions = "musx", .read_probe = musx_probe, .read_header = musx_read_header, .read_packet = musx_read_packet, - .extensions = "musx", }; diff --git a/libavformat/mvdec.c b/libavformat/mvdec.c index b37fe2ce69..31640f7590 100644 --- a/libavformat/mvdec.c +++ b/libavformat/mvdec.c @@ -31,6 +31,7 @@ #include "libavutil/rational.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct MvContext { @@ -539,9 +540,9 @@ static int mv_read_seek(AVFormatContext *avctx, int stream_index, return 0; } -const AVInputFormat ff_mv_demuxer = { - .name = "mv", - .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Movie"), +const FFInputFormat ff_mv_demuxer = { + .p.name = "mv", + .p.long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Movie"), .priv_data_size = sizeof(MvContext), .read_probe = mv_probe, .read_header = mv_read_header, diff --git a/libavformat/mvi.c b/libavformat/mvi.c index b2d6a92a4b..05aa25f348 100644 --- a/libavformat/mvi.c +++ b/libavformat/mvi.c @@ -23,6 +23,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define MVI_FRAC_BITS 10 @@ -142,11 +143,11 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_mvi_demuxer = { - .name = "mvi", - .long_name = NULL_IF_CONFIG_SMALL("Motion Pixels MVI"), +const FFInputFormat ff_mvi_demuxer = { + .p.name = "mvi", + .p.long_name = NULL_IF_CONFIG_SMALL("Motion Pixels MVI"), + .p.extensions = "mvi", .priv_data_size = sizeof(MviDemuxContext), .read_header = read_header, .read_packet = read_packet, - .extensions = "mvi", }; diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c index e42975e7fd..a0e53b8ef5 100644 --- a/libavformat/mxfdec.c +++ b/libavformat/mxfdec.c @@ -4314,10 +4314,11 @@ static const AVClass demuxer_class = { .category = AV_CLASS_CATEGORY_DEMUXER, }; -const AVInputFormat ff_mxf_demuxer = { - .name = "mxf", - .long_name = NULL_IF_CONFIG_SMALL("MXF (Material eXchange Format)"), - .flags = AVFMT_SEEK_TO_PTS, +const FFInputFormat ff_mxf_demuxer = { + .p.name = "mxf", + .p.long_name = NULL_IF_CONFIG_SMALL("MXF (Material eXchange Format)"), + .p.flags = AVFMT_SEEK_TO_PTS, + .p.priv_class = &demuxer_class, .priv_data_size = sizeof(MXFContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = mxf_probe, @@ -4325,5 +4326,4 @@ const AVInputFormat ff_mxf_demuxer = { .read_packet = mxf_read_packet, .read_close = mxf_read_close, .read_seek = mxf_read_seek, - .priv_class = &demuxer_class, }; diff --git a/libavformat/mxg.c b/libavformat/mxg.c index b160ccb9f9..23d72ad23b 100644 --- a/libavformat/mxg.c +++ b/libavformat/mxg.c @@ -24,6 +24,7 @@ #include "libavutil/intreadwrite.h" #include "libavcodec/mjpeg.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio.h" @@ -248,12 +249,12 @@ static int mxg_close(struct AVFormatContext *s) return 0; } -const AVInputFormat ff_mxg_demuxer = { - .name = "mxg", - .long_name = NULL_IF_CONFIG_SMALL("MxPEG clip"), +const FFInputFormat ff_mxg_demuxer = { + .p.name = "mxg", + .p.long_name = NULL_IF_CONFIG_SMALL("MxPEG clip"), + .p.extensions = "mxg", .priv_data_size = sizeof(MXGContext), .read_header = mxg_read_header, .read_packet = mxg_read_packet, .read_close = mxg_close, - .extensions = "mxg", }; diff --git a/libavformat/ncdec.c b/libavformat/ncdec.c index b2f4dfe282..050d98bf5d 100644 --- a/libavformat/ncdec.c +++ b/libavformat/ncdec.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define NC_VIDEO_FLAG 0x1A5 @@ -90,11 +91,11 @@ static int nc_read_packet(AVFormatContext *s, AVPacket *pkt) return size; } -const AVInputFormat ff_nc_demuxer = { - .name = "nc", - .long_name = NULL_IF_CONFIG_SMALL("NC camera feed"), +const FFInputFormat ff_nc_demuxer = { + .p.name = "nc", + .p.long_name = NULL_IF_CONFIG_SMALL("NC camera feed"), + .p.extensions = "v", .read_probe = nc_probe, .read_header = nc_read_header, .read_packet = nc_read_packet, - .extensions = "v", }; diff --git a/libavformat/nistspheredec.c b/libavformat/nistspheredec.c index 85aa5e2cbf..1e6c567e01 100644 --- a/libavformat/nistspheredec.c +++ b/libavformat/nistspheredec.c @@ -22,6 +22,7 @@ #include "libavutil/avstring.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -133,13 +134,13 @@ static int nist_read_header(AVFormatContext *s) return AVERROR_EOF; } -const AVInputFormat ff_nistsphere_demuxer = { - .name = "nistsphere", - .long_name = NULL_IF_CONFIG_SMALL("NIST SPeech HEader REsources"), +const FFInputFormat ff_nistsphere_demuxer = { + .p.name = "nistsphere", + .p.long_name = NULL_IF_CONFIG_SMALL("NIST SPeech HEader REsources"), + .p.extensions = "nist,sph", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = nist_probe, .read_header = nist_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "nist,sph", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/nspdec.c b/libavformat/nspdec.c index 923432ac92..bb605426f6 100644 --- a/libavformat/nspdec.c +++ b/libavformat/nspdec.c @@ -22,6 +22,7 @@ #include "libavutil/avstring.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -96,13 +97,13 @@ static int nsp_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_nsp_demuxer = { - .name = "nsp", - .long_name = NULL_IF_CONFIG_SMALL("Computerized Speech Lab NSP"), +const FFInputFormat ff_nsp_demuxer = { + .p.name = "nsp", + .p.long_name = NULL_IF_CONFIG_SMALL("Computerized Speech Lab NSP"), + .p.extensions = "nsp", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = nsp_probe, .read_header = nsp_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "nsp", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/nsvdec.c b/libavformat/nsvdec.c index b28576ea11..d6a39730cc 100644 --- a/libavformat/nsvdec.c +++ b/libavformat/nsvdec.c @@ -24,6 +24,7 @@ #include "libavutil/attributes.h" #include "libavutil/mathematics.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/dict.h" #include "libavutil/intreadwrite.h" @@ -747,9 +748,9 @@ static int nsv_probe(const AVProbeData *p) return score; } -const AVInputFormat ff_nsv_demuxer = { - .name = "nsv", - .long_name = NULL_IF_CONFIG_SMALL("Nullsoft Streaming Video"), +const FFInputFormat ff_nsv_demuxer = { + .p.name = "nsv", + .p.long_name = NULL_IF_CONFIG_SMALL("Nullsoft Streaming Video"), .priv_data_size = sizeof(NSVContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = nsv_probe, diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c index e2b39ccffb..670964fab3 100644 --- a/libavformat/nutdec.c +++ b/libavformat/nutdec.c @@ -1306,10 +1306,12 @@ static int read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_nut_demuxer = { - .name = "nut", - .long_name = NULL_IF_CONFIG_SMALL("NUT"), - .flags = AVFMT_SEEK_TO_PTS, +const FFInputFormat ff_nut_demuxer = { + .p.name = "nut", + .p.long_name = NULL_IF_CONFIG_SMALL("NUT"), + .p.flags = AVFMT_SEEK_TO_PTS, + .p.extensions = "nut", + .p.codec_tag = ff_nut_codec_tags, .priv_data_size = sizeof(NUTContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = nut_probe, @@ -1317,6 +1319,4 @@ const AVInputFormat ff_nut_demuxer = { .read_packet = nut_read_packet, .read_close = nut_read_close, .read_seek = read_seek, - .extensions = "nut", - .codec_tag = ff_nut_codec_tags, }; diff --git a/libavformat/nuv.c b/libavformat/nuv.c index 12c6c691ee..507a73b0fe 100644 --- a/libavformat/nuv.c +++ b/libavformat/nuv.c @@ -396,13 +396,13 @@ static int64_t nuv_read_dts(AVFormatContext *s, int stream_index, } -const AVInputFormat ff_nuv_demuxer = { - .name = "nuv", - .long_name = NULL_IF_CONFIG_SMALL("NuppelVideo"), +const FFInputFormat ff_nuv_demuxer = { + .p.name = "nuv", + .p.long_name = NULL_IF_CONFIG_SMALL("NuppelVideo"), + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(NUVContext), .read_probe = nuv_probe, .read_header = nuv_header, .read_packet = nuv_packet, .read_timestamp = nuv_read_dts, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/oggdec.c b/libavformat/oggdec.c index 3b19e0bd89..e473683aeb 100644 --- a/libavformat/oggdec.c +++ b/libavformat/oggdec.c @@ -960,9 +960,11 @@ static int ogg_probe(const AVProbeData *p) return 0; } -const AVInputFormat ff_ogg_demuxer = { - .name = "ogg", - .long_name = NULL_IF_CONFIG_SMALL("Ogg"), +const FFInputFormat ff_ogg_demuxer = { + .p.name = "ogg", + .p.long_name = NULL_IF_CONFIG_SMALL("Ogg"), + .p.extensions = "ogg", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_TS_DISCONT | AVFMT_NOBINSEARCH, .priv_data_size = sizeof(struct ogg), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = ogg_probe, @@ -971,6 +973,4 @@ const AVInputFormat ff_ogg_demuxer = { .read_close = ogg_read_close, .read_seek = ogg_read_seek, .read_timestamp = ogg_read_timestamp, - .extensions = "ogg", - .flags = AVFMT_GENERIC_INDEX | AVFMT_TS_DISCONT | AVFMT_NOBINSEARCH, }; diff --git a/libavformat/omadec.c b/libavformat/omadec.c index 066b2d85bd..f4bd6fb964 100644 --- a/libavformat/omadec.c +++ b/libavformat/omadec.c @@ -44,6 +44,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/intreadwrite.h" #include "libavutil/des.h" @@ -607,9 +608,12 @@ wipe: return err; } -const AVInputFormat ff_oma_demuxer = { - .name = "oma", - .long_name = NULL_IF_CONFIG_SMALL("Sony OpenMG audio"), +const FFInputFormat ff_oma_demuxer = { + .p.name = "oma", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony OpenMG audio"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "oma,omg,aa3", + .p.codec_tag = ff_oma_codec_tags_list, .priv_data_size = sizeof(OMAContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = oma_read_probe, @@ -617,7 +621,4 @@ const AVInputFormat ff_oma_demuxer = { .read_packet = oma_read_packet, .read_seek = oma_read_seek, .read_close = oma_read_close, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "oma,omg,aa3", - .codec_tag = ff_oma_codec_tags_list, }; diff --git a/libavformat/osq.c b/libavformat/osq.c index c5a63d3398..9e9dbfdbe1 100644 --- a/libavformat/osq.c +++ b/libavformat/osq.c @@ -104,15 +104,15 @@ static int osq_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_osq_demuxer = { - .name = "osq", - .long_name = NULL_IF_CONFIG_SMALL("raw OSQ"), +const FFInputFormat ff_osq_demuxer = { + .p.name = "osq", + .p.long_name = NULL_IF_CONFIG_SMALL("raw OSQ"), + .p.extensions = "osq", + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, + .p.priv_class = &ff_raw_demuxer_class, .read_probe = osq_probe, .read_header = osq_read_header, .read_packet = ff_raw_read_partial_packet, - .extensions = "osq", - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, .raw_codec_id = AV_CODEC_ID_OSQ, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/paf.c b/libavformat/paf.c index d48cf57645..c99acbd3e7 100644 --- a/libavformat/paf.c +++ b/libavformat/paf.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavcodec/paf.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define MAGIC "Packed Animation File V1.0\n(c) 1992-96 Amazing Studio\x0a\x1a" @@ -265,9 +266,9 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) return pkt->size; } -const AVInputFormat ff_paf_demuxer = { - .name = "paf", - .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File"), +const FFInputFormat ff_paf_demuxer = { + .p.name = "paf", + .p.long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File"), .priv_data_size = sizeof(PAFDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = read_probe, diff --git a/libavformat/pcmdec.c b/libavformat/pcmdec.c index 377e6d80a1..e9c97f7959 100644 --- a/libavformat/pcmdec.c +++ b/libavformat/pcmdec.c @@ -24,6 +24,7 @@ #include "libavutil/avstring.h" #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" #include "libavutil/log.h" @@ -50,7 +51,7 @@ static int pcm_read_header(AVFormatContext *s) par = st->codecpar; par->codec_type = AVMEDIA_TYPE_AUDIO; - par->codec_id = s->iformat->raw_codec_id; + par->codec_id = ffifmt(s->iformat)->raw_codec_id; par->sample_rate = s1->sample_rate; ret = av_channel_layout_copy(&par->ch_layout, &s1->ch_layout); if (ret < 0) @@ -116,17 +117,17 @@ static const AVClass pcm_demuxer_class = { #define PCMDEF_0(name_, long_name_, ext, codec, ...) #define PCMDEF_1(name_, long_name_, ext, codec, ...) \ -const AVInputFormat ff_pcm_ ## name_ ## _demuxer = { \ - .name = #name_, \ - .long_name = NULL_IF_CONFIG_SMALL(long_name_), \ +const FFInputFormat ff_pcm_ ## name_ ## _demuxer = { \ + .p.name = #name_, \ + .p.long_name = NULL_IF_CONFIG_SMALL(long_name_), \ + .p.flags = AVFMT_GENERIC_INDEX, \ + .p.extensions = ext, \ + .p.priv_class = &pcm_demuxer_class, \ .priv_data_size = sizeof(PCMAudioDemuxerContext), \ .read_header = pcm_read_header, \ .read_packet = ff_pcm_read_packet, \ .read_seek = ff_pcm_read_seek, \ - .flags = AVFMT_GENERIC_INDEX, \ - .extensions = ext, \ .raw_codec_id = codec, \ - .priv_class = &pcm_demuxer_class, \ __VA_ARGS__ \ }; #define PCMDEF_2(name, long_name, ext, codec, enabled, ...) \ @@ -148,7 +149,7 @@ PCMDEF(s32le, "PCM signed 32-bit little-endian", NULL, S32LE) PCMDEF(s24be, "PCM signed 24-bit big-endian", NULL, S24BE) PCMDEF(s24le, "PCM signed 24-bit little-endian", NULL, S24LE) PCMDEF_EXT(s16be, "PCM signed 16-bit big-endian", - AV_NE("sw", NULL), S16BE, .mime_type = "audio/L16") + AV_NE("sw", NULL), S16BE, .p.mime_type = "audio/L16") PCMDEF(s16le, "PCM signed 16-bit little-endian", AV_NE(NULL, "sw"), S16LE) PCMDEF(s8, "PCM signed 8-bit", "sb", S8) PCMDEF(u32be, "PCM unsigned 32-bit big-endian", NULL, U32BE) @@ -176,16 +177,16 @@ static const AVClass sln_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_sln_demuxer = { - .name = "sln", - .long_name = NULL_IF_CONFIG_SMALL("Asterisk raw pcm"), +const FFInputFormat ff_sln_demuxer = { + .p.name = "sln", + .p.long_name = NULL_IF_CONFIG_SMALL("Asterisk raw pcm"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "sln", + .p.priv_class = &sln_demuxer_class, .priv_data_size = sizeof(PCMAudioDemuxerContext), .read_header = pcm_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "sln", .raw_codec_id = AV_CODEC_ID_PCM_S16LE, - .priv_class = &sln_demuxer_class, }; #endif diff --git a/libavformat/pdvdec.c b/libavformat/pdvdec.c index 9d3f386e40..79e09bd9d4 100644 --- a/libavformat/pdvdec.c +++ b/libavformat/pdvdec.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #define PDV_MAGIC "Playdate VID\x00\x00\x00\x00" @@ -159,9 +160,10 @@ static int pdv_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp return 0; } -const AVInputFormat ff_pdv_demuxer = { - .name = "pdv", - .long_name = NULL_IF_CONFIG_SMALL("PlayDate Video"), +const FFInputFormat ff_pdv_demuxer = { + .p.name = "pdv", + .p.long_name = NULL_IF_CONFIG_SMALL("PlayDate Video"), + .p.extensions = "pdv", .priv_data_size = sizeof(PDVDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = pdv_probe, @@ -169,5 +171,4 @@ const AVInputFormat ff_pdv_demuxer = { .read_packet = pdv_read_packet, .read_close = pdv_read_close, .read_seek = pdv_read_seek, - .extensions = "pdv", }; diff --git a/libavformat/pjsdec.c b/libavformat/pjsdec.c index 5b2111f726..22ddea3596 100644 --- a/libavformat/pjsdec.c +++ b/libavformat/pjsdec.c @@ -26,6 +26,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" @@ -105,14 +106,14 @@ static int pjs_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_pjs_demuxer = { - .name = "pjs", - .long_name = NULL_IF_CONFIG_SMALL("PJS (Phoenix Japanimation Society) subtitles"), +const FFInputFormat ff_pjs_demuxer = { + .p.name = "pjs", + .p.long_name = NULL_IF_CONFIG_SMALL("PJS (Phoenix Japanimation Society) subtitles"), + .p.extensions = "pjs", .priv_data_size = sizeof(PJSContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = pjs_probe, .read_header = pjs_read_header, - .extensions = "pjs", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/pmpdec.c b/libavformat/pmpdec.c index 554f1a776d..06ef53d277 100644 --- a/libavformat/pmpdec.c +++ b/libavformat/pmpdec.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct { @@ -183,9 +184,9 @@ static int pmp_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_pmp_demuxer = { - .name = "pmp", - .long_name = NULL_IF_CONFIG_SMALL("Playstation Portable PMP"), +const FFInputFormat ff_pmp_demuxer = { + .p.name = "pmp", + .p.long_name = NULL_IF_CONFIG_SMALL("Playstation Portable PMP"), .priv_data_size = sizeof(PMPContext), .read_probe = pmp_probe, .read_header = pmp_header, diff --git a/libavformat/pp_bnk.c b/libavformat/pp_bnk.c index c4172e2260..d545694bef 100644 --- a/libavformat/pp_bnk.c +++ b/libavformat/pp_bnk.c @@ -20,6 +20,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/intreadwrite.h" #include "libavutil/avassert.h" @@ -315,9 +316,9 @@ static int pp_bnk_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_pp_bnk_demuxer = { - .name = "pp_bnk", - .long_name = NULL_IF_CONFIG_SMALL("Pro Pinball Series Soundbank"), +const FFInputFormat ff_pp_bnk_demuxer = { + .p.name = "pp_bnk", + .p.long_name = NULL_IF_CONFIG_SMALL("Pro Pinball Series Soundbank"), .priv_data_size = sizeof(PPBnkCtx), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = pp_bnk_probe, diff --git a/libavformat/psxstr.c b/libavformat/psxstr.c index 009699e288..0dd4e8d377 100644 --- a/libavformat/psxstr.c +++ b/libavformat/psxstr.c @@ -33,6 +33,7 @@ #include "libavutil/internal.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define RIFF_TAG MKTAG('R', 'I', 'F', 'F') @@ -302,13 +303,13 @@ static int str_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_str_demuxer = { - .name = "psxstr", - .long_name = NULL_IF_CONFIG_SMALL("Sony Playstation STR"), +const FFInputFormat ff_str_demuxer = { + .p.name = "psxstr", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony Playstation STR"), + .p.flags = AVFMT_NO_BYTE_SEEK, .priv_data_size = sizeof(StrDemuxContext), .read_probe = str_probe, .read_header = str_read_header, .read_packet = str_read_packet, .read_close = str_read_close, - .flags = AVFMT_NO_BYTE_SEEK, }; diff --git a/libavformat/pva.c b/libavformat/pva.c index da54b30bfc..047c93c9c4 100644 --- a/libavformat/pva.c +++ b/libavformat/pva.c @@ -21,6 +21,7 @@ #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "mpeg.h" @@ -228,9 +229,9 @@ static int64_t pva_read_timestamp(struct AVFormatContext *s, int stream_index, return res; } -const AVInputFormat ff_pva_demuxer = { - .name = "pva", - .long_name = NULL_IF_CONFIG_SMALL("TechnoTrend PVA"), +const FFInputFormat ff_pva_demuxer = { + .p.name = "pva", + .p.long_name = NULL_IF_CONFIG_SMALL("TechnoTrend PVA"), .priv_data_size = sizeof(PVAContext), .read_probe = pva_probe, .read_header = pva_read_header, diff --git a/libavformat/pvfdec.c b/libavformat/pvfdec.c index 62c169a314..aaf60a853e 100644 --- a/libavformat/pvfdec.c +++ b/libavformat/pvfdec.c @@ -21,6 +21,7 @@ #include "libavcodec/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -65,13 +66,13 @@ static int pvf_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_pvf_demuxer = { - .name = "pvf", - .long_name = NULL_IF_CONFIG_SMALL("PVF (Portable Voice Format)"), +const FFInputFormat ff_pvf_demuxer = { + .p.name = "pvf", + .p.long_name = NULL_IF_CONFIG_SMALL("PVF (Portable Voice Format)"), + .p.extensions = "pvf", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = pvf_probe, .read_header = pvf_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "pvf", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/qcp.c b/libavformat/qcp.c index 8d80b726a5..fdf18618d2 100644 --- a/libavformat/qcp.c +++ b/libavformat/qcp.c @@ -30,6 +30,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "riff.h" typedef struct QCPContext { @@ -195,9 +196,9 @@ static int qcp_read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR_EOF; } -const AVInputFormat ff_qcp_demuxer = { - .name = "qcp", - .long_name = NULL_IF_CONFIG_SMALL("QCP"), +const FFInputFormat ff_qcp_demuxer = { + .p.name = "qcp", + .p.long_name = NULL_IF_CONFIG_SMALL("QCP"), .priv_data_size = sizeof(QCPContext), .read_probe = qcp_probe, .read_header = qcp_read_header, diff --git a/libavformat/qoadec.c b/libavformat/qoadec.c index acf7c02741..9cce5157fc 100644 --- a/libavformat/qoadec.c +++ b/libavformat/qoadec.c @@ -20,6 +20,7 @@ #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "libavutil/intreadwrite.h" @@ -99,12 +100,12 @@ static int qoa_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_qoa_demuxer = { - .name = "qoa", - .long_name = NULL_IF_CONFIG_SMALL("QOA"), +const FFInputFormat ff_qoa_demuxer = { + .p.name = "qoa", + .p.long_name = NULL_IF_CONFIG_SMALL("QOA"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "qoa", .read_probe = qoa_probe, .read_header = qoa_read_header, .read_packet = qoa_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "qoa", }; diff --git a/libavformat/r3d.c b/libavformat/r3d.c index be119b6b74..c83399b8fc 100644 --- a/libavformat/r3d.c +++ b/libavformat/r3d.c @@ -23,6 +23,7 @@ #include "libavutil/dict.h" #include "libavutil/mathematics.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct R3DContext { @@ -401,9 +402,9 @@ static int r3d_seek(AVFormatContext *s, int stream_index, int64_t sample_time, i return 0; } -const AVInputFormat ff_r3d_demuxer = { - .name = "r3d", - .long_name = NULL_IF_CONFIG_SMALL("REDCODE R3D"), +const FFInputFormat ff_r3d_demuxer = { + .p.name = "r3d", + .p.long_name = NULL_IF_CONFIG_SMALL("REDCODE R3D"), .priv_data_size = sizeof(R3DContext), .read_probe = r3d_probe, .read_header = r3d_read_header, diff --git a/libavformat/rawdec.c b/libavformat/rawdec.c index 1dd7fafcf0..d0c829dc42 100644 --- a/libavformat/rawdec.c +++ b/libavformat/rawdec.c @@ -23,6 +23,7 @@ #include "config_components.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "rawdec.h" #include "libavutil/opt.h" @@ -56,7 +57,7 @@ int ff_raw_audio_read_header(AVFormatContext *s) if (!st) return AVERROR(ENOMEM); st->codecpar->codec_type = AVMEDIA_TYPE_AUDIO; - st->codecpar->codec_id = s->iformat->raw_codec_id; + st->codecpar->codec_id = ffifmt(s->iformat)->raw_codec_id; ffstream(st)->need_parsing = AVSTREAM_PARSE_FULL_RAW; st->start_time = 0; /* the parameters will be extracted from the compressed bitstream */ @@ -81,7 +82,7 @@ int ff_raw_video_read_header(AVFormatContext *s) sti = ffstream(st); st->codecpar->codec_type = AVMEDIA_TYPE_VIDEO; - st->codecpar->codec_id = s->iformat->raw_codec_id; + st->codecpar->codec_id = ffifmt(s->iformat)->raw_codec_id; sti->need_parsing = AVSTREAM_PARSE_FULL_RAW; st->avg_frame_rate = s1->framerate; @@ -97,7 +98,7 @@ int ff_raw_subtitle_read_header(AVFormatContext *s) if (!st) return AVERROR(ENOMEM); st->codecpar->codec_type = AVMEDIA_TYPE_SUBTITLE; - st->codecpar->codec_id = s->iformat->raw_codec_id; + st->codecpar->codec_id = ffifmt(s->iformat)->raw_codec_id; st->start_time = 0; return 0; } @@ -108,7 +109,7 @@ static int raw_data_read_header(AVFormatContext *s) if (!st) return AVERROR(ENOMEM); st->codecpar->codec_type = AVMEDIA_TYPE_DATA; - st->codecpar->codec_id = s->iformat->raw_codec_id; + st->codecpar->codec_id = ffifmt(s->iformat)->raw_codec_id; st->start_time = 0; return 0; } @@ -145,15 +146,15 @@ const AVClass ff_raw_demuxer_class = { }; #if CONFIG_DATA_DEMUXER -const AVInputFormat ff_data_demuxer = { - .name = "data", - .long_name = NULL_IF_CONFIG_SMALL("raw data"), +const FFInputFormat ff_data_demuxer = { + .p.name = "data", + .p.long_name = NULL_IF_CONFIG_SMALL("raw data"), + .p.flags = AVFMT_NOTIMESTAMPS, + .p.priv_class = &ff_raw_demuxer_class, .read_header = raw_data_read_header, .read_packet = ff_raw_read_partial_packet, .raw_codec_id = AV_CODEC_ID_NONE, - .flags = AVFMT_NOTIMESTAMPS, .priv_data_size = sizeof(FFRawDemuxerContext),\ - .priv_class = &ff_raw_demuxer_class, }; #endif diff --git a/libavformat/rawdec.h b/libavformat/rawdec.h index 91d0b659af..2773b1a72b 100644 --- a/libavformat/rawdec.h +++ b/libavformat/rawdec.h @@ -23,6 +23,7 @@ #define AVFORMAT_RAWDEC_H #include "avformat.h" +#include "demux.h" #include "libavutil/log.h" typedef struct FFRawVideoDemuxerContext { @@ -50,34 +51,34 @@ int ff_raw_video_read_header(AVFormatContext *s); int ff_raw_subtitle_read_header(AVFormatContext *s); #define FF_DEF_RAWVIDEO_DEMUXER2(shortname, longname, probe, ext, id, flag)\ -const AVInputFormat ff_ ## shortname ## _demuxer = {\ - .name = #shortname,\ - .long_name = NULL_IF_CONFIG_SMALL(longname),\ +const FFInputFormat ff_ ## shortname ## _demuxer = {\ + .p.name = #shortname,\ + .p.long_name = NULL_IF_CONFIG_SMALL(longname),\ + .p.extensions = ext,\ + .p.flags = flag | AVFMT_NOTIMESTAMPS,\ + .p.priv_class = &ff_rawvideo_demuxer_class,\ .read_probe = probe,\ .read_header = ff_raw_video_read_header,\ .read_packet = ff_raw_read_partial_packet,\ - .extensions = ext,\ - .flags = flag | AVFMT_NOTIMESTAMPS,\ .raw_codec_id = id,\ .priv_data_size = sizeof(FFRawVideoDemuxerContext),\ - .priv_class = &ff_rawvideo_demuxer_class,\ }; #define FF_DEF_RAWVIDEO_DEMUXER(shortname, longname, probe, ext, id)\ FF_DEF_RAWVIDEO_DEMUXER2(shortname, longname, probe, ext, id, AVFMT_GENERIC_INDEX) #define FF_DEF_RAWSUB_DEMUXER(shortname, longname, probe, ext, id, flag)\ -const AVInputFormat ff_ ## shortname ## _demuxer = {\ - .name = #shortname,\ - .long_name = NULL_IF_CONFIG_SMALL(longname),\ +const FFInputFormat ff_ ## shortname ## _demuxer = {\ + .p.name = #shortname,\ + .p.long_name = NULL_IF_CONFIG_SMALL(longname),\ + .p.extensions = ext,\ + .p.flags = flag,\ + .p.priv_class = &ff_raw_demuxer_class,\ .read_probe = probe,\ .read_header = ff_raw_subtitle_read_header,\ .read_packet = ff_raw_read_partial_packet,\ - .extensions = ext,\ - .flags = flag,\ .raw_codec_id = id,\ .priv_data_size = sizeof(FFRawDemuxerContext),\ - .priv_class = &ff_raw_demuxer_class,\ }; #endif /* AVFORMAT_RAWDEC_H */ diff --git a/libavformat/rawvideodec.c b/libavformat/rawvideodec.c index 514e4e044f..0d0b8876e6 100644 --- a/libavformat/rawvideodec.c +++ b/libavformat/rawvideodec.c @@ -25,6 +25,7 @@ #include "libavutil/parseutils.h" #include "libavutil/pixdesc.h" #include "libavutil/opt.h" +#include "demux.h" #include "internal.h" #include "avformat.h" @@ -52,10 +53,10 @@ static int rawvideo_read_header(AVFormatContext *ctx) st->codecpar->codec_type = AVMEDIA_TYPE_VIDEO; - st->codecpar->codec_id = ctx->iformat->raw_codec_id; + st->codecpar->codec_id = ffifmt(ctx->iformat)->raw_codec_id; - if ((ctx->iformat->raw_codec_id != AV_CODEC_ID_V210) && - (ctx->iformat->raw_codec_id != AV_CODEC_ID_V210X)) { + if ((ffifmt(ctx->iformat)->raw_codec_id != AV_CODEC_ID_V210) && + (ffifmt(ctx->iformat)->raw_codec_id != AV_CODEC_ID_V210X)) { if ((pix_fmt = av_get_pix_fmt(s->pixel_format)) == AV_PIX_FMT_NONE) { av_log(ctx, AV_LOG_ERROR, "No such pixel format: %s.\n", s->pixel_format); @@ -72,7 +73,7 @@ static int rawvideo_read_header(AVFormatContext *ctx) st->codecpar->width = s->width; st->codecpar->height = s->height; - if (ctx->iformat->raw_codec_id == AV_CODEC_ID_BITPACKED) { + if (ffifmt(ctx->iformat)->raw_codec_id == AV_CODEC_ID_BITPACKED) { unsigned int pgroup; /* size of the pixel group in bytes */ unsigned int xinc; const AVPixFmtDescriptor *desc; @@ -96,9 +97,9 @@ static int rawvideo_read_header(AVFormatContext *ctx) } st->codecpar->codec_tag = tag; packet_size = s->width * s->height * pgroup / xinc; - } else if ((ctx->iformat->raw_codec_id == AV_CODEC_ID_V210) || - (ctx->iformat->raw_codec_id == AV_CODEC_ID_V210X)) { - pix_fmt = ctx->iformat->raw_codec_id == AV_CODEC_ID_V210 ? + } else if ((ffifmt(ctx->iformat)->raw_codec_id == AV_CODEC_ID_V210) || + (ffifmt(ctx->iformat)->raw_codec_id == AV_CODEC_ID_V210X)) { + pix_fmt = ffifmt(ctx->iformat)->raw_codec_id == AV_CODEC_ID_V210 ? AV_PIX_FMT_YUV422P10 : AV_PIX_FMT_YUV422P16; packet_size = GET_PACKET_SIZE(s->width, s->height); @@ -149,16 +150,16 @@ static const AVClass rawvideo_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_rawvideo_demuxer = { - .name = "rawvideo", - .long_name = NULL_IF_CONFIG_SMALL("raw video"), +const FFInputFormat ff_rawvideo_demuxer = { + .p.name = "rawvideo", + .p.long_name = NULL_IF_CONFIG_SMALL("raw video"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "yuv,cif,qcif,rgb", + .p.priv_class = &rawvideo_demuxer_class, .priv_data_size = sizeof(RawVideoDemuxerContext), .read_header = rawvideo_read_header, .read_packet = rawvideo_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "yuv,cif,qcif,rgb", .raw_codec_id = AV_CODEC_ID_RAWVIDEO, - .priv_class = &rawvideo_demuxer_class, }; static const AVClass bitpacked_demuxer_class = { @@ -169,16 +170,16 @@ static const AVClass bitpacked_demuxer_class = { }; #if CONFIG_BITPACKED_DEMUXER -const AVInputFormat ff_bitpacked_demuxer = { - .name = "bitpacked", - .long_name = NULL_IF_CONFIG_SMALL("Bitpacked"), +const FFInputFormat ff_bitpacked_demuxer = { + .p.name = "bitpacked", + .p.long_name = NULL_IF_CONFIG_SMALL("Bitpacked"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "bitpacked", + .p.priv_class = &bitpacked_demuxer_class, .priv_data_size = sizeof(RawVideoDemuxerContext), .read_header = rawvideo_read_header, .read_packet = rawvideo_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "bitpacked", .raw_codec_id = AV_CODEC_ID_BITPACKED, - .priv_class = &bitpacked_demuxer_class, }; #endif // CONFIG_BITPACKED_DEMUXER @@ -190,29 +191,29 @@ static const AVClass v210_demuxer_class = { }; #if CONFIG_V210_DEMUXER -const AVInputFormat ff_v210_demuxer = { - .name = "v210", - .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"), +const FFInputFormat ff_v210_demuxer = { + .p.name = "v210", + .p.long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "v210", + .p.priv_class = &v210_demuxer_class, .priv_data_size = sizeof(RawVideoDemuxerContext), .read_header = rawvideo_read_header, .read_packet = rawvideo_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "v210", .raw_codec_id = AV_CODEC_ID_V210, - .priv_class = &v210_demuxer_class, }; #endif // CONFIG_V210_DEMUXER #if CONFIG_V210X_DEMUXER -const AVInputFormat ff_v210x_demuxer = { - .name = "v210x", - .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"), +const FFInputFormat ff_v210x_demuxer = { + .p.name = "v210x", + .p.long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "yuv10", + .p.priv_class = &v210_demuxer_class, .priv_data_size = sizeof(RawVideoDemuxerContext), .read_header = rawvideo_read_header, .read_packet = rawvideo_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "yuv10", .raw_codec_id = AV_CODEC_ID_V210X, - .priv_class = &v210_demuxer_class, }; #endif // CONFIG_V210X_DEMUXER diff --git a/libavformat/rdt.c b/libavformat/rdt.c index b9b02a371f..4721f01ace 100644 --- a/libavformat/rdt.c +++ b/libavformat/rdt.c @@ -27,6 +27,7 @@ #include "avformat.h" #include "libavutil/avstring.h" +#include "demux.h" #include "rtpdec.h" #include "rdt.h" #include "libavutil/base64.h" @@ -534,7 +535,7 @@ static av_cold int rdt_init(AVFormatContext *s, int st_index, PayloadContext *rd if ((ret = ff_copy_whiteblacklists(rdt->rmctx, s)) < 0) return ret; - return avformat_open_input(&rdt->rmctx, "", &ff_rdt_demuxer, NULL); + return avformat_open_input(&rdt->rmctx, "", &ff_rdt_demuxer.p, NULL); } static void diff --git a/libavformat/realtextdec.c b/libavformat/realtextdec.c index 7992a5b7fc..713e174b92 100644 --- a/libavformat/realtextdec.c +++ b/libavformat/realtextdec.c @@ -25,6 +25,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/avstring.h" @@ -131,14 +132,14 @@ end: return res; } -const AVInputFormat ff_realtext_demuxer = { - .name = "realtext", - .long_name = NULL_IF_CONFIG_SMALL("RealText subtitle format"), +const FFInputFormat ff_realtext_demuxer = { + .p.name = "realtext", + .p.long_name = NULL_IF_CONFIG_SMALL("RealText subtitle format"), + .p.extensions = "rt", .priv_data_size = sizeof(RealTextContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = realtext_probe, .read_header = realtext_read_header, - .extensions = "rt", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/redspark.c b/libavformat/redspark.c index c6ee22678d..2642d7af67 100644 --- a/libavformat/redspark.c +++ b/libavformat/redspark.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" #include "avio.h" +#include "demux.h" #include "internal.h" #define HEADER_SIZE 4096 @@ -150,12 +151,12 @@ static int redspark_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_redspark_demuxer = { - .name = "redspark", - .long_name = NULL_IF_CONFIG_SMALL("RedSpark"), +const FFInputFormat ff_redspark_demuxer = { + .p.name = "redspark", + .p.long_name = NULL_IF_CONFIG_SMALL("RedSpark"), + .p.extensions = "rsd", .priv_data_size = sizeof(RedSparkContext), .read_probe = redspark_probe, .read_header = redspark_read_header, .read_packet = redspark_read_packet, - .extensions = "rsd", }; diff --git a/libavformat/rka.c b/libavformat/rka.c index 36e25ade01..954ec96509 100644 --- a/libavformat/rka.c +++ b/libavformat/rka.c @@ -161,13 +161,13 @@ static int rka_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp return 0; } -const AVInputFormat ff_rka_demuxer = { - .name = "rka", - .long_name = NULL_IF_CONFIG_SMALL("RKA (RK Audio)"), +const FFInputFormat ff_rka_demuxer = { + .p.name = "rka", + .p.long_name = NULL_IF_CONFIG_SMALL("RKA (RK Audio)"), + .p.extensions = "rka", .priv_data_size = sizeof(RKAContext), .read_probe = rka_probe, .read_header = rka_read_header, .read_packet = rka_read_packet, .read_seek = rka_read_seek, - .extensions = "rka", }; diff --git a/libavformat/rl2.c b/libavformat/rl2.c index 669cb0400b..d64c4b81d4 100644 --- a/libavformat/rl2.c +++ b/libavformat/rl2.c @@ -302,9 +302,9 @@ static int rl2_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp return 0; } -const AVInputFormat ff_rl2_demuxer = { - .name = "rl2", - .long_name = NULL_IF_CONFIG_SMALL("RL2"), +const FFInputFormat ff_rl2_demuxer = { + .p.name = "rl2", + .p.long_name = NULL_IF_CONFIG_SMALL("RL2"), .priv_data_size = sizeof(Rl2DemuxContext), .read_probe = rl2_probe, .read_header = rl2_read_header, diff --git a/libavformat/rm.h b/libavformat/rm.h index 8f47559a36..91007f5ca2 100644 --- a/libavformat/rm.h +++ b/libavformat/rm.h @@ -34,7 +34,7 @@ RMStream *ff_rm_alloc_rmstream (void); void ff_rm_free_rmstream (RMStream *rms); /*< input format for Realmedia-style RTSP streams */ -extern const AVInputFormat ff_rdt_demuxer; +extern const struct FFInputFormat ff_rdt_demuxer; /** * Read the MDPR chunk, which contains stream-specific codec initialization diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index 0f1534b582..4219cc5636 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c @@ -1145,9 +1145,9 @@ static int rm_read_seek(AVFormatContext *s, int stream_index, } -const AVInputFormat ff_rm_demuxer = { - .name = "rm", - .long_name = NULL_IF_CONFIG_SMALL("RealMedia"), +const FFInputFormat ff_rm_demuxer = { + .p.name = "rm", + .p.long_name = NULL_IF_CONFIG_SMALL("RealMedia"), .priv_data_size = sizeof(RMDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = rm_probe, @@ -1158,12 +1158,12 @@ const AVInputFormat ff_rm_demuxer = { .read_seek = rm_read_seek, }; -const AVInputFormat ff_rdt_demuxer = { - .name = "rdt", - .long_name = NULL_IF_CONFIG_SMALL("RDT demuxer"), +const FFInputFormat ff_rdt_demuxer = { + .p.name = "rdt", + .p.long_name = NULL_IF_CONFIG_SMALL("RDT demuxer"), + .p.flags = AVFMT_NOFILE, .priv_data_size = sizeof(RMDemuxContext), .read_close = rm_read_close, - .flags = AVFMT_NOFILE, }; static int ivr_probe(const AVProbeData *p) @@ -1398,14 +1398,14 @@ static int ivr_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_ivr_demuxer = { - .name = "ivr", - .long_name = NULL_IF_CONFIG_SMALL("IVR (Internet Video Recording)"), +const FFInputFormat ff_ivr_demuxer = { + .p.name = "ivr", + .p.long_name = NULL_IF_CONFIG_SMALL("IVR (Internet Video Recording)"), + .p.extensions = "ivr", .priv_data_size = sizeof(RMDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = ivr_probe, .read_header = ivr_read_header, .read_packet = ivr_read_packet, .read_close = rm_read_close, - .extensions = "ivr", }; diff --git a/libavformat/rpl.c b/libavformat/rpl.c index eae0da891b..3f10e51d48 100644 --- a/libavformat/rpl.c +++ b/libavformat/rpl.c @@ -25,6 +25,7 @@ #include "libavutil/avstring.h" #include "libavutil/dict.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define RPL_SIGNATURE "ARMovie\x0A" @@ -393,9 +394,9 @@ static int rpl_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_rpl_demuxer = { - .name = "rpl", - .long_name = NULL_IF_CONFIG_SMALL("RPL / ARMovie"), +const FFInputFormat ff_rpl_demuxer = { + .p.name = "rpl", + .p.long_name = NULL_IF_CONFIG_SMALL("RPL / ARMovie"), .priv_data_size = sizeof(RPLContext), .read_probe = rpl_probe, .read_header = rpl_read_header, diff --git a/libavformat/rsd.c b/libavformat/rsd.c index 33aa0e2c0d..b9098646f6 100644 --- a/libavformat/rsd.c +++ b/libavformat/rsd.c @@ -220,13 +220,13 @@ static int rsd_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_rsd_demuxer = { - .name = "rsd", - .long_name = NULL_IF_CONFIG_SMALL("GameCube RSD"), +const FFInputFormat ff_rsd_demuxer = { + .p.name = "rsd", + .p.long_name = NULL_IF_CONFIG_SMALL("GameCube RSD"), + .p.extensions = "rsd", + .p.codec_tag = (const AVCodecTag* const []){rsd_tags, 0}, + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = rsd_probe, .read_header = rsd_read_header, .read_packet = rsd_read_packet, - .extensions = "rsd", - .codec_tag = (const AVCodecTag* const []){rsd_tags, 0}, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/rsodec.c b/libavformat/rsodec.c index 569368b422..62a2964414 100644 --- a/libavformat/rsodec.c +++ b/libavformat/rsodec.c @@ -23,6 +23,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" #include "rso.h" @@ -71,12 +72,12 @@ static int rso_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_rso_demuxer = { - .name = "rso", - .long_name = NULL_IF_CONFIG_SMALL("Lego Mindstorms RSO"), - .extensions = "rso", +const FFInputFormat ff_rso_demuxer = { + .p.name = "rso", + .p.long_name = NULL_IF_CONFIG_SMALL("Lego Mindstorms RSO"), + .p.extensions = "rso", + .p.codec_tag = ff_rso_codec_tags_list, .read_header = rso_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .codec_tag = ff_rso_codec_tags_list, }; diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c index c7d9b48684..7d4a64f245 100644 --- a/libavformat/rtsp.c +++ b/libavformat/rtsp.c @@ -35,6 +35,7 @@ #include "libavcodec/codec_desc.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #if HAVE_POLL_H #include @@ -2484,15 +2485,15 @@ static const AVClass sdp_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_sdp_demuxer = { - .name = "sdp", - .long_name = NULL_IF_CONFIG_SMALL("SDP"), +const FFInputFormat ff_sdp_demuxer = { + .p.name = "sdp", + .p.long_name = NULL_IF_CONFIG_SMALL("SDP"), + .p.priv_class = &sdp_demuxer_class, .priv_data_size = sizeof(RTSPState), .read_probe = sdp_probe, .read_header = sdp_read_header, .read_packet = ff_rtsp_fetch_packet, .read_close = sdp_read_close, - .priv_class = &sdp_demuxer_class, }; #endif /* CONFIG_SDP_DEMUXER */ @@ -2643,15 +2644,15 @@ static const AVClass rtp_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_rtp_demuxer = { - .name = "rtp", - .long_name = NULL_IF_CONFIG_SMALL("RTP input"), +const FFInputFormat ff_rtp_demuxer = { + .p.name = "rtp", + .p.long_name = NULL_IF_CONFIG_SMALL("RTP input"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &rtp_demuxer_class, .priv_data_size = sizeof(RTSPState), .read_probe = rtp_probe, .read_header = rtp_read_header, .read_packet = ff_rtsp_fetch_packet, .read_close = sdp_read_close, - .flags = AVFMT_NOFILE, - .priv_class = &rtp_demuxer_class, }; #endif /* CONFIG_RTP_DEMUXER */ diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c index b54ce4e597..8ca6f723e4 100644 --- a/libavformat/rtspdec.c +++ b/libavformat/rtspdec.c @@ -27,6 +27,7 @@ #include "libavutil/random_seed.h" #include "libavutil/time.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "network.h" @@ -992,17 +993,17 @@ static const AVClass rtsp_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_rtsp_demuxer = { - .name = "rtsp", - .long_name = NULL_IF_CONFIG_SMALL("RTSP input"), +const FFInputFormat ff_rtsp_demuxer = { + .p.name = "rtsp", + .p.long_name = NULL_IF_CONFIG_SMALL("RTSP input"), + .p.flags = AVFMT_NOFILE, + .p.priv_class = &rtsp_demuxer_class, .priv_data_size = sizeof(RTSPState), .read_probe = rtsp_probe, .read_header = rtsp_read_header, .read_packet = rtsp_read_packet, .read_close = rtsp_read_close, .read_seek = rtsp_read_seek, - .flags = AVFMT_NOFILE, .read_play = rtsp_read_play, .read_pause = rtsp_read_pause, - .priv_class = &rtsp_demuxer_class, }; diff --git a/libavformat/s337m.c b/libavformat/s337m.c index 6fecfeffae..4518f032d2 100644 --- a/libavformat/s337m.c +++ b/libavformat/s337m.c @@ -20,6 +20,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "spdif.h" @@ -187,11 +188,11 @@ static int s337m_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_s337m_demuxer = { - .name = "s337m", - .long_name = NULL_IF_CONFIG_SMALL("SMPTE 337M"), +const FFInputFormat ff_s337m_demuxer = { + .p.name = "s337m", + .p.long_name = NULL_IF_CONFIG_SMALL("SMPTE 337M"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = s337m_probe, .read_header = s337m_read_header, .read_packet = s337m_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/samidec.c b/libavformat/samidec.c index 070b623ebf..4abf7789d1 100644 --- a/libavformat/samidec.c +++ b/libavformat/samidec.c @@ -25,6 +25,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/avstring.h" @@ -121,14 +122,14 @@ end: return res; } -const AVInputFormat ff_sami_demuxer = { - .name = "sami", - .long_name = NULL_IF_CONFIG_SMALL("SAMI subtitle format"), +const FFInputFormat ff_sami_demuxer = { + .p.name = "sami", + .p.long_name = NULL_IF_CONFIG_SMALL("SAMI subtitle format"), + .p.extensions = "smi,sami", .priv_data_size = sizeof(SAMIContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = sami_probe, .read_header = sami_read_header, - .extensions = "smi,sami", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/sapdec.c b/libavformat/sapdec.c index 59141448f4..7480697f83 100644 --- a/libavformat/sapdec.c +++ b/libavformat/sapdec.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "libavutil/avstring.h" #include "libavutil/intreadwrite.h" #include "network.h" @@ -232,13 +233,13 @@ static int sap_fetch_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_sap_demuxer = { - .name = "sap", - .long_name = NULL_IF_CONFIG_SMALL("SAP input"), +const FFInputFormat ff_sap_demuxer = { + .p.name = "sap", + .p.long_name = NULL_IF_CONFIG_SMALL("SAP input"), + .p.flags = AVFMT_NOFILE, .priv_data_size = sizeof(struct SAPState), .read_probe = sap_probe, .read_header = sap_read_header, .read_packet = sap_fetch_packet, .read_close = sap_read_close, - .flags = AVFMT_NOFILE, }; diff --git a/libavformat/sbcdec.c b/libavformat/sbcdec.c index c917743fa1..2fbee012c3 100644 --- a/libavformat/sbcdec.c +++ b/libavformat/sbcdec.c @@ -20,16 +20,17 @@ */ #include "avformat.h" +#include "demux.h" #include "rawdec.h" -const AVInputFormat ff_sbc_demuxer = { - .name = "sbc", - .long_name = NULL_IF_CONFIG_SMALL("raw SBC (low-complexity subband codec)"), - .extensions = "sbc,msbc", +const FFInputFormat ff_sbc_demuxer = { + .p.name = "sbc", + .p.long_name = NULL_IF_CONFIG_SMALL("raw SBC (low-complexity subband codec)"), + .p.extensions = "sbc,msbc", + .p.flags = AVFMT_GENERIC_INDEX, + .p.priv_class = &ff_raw_demuxer_class, .raw_codec_id = AV_CODEC_ID_SBC, .read_header = ff_raw_audio_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/sbgdec.c b/libavformat/sbgdec.c index b2662ea418..bc2469afd1 100644 --- a/libavformat/sbgdec.c +++ b/libavformat/sbgdec.c @@ -29,6 +29,7 @@ #include "libavutil/opt.h" #include "libavutil/time_internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define SBG_SCALE (1 << 16) @@ -1529,15 +1530,15 @@ static const AVClass sbg_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_sbg_demuxer = { - .name = "sbg", - .long_name = NULL_IF_CONFIG_SMALL("SBaGen binaural beats script"), +const FFInputFormat ff_sbg_demuxer = { + .p.name = "sbg", + .p.long_name = NULL_IF_CONFIG_SMALL("SBaGen binaural beats script"), + .p.extensions = "sbg", + .p.priv_class = &sbg_demuxer_class, .priv_data_size = sizeof(struct sbg_demuxer), .read_probe = sbg_read_probe, .read_header = sbg_read_header, .read_packet = sbg_read_packet, .read_seek = sbg_read_seek, .read_seek2 = sbg_read_seek2, - .extensions = "sbg", - .priv_class = &sbg_demuxer_class, }; diff --git a/libavformat/sccdec.c b/libavformat/sccdec.c index 720fd0434f..5f2f95d80e 100644 --- a/libavformat/sccdec.c +++ b/libavformat/sccdec.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/avstring.h" @@ -147,14 +148,14 @@ static int scc_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_scc_demuxer = { - .name = "scc", - .long_name = NULL_IF_CONFIG_SMALL("Scenarist Closed Captions"), +const FFInputFormat ff_scc_demuxer = { + .p.name = "scc", + .p.long_name = NULL_IF_CONFIG_SMALL("Scenarist Closed Captions"), + .p.extensions = "scc", .priv_data_size = sizeof(SCCContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = scc_probe, .read_header = scc_read_header, - .extensions = "scc", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/scd.c b/libavformat/scd.c index f0048bcc85..e34d60dcfb 100644 --- a/libavformat/scd.c +++ b/libavformat/scd.c @@ -28,6 +28,7 @@ #include "libavutil/avassert.h" #include "libavformat/internal.h" #include "avformat.h" +#include "demux.h" #define SCD_MAGIC ((uint64_t)MKBETAG('S', 'E', 'D', 'B') << 32 | \ MKBETAG('S', 'S', 'C', 'F')) @@ -365,9 +366,9 @@ static int scd_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_scd_demuxer = { - .name = "scd", - .long_name = NULL_IF_CONFIG_SMALL("Square Enix SCD"), +const FFInputFormat ff_scd_demuxer = { + .p.name = "scd", + .p.long_name = NULL_IF_CONFIG_SMALL("Square Enix SCD"), .priv_data_size = sizeof(SCDDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = scd_probe, diff --git a/libavformat/sdns.c b/libavformat/sdns.c index f00c6bcc49..9d1e356a23 100644 --- a/libavformat/sdns.c +++ b/libavformat/sdns.c @@ -85,12 +85,12 @@ static int sdns_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_sdns_demuxer = { - .name = "sdns", - .long_name = NULL_IF_CONFIG_SMALL("Xbox SDNS"), +const FFInputFormat ff_sdns_demuxer = { + .p.name = "sdns", + .p.long_name = NULL_IF_CONFIG_SMALL("Xbox SDNS"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "sdns", .read_probe = sdns_probe, .read_header = sdns_read_header, .read_packet = sdns_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "sdns", }; diff --git a/libavformat/sdr2.c b/libavformat/sdr2.c index 3023d5f7d1..c7990bec3d 100644 --- a/libavformat/sdr2.c +++ b/libavformat/sdr2.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int sdr2_probe(const AVProbeData *p) @@ -109,12 +110,12 @@ static int sdr2_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_sdr2_demuxer = { - .name = "sdr2", - .long_name = NULL_IF_CONFIG_SMALL("SDR2"), +const FFInputFormat ff_sdr2_demuxer = { + .p.name = "sdr2", + .p.long_name = NULL_IF_CONFIG_SMALL("SDR2"), + .p.extensions= "sdr2", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = sdr2_probe, .read_header = sdr2_read_header, .read_packet = sdr2_read_packet, - .extensions = "sdr2", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/sdsdec.c b/libavformat/sdsdec.c index d296500bec..1b47f45504 100644 --- a/libavformat/sdsdec.c +++ b/libavformat/sdsdec.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct SDSContext { @@ -153,13 +154,13 @@ static int sds_read_packet(AVFormatContext *ctx, AVPacket *pkt) return ret; } -const AVInputFormat ff_sds_demuxer = { - .name = "sds", - .long_name = NULL_IF_CONFIG_SMALL("MIDI Sample Dump Standard"), +const FFInputFormat ff_sds_demuxer = { + .p.name = "sds", + .p.long_name = NULL_IF_CONFIG_SMALL("MIDI Sample Dump Standard"), + .p.extensions = "sds", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(SDSContext), .read_probe = sds_probe, .read_header = sds_read_header, .read_packet = sds_read_packet, - .extensions = "sds", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/sdxdec.c b/libavformat/sdxdec.c index 5628278928..26ccd78ddd 100644 --- a/libavformat/sdxdec.c +++ b/libavformat/sdxdec.c @@ -22,6 +22,7 @@ #include "libavutil/avstring.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -78,13 +79,13 @@ static int sdx_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_sdx_demuxer = { - .name = "sdx", - .long_name = NULL_IF_CONFIG_SMALL("Sample Dump eXchange"), +const FFInputFormat ff_sdx_demuxer = { + .p.name = "sdx", + .p.long_name = NULL_IF_CONFIG_SMALL("Sample Dump eXchange"), + .p.extensions = "sdx", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = sdx_probe, .read_header = sdx_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .extensions = "sdx", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/seek.c b/libavformat/seek.c index 0180188595..9ac133bf23 100644 --- a/libavformat/seek.c +++ b/libavformat/seek.c @@ -288,7 +288,7 @@ static int64_t read_timestamp(AVFormatContext *s, int stream_index, int64_t *ppo int ff_seek_frame_binary(AVFormatContext *s, int stream_index, int64_t target_ts, int flags) { - const AVInputFormat *const avif = s->iformat; + const FFInputFormat *const avif = ffifmt(s->iformat); int64_t pos_min = 0, pos_max = 0, pos, pos_limit; int64_t ts_min, ts_max, ts; int index; @@ -580,8 +580,8 @@ static int seek_frame_generic(AVFormatContext *s, int stream_index, return -1; ff_read_frame_flush(s); - if (s->iformat->read_seek) - if (s->iformat->read_seek(s, stream_index, timestamp, flags) >= 0) + if (ffifmt(s->iformat)->read_seek) + if (ffifmt(s->iformat)->read_seek(s, stream_index, timestamp, flags) >= 0) return 0; ie = &sti->index_entries[index]; if ((ret = avio_seek(s->pb, ie->pos, SEEK_SET)) < 0) @@ -617,15 +617,15 @@ static int seek_frame_internal(AVFormatContext *s, int stream_index, } /* first, we try the format specific seek */ - if (s->iformat->read_seek) { + if (ffifmt(s->iformat)->read_seek) { ff_read_frame_flush(s); - ret = s->iformat->read_seek(s, stream_index, timestamp, flags); + ret = ffifmt(s->iformat)->read_seek(s, stream_index, timestamp, flags); } else ret = -1; if (ret >= 0) return 0; - if (s->iformat->read_timestamp && + if (ffifmt(s->iformat)->read_timestamp && !(s->iformat->flags & AVFMT_NOBINSEARCH)) { ff_read_frame_flush(s); return ff_seek_frame_binary(s, stream_index, timestamp, flags); @@ -641,7 +641,7 @@ int av_seek_frame(AVFormatContext *s, int stream_index, { int ret; - if (s->iformat->read_seek2 && !s->iformat->read_seek) { + if (ffifmt(s->iformat)->read_seek2 && !ffifmt(s->iformat)->read_seek) { int64_t min_ts = INT64_MIN, max_ts = INT64_MAX; if ((flags & AVSEEK_FLAG_BACKWARD)) max_ts = timestamp; @@ -671,7 +671,7 @@ int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts, flags |= AVSEEK_FLAG_ANY; flags &= ~AVSEEK_FLAG_BACKWARD; - if (s->iformat->read_seek2) { + if (ffifmt(s->iformat)->read_seek2) { int ret; ff_read_frame_flush(s); @@ -687,7 +687,7 @@ int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts, stream_index = 0; } - ret = s->iformat->read_seek2(s, stream_index, min_ts, + ret = ffifmt(s->iformat)->read_seek2(s, stream_index, min_ts, ts, max_ts, flags); if (ret >= 0) @@ -695,13 +695,13 @@ int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts, return ret; } - if (s->iformat->read_timestamp) { + if (ffifmt(s->iformat)->read_timestamp) { // try to seek via read_timestamp() } // Fall back on old API if new is not implemented but old is. // Note the old API has somewhat different semantics. - if (s->iformat->read_seek || 1) { + if (ffifmt(s->iformat)->read_seek || 1) { int dir = (ts - (uint64_t)min_ts > (uint64_t)max_ts - ts ? AVSEEK_FLAG_BACKWARD : 0); int ret = av_seek_frame(s, stream_index, ts, flags | dir); if (ret < 0 && ts != min_ts && max_ts != ts) { diff --git a/libavformat/segafilm.c b/libavformat/segafilm.c index 4c6b68426c..5cbeed6d91 100644 --- a/libavformat/segafilm.c +++ b/libavformat/segafilm.c @@ -29,6 +29,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -324,9 +325,9 @@ static int film_read_seek(AVFormatContext *s, int stream_index, int64_t timestam return 0; } -const AVInputFormat ff_segafilm_demuxer = { - .name = "film_cpk", - .long_name = NULL_IF_CONFIG_SMALL("Sega FILM / CPK"), +const FFInputFormat ff_segafilm_demuxer = { + .p.name = "film_cpk", + .p.long_name = NULL_IF_CONFIG_SMALL("Sega FILM / CPK"), .priv_data_size = sizeof(FilmDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = film_probe, diff --git a/libavformat/serdec.c b/libavformat/serdec.c index 639c899249..a8b2375199 100644 --- a/libavformat/serdec.c +++ b/libavformat/serdec.c @@ -23,6 +23,7 @@ #include "libavutil/parseutils.h" #include "libavutil/pixdesc.h" #include "libavutil/opt.h" +#include "demux.h" #include "internal.h" #include "avformat.h" @@ -132,15 +133,15 @@ static const AVClass ser_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_ser_demuxer = { - .name = "ser", - .long_name = NULL_IF_CONFIG_SMALL("SER (Simple uncompressed video format for astronomical capturing)"), +const FFInputFormat ff_ser_demuxer = { + .p.name = "ser", + .p.long_name = NULL_IF_CONFIG_SMALL("SER (Simple uncompressed video format for astronomical capturing)"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "ser", + .p.priv_class = &ser_demuxer_class, .priv_data_size = sizeof(SERDemuxerContext), .read_probe = ser_probe, .read_header = ser_read_header, .read_packet = ser_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "ser", .raw_codec_id = AV_CODEC_ID_RAWVIDEO, - .priv_class = &ser_demuxer_class, }; diff --git a/libavformat/sga.c b/libavformat/sga.c index 12e9cc1441..23a18657cf 100644 --- a/libavformat/sga.c +++ b/libavformat/sga.c @@ -25,6 +25,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -466,14 +467,14 @@ static int sga_seek(AVFormatContext *s, int stream_index, return -1; } -const AVInputFormat ff_sga_demuxer = { - .name = "sga", - .long_name = NULL_IF_CONFIG_SMALL("Digital Pictures SGA"), +const FFInputFormat ff_sga_demuxer = { + .p.name = "sga", + .p.long_name = NULL_IF_CONFIG_SMALL("Digital Pictures SGA"), + .p.extensions = "sga", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(SGADemuxContext), .read_probe = sga_probe, .read_header = sga_read_header, .read_packet = sga_read_packet, .read_seek = sga_seek, - .extensions = "sga", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/shortendec.c b/libavformat/shortendec.c index cd14b55d70..2bb4d9d0c5 100644 --- a/libavformat/shortendec.c +++ b/libavformat/shortendec.c @@ -22,6 +22,7 @@ */ #include "avformat.h" +#include "demux.h" #include "rawdec.h" #include "libavcodec/golomb.h" @@ -65,15 +66,15 @@ static int shn_probe(const AVProbeData *p) return AVPROBE_SCORE_EXTENSION + 1; } -const AVInputFormat ff_shorten_demuxer = { - .name = "shn", - .long_name = NULL_IF_CONFIG_SMALL("raw Shorten"), +const FFInputFormat ff_shorten_demuxer = { + .p.name = "shn", + .p.long_name = NULL_IF_CONFIG_SMALL("raw Shorten"), + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, + .p.extensions = "shn", + .p.priv_class = &ff_raw_demuxer_class, .read_probe = shn_probe, .read_header = ff_raw_audio_read_header, .read_packet = ff_raw_read_partial_packet, - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, - .extensions = "shn", .raw_codec_id = AV_CODEC_ID_SHORTEN, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/sierravmd.c b/libavformat/sierravmd.c index d110457ec9..e7cc4075de 100644 --- a/libavformat/sierravmd.c +++ b/libavformat/sierravmd.c @@ -30,6 +30,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -313,9 +314,9 @@ static int vmd_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_vmd_demuxer = { - .name = "vmd", - .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD"), +const FFInputFormat ff_vmd_demuxer = { + .p.name = "vmd", + .p.long_name = NULL_IF_CONFIG_SMALL("Sierra VMD"), .priv_data_size = sizeof(VmdDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = vmd_probe, diff --git a/libavformat/siff.c b/libavformat/siff.c index 99756574b4..5aad03d870 100644 --- a/libavformat/siff.c +++ b/libavformat/siff.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "avio_internal.h" @@ -248,12 +249,12 @@ static int siff_read_packet(AVFormatContext *s, AVPacket *pkt) return pkt->size; } -const AVInputFormat ff_siff_demuxer = { - .name = "siff", - .long_name = NULL_IF_CONFIG_SMALL("Beam Software SIFF"), +const FFInputFormat ff_siff_demuxer = { + .p.name = "siff", + .p.long_name = NULL_IF_CONFIG_SMALL("Beam Software SIFF"), + .p.extensions = "vb,son", .priv_data_size = sizeof(SIFFContext), .read_probe = siff_probe, .read_header = siff_read_header, .read_packet = siff_read_packet, - .extensions = "vb,son", }; diff --git a/libavformat/smacker.c b/libavformat/smacker.c index d04c8b91a6..c87174476b 100644 --- a/libavformat/smacker.c +++ b/libavformat/smacker.c @@ -404,9 +404,9 @@ static int smacker_read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_smacker_demuxer = { - .name = "smk", - .long_name = NULL_IF_CONFIG_SMALL("Smacker"), +const FFInputFormat ff_smacker_demuxer = { + .p.name = "smk", + .p.long_name = NULL_IF_CONFIG_SMALL("Smacker"), .priv_data_size = sizeof(SmackerContext), .read_probe = smacker_probe, .read_header = smacker_read_header, diff --git a/libavformat/smjpegdec.c b/libavformat/smjpegdec.c index 02d0f29b99..0003dbf0f5 100644 --- a/libavformat/smjpegdec.c +++ b/libavformat/smjpegdec.c @@ -27,6 +27,7 @@ #include #include "avformat.h" +#include "demux.h" #include "internal.h" #include "riff.h" #include "smjpeg.h" @@ -180,13 +181,13 @@ static int smjpeg_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_smjpeg_demuxer = { - .name = "smjpeg", - .long_name = NULL_IF_CONFIG_SMALL("Loki SDL MJPEG"), +const FFInputFormat ff_smjpeg_demuxer = { + .p.name = "smjpeg", + .p.long_name = NULL_IF_CONFIG_SMALL("Loki SDL MJPEG"), + .p.extensions = "mjpg", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(SMJPEGContext), .read_probe = smjpeg_probe, .read_header = smjpeg_read_header, .read_packet = smjpeg_read_packet, - .extensions = "mjpg", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/smush.c b/libavformat/smush.c index f133bbb02c..0877f7faff 100644 --- a/libavformat/smush.c +++ b/libavformat/smush.c @@ -23,6 +23,7 @@ #include "avformat.h" #include "avio.h" +#include "demux.h" #include "internal.h" typedef struct SMUSHContext { @@ -241,9 +242,9 @@ static int smush_read_packet(AVFormatContext *ctx, AVPacket *pkt) return 0; } -const AVInputFormat ff_smush_demuxer = { - .name = "smush", - .long_name = NULL_IF_CONFIG_SMALL("LucasArts Smush"), +const FFInputFormat ff_smush_demuxer = { + .p.name = "smush", + .p.long_name = NULL_IF_CONFIG_SMALL("LucasArts Smush"), .priv_data_size = sizeof(SMUSHContext), .read_probe = smush_read_probe, .read_header = smush_read_header, diff --git a/libavformat/sol.c b/libavformat/sol.c index a276642728..145906c936 100644 --- a/libavformat/sol.c +++ b/libavformat/sol.c @@ -26,6 +26,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -137,9 +138,9 @@ static int sol_read_packet(AVFormatContext *s, return 0; } -const AVInputFormat ff_sol_demuxer = { - .name = "sol", - .long_name = NULL_IF_CONFIG_SMALL("Sierra SOL"), +const FFInputFormat ff_sol_demuxer = { + .p.name = "sol", + .p.long_name = NULL_IF_CONFIG_SMALL("Sierra SOL"), .read_probe = sol_probe, .read_header = sol_read_header, .read_packet = sol_read_packet, diff --git a/libavformat/soxdec.c b/libavformat/soxdec.c index d47a8ba927..661d6b30e5 100644 --- a/libavformat/soxdec.c +++ b/libavformat/soxdec.c @@ -33,6 +33,7 @@ #include "libavutil/intfloat.h" #include "libavutil/dict.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" #include "sox.h" @@ -131,9 +132,9 @@ static int sox_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_sox_demuxer = { - .name = "sox", - .long_name = NULL_IF_CONFIG_SMALL("SoX (Sound eXchange) native"), +const FFInputFormat ff_sox_demuxer = { + .p.name = "sox", + .p.long_name = NULL_IF_CONFIG_SMALL("SoX (Sound eXchange) native"), .read_probe = sox_probe, .read_header = sox_read_header, .read_packet = ff_pcm_read_packet, diff --git a/libavformat/spdifdec.c b/libavformat/spdifdec.c index 7a6b77aae8..6a01f2ba29 100644 --- a/libavformat/spdifdec.c +++ b/libavformat/spdifdec.c @@ -31,6 +31,7 @@ #include "libavcodec/adts_parser.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "spdif.h" @@ -248,11 +249,11 @@ int ff_spdif_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_spdif_demuxer = { - .name = "spdif", - .long_name = NULL_IF_CONFIG_SMALL("IEC 61937 (compressed data in S/PDIF)"), +const FFInputFormat ff_spdif_demuxer = { + .p.name = "spdif", + .p.long_name = NULL_IF_CONFIG_SMALL("IEC 61937 (compressed data in S/PDIF)"), + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = spdif_probe, .read_header = spdif_read_header, .read_packet = ff_spdif_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/srtdec.c b/libavformat/srtdec.c index 635c1550b9..678796c9dd 100644 --- a/libavformat/srtdec.c +++ b/libavformat/srtdec.c @@ -21,6 +21,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/bprint.h" @@ -213,9 +214,9 @@ end: return res; } -const AVInputFormat ff_srt_demuxer = { - .name = "srt", - .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle"), +const FFInputFormat ff_srt_demuxer = { + .p.name = "srt", + .p.long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle"), .priv_data_size = sizeof(SRTContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = srt_probe, diff --git a/libavformat/stldec.c b/libavformat/stldec.c index b5c8439dc2..3b3b113827 100644 --- a/libavformat/stldec.c +++ b/libavformat/stldec.c @@ -25,6 +25,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/intreadwrite.h" @@ -108,14 +109,14 @@ static int stl_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_stl_demuxer = { - .name = "stl", - .long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"), +const FFInputFormat ff_stl_demuxer = { + .p.name = "stl", + .p.long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"), + .p.extensions = "stl", .priv_data_size = sizeof(STLContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = stl_probe, .read_header = stl_read_header, - .extensions = "stl", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/subtitles.h b/libavformat/subtitles.h index f4993fe20d..88665663c5 100644 --- a/libavformat/subtitles.h +++ b/libavformat/subtitles.h @@ -140,7 +140,7 @@ int ff_subtitles_queue_read_packet(FFDemuxSubtitlesQueue *q, AVPacket *pkt); /** * Update current_sub_idx to emulate a seek. Except the first parameter, it - * matches AVInputFormat->read_seek2 prototypes. + * matches FFInputFormat->read_seek2 prototypes. */ int ff_subtitles_queue_seek(FFDemuxSubtitlesQueue *q, AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags); diff --git a/libavformat/subviewer1dec.c b/libavformat/subviewer1dec.c index bdcbef30ef..5e7ed729ac 100644 --- a/libavformat/subviewer1dec.c +++ b/libavformat/subviewer1dec.c @@ -24,6 +24,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" @@ -90,14 +91,14 @@ static int subviewer1_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_subviewer1_demuxer = { - .name = "subviewer1", - .long_name = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle format"), +const FFInputFormat ff_subviewer1_demuxer = { + .p.name = "subviewer1", + .p.long_name = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle format"), + .p.extensions = "sub", .priv_data_size = sizeof(SubViewer1Context), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = subviewer1_probe, .read_header = subviewer1_read_header, - .extensions = "sub", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/subviewerdec.c b/libavformat/subviewerdec.c index 6ffdc98c39..1d1d99afa9 100644 --- a/libavformat/subviewerdec.c +++ b/libavformat/subviewerdec.c @@ -25,6 +25,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "avio_internal.h" @@ -185,14 +186,14 @@ end: return res; } -const AVInputFormat ff_subviewer_demuxer = { - .name = "subviewer", - .long_name = NULL_IF_CONFIG_SMALL("SubViewer subtitle format"), +const FFInputFormat ff_subviewer_demuxer = { + .p.name = "subviewer", + .p.long_name = NULL_IF_CONFIG_SMALL("SubViewer subtitle format"), + .p.extensions = "sub", .priv_data_size = sizeof(SubViewerContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = subviewer_probe, .read_header = subviewer_read_header, - .extensions = "sub", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/supdec.c b/libavformat/supdec.c index fbcc744bb4..f69ef913b7 100644 --- a/libavformat/supdec.c +++ b/libavformat/supdec.c @@ -17,6 +17,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/intreadwrite.h" @@ -97,13 +98,13 @@ static int sup_probe(const AVProbeData *p) return AVPROBE_SCORE_MAX; } -const AVInputFormat ff_sup_demuxer = { - .name = "sup", - .long_name = NULL_IF_CONFIG_SMALL("raw HDMV Presentation Graphic Stream subtitles"), - .extensions = "sup", - .mime_type = "application/x-pgs", +const FFInputFormat ff_sup_demuxer = { + .p.name = "sup", + .p.long_name = NULL_IF_CONFIG_SMALL("raw HDMV Presentation Graphic Stream subtitles"), + .p.extensions = "sup", + .p.mime_type = "application/x-pgs", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = sup_probe, .read_header = sup_read_header, .read_packet = sup_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/svag.c b/libavformat/svag.c index 45d04727fe..c92a5e12f2 100644 --- a/libavformat/svag.c +++ b/libavformat/svag.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" static int svag_probe(const AVProbeData *p) @@ -69,11 +70,11 @@ static int svag_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align); } -const AVInputFormat ff_svag_demuxer = { - .name = "svag", - .long_name = NULL_IF_CONFIG_SMALL("Konami PS2 SVAG"), +const FFInputFormat ff_svag_demuxer = { + .p.name = "svag", + .p.long_name = NULL_IF_CONFIG_SMALL("Konami PS2 SVAG"), + .p.extensions = "svag", .read_probe = svag_probe, .read_header = svag_read_header, .read_packet = svag_read_packet, - .extensions = "svag", }; diff --git a/libavformat/svs.c b/libavformat/svs.c index b91d29f5a6..03e0bfd6e7 100644 --- a/libavformat/svs.c +++ b/libavformat/svs.c @@ -22,6 +22,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int svs_probe(const AVProbeData *p) @@ -84,11 +85,11 @@ static int svs_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_svs_demuxer = { - .name = "svs", - .long_name = NULL_IF_CONFIG_SMALL("Square SVS"), +const FFInputFormat ff_svs_demuxer = { + .p.name = "svs", + .p.long_name = NULL_IF_CONFIG_SMALL("Square SVS"), + .p.extensions = "svs", .read_probe = svs_probe, .read_header = svs_read_header, .read_packet = svs_read_packet, - .extensions = "svs", }; diff --git a/libavformat/swfdec.c b/libavformat/swfdec.c index 716c95a743..6bba5fb7eb 100644 --- a/libavformat/swfdec.c +++ b/libavformat/swfdec.c @@ -562,9 +562,9 @@ static av_cold int swf_read_close(AVFormatContext *avctx) } #endif -const AVInputFormat ff_swf_demuxer = { - .name = "swf", - .long_name = NULL_IF_CONFIG_SMALL("SWF (ShockWave Flash)"), +const FFInputFormat ff_swf_demuxer = { + .p.name = "swf", + .p.long_name = NULL_IF_CONFIG_SMALL("SWF (ShockWave Flash)"), .priv_data_size = sizeof(SWFDecContext), .read_probe = swf_probe, .read_header = swf_read_header, diff --git a/libavformat/takdec.c b/libavformat/takdec.c index 08f6e6a257..5c405ebd24 100644 --- a/libavformat/takdec.c +++ b/libavformat/takdec.c @@ -27,6 +27,7 @@ #include "apetag.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "rawdec.h" @@ -213,15 +214,15 @@ static int raw_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_tak_demuxer = { - .name = "tak", - .long_name = NULL_IF_CONFIG_SMALL("raw TAK"), +const FFInputFormat ff_tak_demuxer = { + .p.name = "tak", + .p.long_name = NULL_IF_CONFIG_SMALL("raw TAK"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "tak", + .p.priv_class = &ff_raw_demuxer_class, .priv_data_size = sizeof(TAKDemuxContext), .read_probe = tak_probe, .read_header = tak_read_header, .read_packet = raw_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "tak", .raw_codec_id = AV_CODEC_ID_TAK, - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/tedcaptionsdec.c b/libavformat/tedcaptionsdec.c index a8aa9d9cf9..4dbbe5a5b1 100644 --- a/libavformat/tedcaptionsdec.c +++ b/libavformat/tedcaptionsdec.c @@ -23,6 +23,7 @@ #include "libavutil/log.h" #include "libavutil/opt.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" @@ -355,12 +356,12 @@ static int tedcaptions_read_seek(AVFormatContext *avf, int stream_index, min_ts, ts, max_ts, flags); } -const AVInputFormat ff_tedcaptions_demuxer = { - .name = "tedcaptions", - .long_name = NULL_IF_CONFIG_SMALL("TED Talks captions"), +const FFInputFormat ff_tedcaptions_demuxer = { + .p.name = "tedcaptions", + .p.long_name = NULL_IF_CONFIG_SMALL("TED Talks captions"), + .p.priv_class = &tedcaptions_demuxer_class, .priv_data_size = sizeof(TEDCaptionsDemuxer), .flags_internal = FF_FMT_INIT_CLEANUP, - .priv_class = &tedcaptions_demuxer_class, .read_header = tedcaptions_read_header, .read_packet = tedcaptions_read_packet, .read_close = tedcaptions_read_close, diff --git a/libavformat/thp.c b/libavformat/thp.c index fdb499bf42..76db7fc581 100644 --- a/libavformat/thp.c +++ b/libavformat/thp.c @@ -23,6 +23,7 @@ #include "libavutil/intfloat.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" typedef struct ThpDemuxContext { @@ -215,9 +216,9 @@ static int thp_read_packet(AVFormatContext *s, return 0; } -const AVInputFormat ff_thp_demuxer = { - .name = "thp", - .long_name = NULL_IF_CONFIG_SMALL("THP"), +const FFInputFormat ff_thp_demuxer = { + .p.name = "thp", + .p.long_name = NULL_IF_CONFIG_SMALL("THP"), .priv_data_size = sizeof(ThpDemuxContext), .read_probe = thp_probe, .read_header = thp_read_header, diff --git a/libavformat/tiertexseq.c b/libavformat/tiertexseq.c index d06853d0d6..9de3689720 100644 --- a/libavformat/tiertexseq.c +++ b/libavformat/tiertexseq.c @@ -26,6 +26,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define SEQ_FRAME_SIZE 6144 @@ -307,9 +308,9 @@ static int seq_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_tiertexseq_demuxer = { - .name = "tiertexseq", - .long_name = NULL_IF_CONFIG_SMALL("Tiertex Limited SEQ"), +const FFInputFormat ff_tiertexseq_demuxer = { + .p.name = "tiertexseq", + .p.long_name = NULL_IF_CONFIG_SMALL("Tiertex Limited SEQ"), .priv_data_size = sizeof(SeqDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = seq_probe, diff --git a/libavformat/tmv.c b/libavformat/tmv.c index 18105f764e..ae4973f0f3 100644 --- a/libavformat/tmv.c +++ b/libavformat/tmv.c @@ -29,6 +29,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" enum { @@ -185,13 +186,13 @@ static int tmv_read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_tmv_demuxer = { - .name = "tmv", - .long_name = NULL_IF_CONFIG_SMALL("8088flex TMV"), +const FFInputFormat ff_tmv_demuxer = { + .p.name = "tmv", + .p.long_name = NULL_IF_CONFIG_SMALL("8088flex TMV"), + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(TMVContext), .read_probe = tmv_probe, .read_header = tmv_read_header, .read_packet = tmv_read_packet, .read_seek = tmv_read_seek, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/tta.c b/libavformat/tta.c index 5477654014..fdc18216c8 100644 --- a/libavformat/tta.c +++ b/libavformat/tta.c @@ -26,6 +26,7 @@ #include "apetag.h" #include "avformat.h" #include "avio_internal.h" +#include "demux.h" #include "internal.h" #include "id3v1.h" @@ -187,13 +188,13 @@ static int tta_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp return 0; } -const AVInputFormat ff_tta_demuxer = { - .name = "tta", - .long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"), +const FFInputFormat ff_tta_demuxer = { + .p.name = "tta", + .p.long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"), + .p.extensions = "tta", .priv_data_size = sizeof(TTAContext), .read_probe = tta_probe, .read_header = tta_read_header, .read_packet = tta_read_packet, .read_seek = tta_read_seek, - .extensions = "tta", }; diff --git a/libavformat/tty.c b/libavformat/tty.c index fbea3196fa..95b7200527 100644 --- a/libavformat/tty.c +++ b/libavformat/tty.c @@ -31,6 +31,7 @@ #include "libavutil/opt.h" #include "libavutil/parseutils.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "sauce.h" @@ -178,14 +179,14 @@ static const AVClass tty_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_tty_demuxer = { - .name = "tty", - .long_name = NULL_IF_CONFIG_SMALL("Tele-typewriter"), +const FFInputFormat ff_tty_demuxer = { + .p.name = "tty", + .p.long_name = NULL_IF_CONFIG_SMALL("Tele-typewriter"), + .p.extensions = tty_extensions, + .p.priv_class = &tty_demuxer_class, + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(TtyDemuxContext), .read_probe = read_probe, .read_header = read_header, .read_packet = read_packet, - .extensions = tty_extensions, - .priv_class = &tty_demuxer_class, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/txd.c b/libavformat/txd.c index 93db883087..4486db5e44 100644 --- a/libavformat/txd.c +++ b/libavformat/txd.c @@ -21,6 +21,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define TXD_FILE 0x16 @@ -92,9 +93,9 @@ next_chunk: return 0; } -const AVInputFormat ff_txd_demuxer = { - .name = "txd", - .long_name = NULL_IF_CONFIG_SMALL("Renderware TeXture Dictionary"), +const FFInputFormat ff_txd_demuxer = { + .p.name = "txd", + .p.long_name = NULL_IF_CONFIG_SMALL("Renderware TeXture Dictionary"), .read_probe = txd_probe, .read_header = txd_read_header, .read_packet = txd_read_packet, diff --git a/libavformat/ty.c b/libavformat/ty.c index 760dfda54c..71707f750f 100644 --- a/libavformat/ty.c +++ b/libavformat/ty.c @@ -25,6 +25,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "mpeg.h" @@ -710,14 +711,14 @@ static int ty_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_ty_demuxer = { - .name = "ty", - .long_name = NULL_IF_CONFIG_SMALL("TiVo TY Stream"), +const FFInputFormat ff_ty_demuxer = { + .p.name = "ty", + .p.long_name = NULL_IF_CONFIG_SMALL("TiVo TY Stream"), + .p.extensions = "ty,ty+", + .p.flags = AVFMT_TS_DISCONT, .priv_data_size = sizeof(TYDemuxContext), .read_probe = ty_probe, .read_header = ty_read_header, .read_packet = ty_read_packet, .read_close = ty_read_close, - .extensions = "ty,ty+", - .flags = AVFMT_TS_DISCONT, }; diff --git a/libavformat/usmdec.c b/libavformat/usmdec.c index ee403e7a84..0c4e8d41be 100644 --- a/libavformat/usmdec.c +++ b/libavformat/usmdec.c @@ -414,14 +414,14 @@ static int usm_read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_usm_demuxer = { - .name = "usm", - .long_name = NULL_IF_CONFIG_SMALL("CRI USM"), +const FFInputFormat ff_usm_demuxer = { + .p.name = "usm", + .p.long_name = NULL_IF_CONFIG_SMALL("CRI USM"), + .p.extensions = "usm", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOBINSEARCH, .priv_data_size = sizeof(USMDemuxContext), .read_probe = usm_probe, .read_header = usm_read_header, .read_packet = usm_read_packet, .read_close = usm_read_close, - .extensions = "usm", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK | AVFMT_NOBINSEARCH, }; diff --git a/libavformat/vag.c b/libavformat/vag.c index b3aa1c5b93..b5f2c7b5d9 100644 --- a/libavformat/vag.c +++ b/libavformat/vag.c @@ -21,6 +21,7 @@ #include "libavutil/channel_layout.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int vag_probe(const AVProbeData *p) @@ -73,11 +74,11 @@ static int vag_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align); } -const AVInputFormat ff_vag_demuxer = { - .name = "vag", - .long_name = NULL_IF_CONFIG_SMALL("Sony PS2 VAG"), +const FFInputFormat ff_vag_demuxer = { + .p.name = "vag", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony PS2 VAG"), + .p.extensions = "vag", .read_probe = vag_probe, .read_header = vag_read_header, .read_packet = vag_read_packet, - .extensions = "vag", }; diff --git a/libavformat/vapoursynth.c b/libavformat/vapoursynth.c index b79ecfcf1b..e300392a8a 100644 --- a/libavformat/vapoursynth.c +++ b/libavformat/vapoursynth.c @@ -36,6 +36,7 @@ #include "libavutil/opt.h" #include "libavutil/pixdesc.h" #include "avformat.h" +#include "demux.h" #include "internal.h" struct VSState { @@ -480,9 +481,10 @@ static const AVClass class_vs = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_vapoursynth_demuxer = { - .name = "vapoursynth", - .long_name = NULL_IF_CONFIG_SMALL("VapourSynth demuxer"), +const FFInputFormat ff_vapoursynth_demuxer = { + .p.name = "vapoursynth", + .p.long_name = NULL_IF_CONFIG_SMALL("VapourSynth demuxer"), + .p.priv_class = &class_vs, .priv_data_size = sizeof(VSContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = probe_vs, @@ -490,5 +492,4 @@ const AVInputFormat ff_vapoursynth_demuxer = { .read_packet = read_packet_vs, .read_close = read_close_vs, .read_seek = read_seek_vs, - .priv_class = &class_vs, }; diff --git a/libavformat/vc1test.c b/libavformat/vc1test.c index f63ffee69b..394a70c1ac 100644 --- a/libavformat/vc1test.c +++ b/libavformat/vc1test.c @@ -117,12 +117,12 @@ static int vc1t_read_packet(AVFormatContext *s, return pkt->size; } -const AVInputFormat ff_vc1t_demuxer = { - .name = "vc1test", - .long_name = NULL_IF_CONFIG_SMALL("VC-1 test bitstream"), +const FFInputFormat ff_vc1t_demuxer = { + .p.name = "vc1test", + .p.long_name = NULL_IF_CONFIG_SMALL("VC-1 test bitstream"), + .p.extensions = "rcv", + .p.flags = AVFMT_GENERIC_INDEX, .read_probe = vc1t_probe, .read_header = vc1t_read_header, .read_packet = vc1t_read_packet, - .extensions = "rcv", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/vividas.c b/libavformat/vividas.c index 2f47d65c7c..98bf134f25 100644 --- a/libavformat/vividas.c +++ b/libavformat/vividas.c @@ -32,6 +32,7 @@ #include "libavutil/intreadwrite.h" #include "avio_internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define MAX_AUDIO_SUBPACKETS 100 @@ -790,9 +791,9 @@ static int viv_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp return 0; } -const AVInputFormat ff_vividas_demuxer = { - .name = "vividas", - .long_name = NULL_IF_CONFIG_SMALL("Vividas VIV"), +const FFInputFormat ff_vividas_demuxer = { + .p.name = "vividas", + .p.long_name = NULL_IF_CONFIG_SMALL("Vividas VIV"), .priv_data_size = sizeof(VividasDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = viv_probe, diff --git a/libavformat/vivo.c b/libavformat/vivo.c index 02df4f0013..76aa4a21c2 100644 --- a/libavformat/vivo.c +++ b/libavformat/vivo.c @@ -29,6 +29,7 @@ #include "libavutil/avstring.h" #include "libavutil/parseutils.h" #include "avformat.h" +#include "demux.h" #include "internal.h" typedef struct VivoContext { @@ -314,12 +315,12 @@ restart: return ret; } -const AVInputFormat ff_vivo_demuxer = { - .name = "vivo", - .long_name = NULL_IF_CONFIG_SMALL("Vivo"), +const FFInputFormat ff_vivo_demuxer = { + .p.name = "vivo", + .p.long_name = NULL_IF_CONFIG_SMALL("Vivo"), + .p.extensions = "viv", .priv_data_size = sizeof(VivoContext), .read_probe = vivo_probe, .read_header = vivo_read_header, .read_packet = vivo_read_packet, - .extensions = "viv", }; diff --git a/libavformat/vocdec.c b/libavformat/vocdec.c index f235d7635b..195f06b746 100644 --- a/libavformat/vocdec.c +++ b/libavformat/vocdec.c @@ -20,6 +20,7 @@ */ #include "libavutil/intreadwrite.h" +#include "demux.h" #include "voc.h" #include "internal.h" @@ -100,13 +101,13 @@ static int voc_read_seek(AVFormatContext *s, int stream_index, return -1; } -const AVInputFormat ff_voc_demuxer = { - .name = "voc", - .long_name = NULL_IF_CONFIG_SMALL("Creative Voice"), +const FFInputFormat ff_voc_demuxer = { + .p.name = "voc", + .p.long_name = NULL_IF_CONFIG_SMALL("Creative Voice"), + .p.codec_tag = ff_voc_codec_tags_list, .priv_data_size = sizeof(VocDecContext), .read_probe = voc_probe, .read_header = voc_read_header, .read_packet = voc_read_packet, .read_seek = voc_read_seek, - .codec_tag = ff_voc_codec_tags_list, }; diff --git a/libavformat/vpk.c b/libavformat/vpk.c index bfd49c6307..001ad33555 100644 --- a/libavformat/vpk.c +++ b/libavformat/vpk.c @@ -135,13 +135,13 @@ static int vpk_read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_vpk_demuxer = { - .name = "vpk", - .long_name = NULL_IF_CONFIG_SMALL("Sony PS2 VPK"), +const FFInputFormat ff_vpk_demuxer = { + .p.name = "vpk", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony PS2 VPK"), + .p.extensions = "vpk", .priv_data_size = sizeof(VPKDemuxContext), .read_probe = vpk_probe, .read_header = vpk_read_header, .read_packet = vpk_read_packet, .read_seek = vpk_read_seek, - .extensions = "vpk", }; diff --git a/libavformat/vplayerdec.c b/libavformat/vplayerdec.c index b37f6c8f64..cd6b3d6c3a 100644 --- a/libavformat/vplayerdec.c +++ b/libavformat/vplayerdec.c @@ -24,6 +24,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" @@ -95,14 +96,14 @@ static int vplayer_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_vplayer_demuxer = { - .name = "vplayer", - .long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitles"), +const FFInputFormat ff_vplayer_demuxer = { + .p.name = "vplayer", + .p.long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitles"), + .p.extensions = "txt", .priv_data_size = sizeof(VPlayerContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = vplayer_probe, .read_header = vplayer_read_header, - .extensions = "txt", .read_packet = ff_subtitles_read_packet, .read_seek2 = ff_subtitles_read_seek, .read_close = ff_subtitles_read_close, diff --git a/libavformat/vqf.c b/libavformat/vqf.c index 1671d03b2c..4c7f5aa22e 100644 --- a/libavformat/vqf.c +++ b/libavformat/vqf.c @@ -20,6 +20,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "libavutil/intreadwrite.h" #include "libavutil/dict.h" @@ -287,13 +288,13 @@ static int vqf_read_seek(AVFormatContext *s, return 0; } -const AVInputFormat ff_vqf_demuxer = { - .name = "vqf", - .long_name = NULL_IF_CONFIG_SMALL("Nippon Telegraph and Telephone Corporation (NTT) TwinVQ"), +const FFInputFormat ff_vqf_demuxer = { + .p.name = "vqf", + .p.long_name = NULL_IF_CONFIG_SMALL("Nippon Telegraph and Telephone Corporation (NTT) TwinVQ"), + .p.extensions = "vqf,vql,vqe", .priv_data_size = sizeof(VqfContext), .read_probe = vqf_probe, .read_header = vqf_read_header, .read_packet = vqf_read_packet, .read_seek = vqf_read_seek, - .extensions = "vqf,vql,vqe", }; diff --git a/libavformat/wady.c b/libavformat/wady.c index bd9b64f514..6dcc0018f3 100644 --- a/libavformat/wady.c +++ b/libavformat/wady.c @@ -75,13 +75,13 @@ static int wady_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_wady_demuxer = { - .name = "wady", - .long_name = NULL_IF_CONFIG_SMALL("Marble WADY"), +const FFInputFormat ff_wady_demuxer = { + .p.name = "wady", + .p.long_name = NULL_IF_CONFIG_SMALL("Marble WADY"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "way", .read_probe = wady_probe, .read_header = wady_read_header, .read_packet = ff_pcm_read_packet, .read_seek = ff_pcm_read_seek, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "way", }; diff --git a/libavformat/wavarc.c b/libavformat/wavarc.c index 542a2abbc1..9d7029f209 100644 --- a/libavformat/wavarc.c +++ b/libavformat/wavarc.c @@ -133,14 +133,14 @@ static int wavarc_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_wavarc_demuxer = { - .name = "wavarc", - .long_name = NULL_IF_CONFIG_SMALL("Waveform Archiver"), +const FFInputFormat ff_wavarc_demuxer = { + .p.name = "wavarc", + .p.long_name = NULL_IF_CONFIG_SMALL("Waveform Archiver"), + .p.flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, + .p.extensions = "wa", .priv_data_size = sizeof(WavArcContext), .read_probe = wavarc_probe, .read_packet = wavarc_read_packet, - .flags = AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK | AVFMT_NOTIMESTAMPS, .read_header = wavarc_read_header, - .extensions = "wa", .raw_codec_id = AV_CODEC_ID_WAVARC, }; diff --git a/libavformat/wavdec.c b/libavformat/wavdec.c index 0c6629b157..8cd4beec26 100644 --- a/libavformat/wavdec.c +++ b/libavformat/wavdec.c @@ -828,17 +828,17 @@ static const AVClass wav_demuxer_class = { .option = demux_options, .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_wav_demuxer = { - .name = "wav", - .long_name = NULL_IF_CONFIG_SMALL("WAV / WAVE (Waveform Audio)"), +const FFInputFormat ff_wav_demuxer = { + .p.name = "wav", + .p.long_name = NULL_IF_CONFIG_SMALL("WAV / WAVE (Waveform Audio)"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.codec_tag = ff_wav_codec_tags_list, + .p.priv_class = &wav_demuxer_class, .priv_data_size = sizeof(WAVDemuxContext), .read_probe = wav_probe, .read_header = wav_read_header, .read_packet = wav_read_packet, .read_seek = wav_read_seek, - .flags = AVFMT_GENERIC_INDEX, - .codec_tag = ff_wav_codec_tags_list, - .priv_class = &wav_demuxer_class, }; #endif /* CONFIG_WAV_DEMUXER */ @@ -992,16 +992,16 @@ static const AVClass w64_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_w64_demuxer = { - .name = "w64", - .long_name = NULL_IF_CONFIG_SMALL("Sony Wave64"), +const FFInputFormat ff_w64_demuxer = { + .p.name = "w64", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony Wave64"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.codec_tag = ff_wav_codec_tags_list, + .p.priv_class = &w64_demuxer_class, .priv_data_size = sizeof(WAVDemuxContext), .read_probe = w64_probe, .read_header = w64_read_header, .read_packet = wav_read_packet, .read_seek = wav_read_seek, - .flags = AVFMT_GENERIC_INDEX, - .codec_tag = ff_wav_codec_tags_list, - .priv_class = &w64_demuxer_class, }; #endif /* CONFIG_W64_DEMUXER */ diff --git a/libavformat/wc3movie.c b/libavformat/wc3movie.c index 8f5c2f18cd..022b276fbd 100644 --- a/libavformat/wc3movie.c +++ b/libavformat/wc3movie.c @@ -32,6 +32,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/dict.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define FORM_TAG MKTAG('F', 'O', 'R', 'M') @@ -293,9 +294,9 @@ static int wc3_read_packet(AVFormatContext *s, return ret; } -const AVInputFormat ff_wc3_demuxer = { - .name = "wc3movie", - .long_name = NULL_IF_CONFIG_SMALL("Wing Commander III movie"), +const FFInputFormat ff_wc3_demuxer = { + .p.name = "wc3movie", + .p.long_name = NULL_IF_CONFIG_SMALL("Wing Commander III movie"), .priv_data_size = sizeof(Wc3DemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = wc3_probe, diff --git a/libavformat/webvttdec.c b/libavformat/webvttdec.c index 0b2fc77168..661cbdb30f 100644 --- a/libavformat/webvttdec.c +++ b/libavformat/webvttdec.c @@ -25,6 +25,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "subtitles.h" #include "libavutil/bprint.h" @@ -210,9 +211,11 @@ static const AVClass webvtt_demuxer_class = { .version = LIBAVUTIL_VERSION_INT, }; -const AVInputFormat ff_webvtt_demuxer = { - .name = "webvtt", - .long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"), +const FFInputFormat ff_webvtt_demuxer = { + .p.name = "webvtt", + .p.long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"), + .p.extensions = "vtt", + .p.priv_class = &webvtt_demuxer_class, .priv_data_size = sizeof(WebVTTContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = webvtt_probe, @@ -220,6 +223,4 @@ const AVInputFormat ff_webvtt_demuxer = { .read_packet = webvtt_read_packet, .read_seek2 = webvtt_read_seek, .read_close = webvtt_read_close, - .extensions = "vtt", - .priv_class = &webvtt_demuxer_class, }; diff --git a/libavformat/westwood_aud.c b/libavformat/westwood_aud.c index 9896bd46df..f83913a22f 100644 --- a/libavformat/westwood_aud.c +++ b/libavformat/westwood_aud.c @@ -36,6 +36,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define AUD_HEADER_SIZE 12 @@ -176,9 +177,9 @@ static int wsaud_read_packet(AVFormatContext *s, return ret; } -const AVInputFormat ff_wsaud_demuxer = { - .name = "wsaud", - .long_name = NULL_IF_CONFIG_SMALL("Westwood Studios audio"), +const FFInputFormat ff_wsaud_demuxer = { + .p.name = "wsaud", + .p.long_name = NULL_IF_CONFIG_SMALL("Westwood Studios audio"), .read_probe = wsaud_probe, .read_header = wsaud_read_header, .read_packet = wsaud_read_packet, diff --git a/libavformat/westwood_vqa.c b/libavformat/westwood_vqa.c index 03b2d9e03c..954710a6f0 100644 --- a/libavformat/westwood_vqa.c +++ b/libavformat/westwood_vqa.c @@ -317,9 +317,9 @@ static int wsvqa_read_packet(AVFormatContext *s, return ret; } -const AVInputFormat ff_wsvqa_demuxer = { - .name = "wsvqa", - .long_name = NULL_IF_CONFIG_SMALL("Westwood Studios VQA"), +const FFInputFormat ff_wsvqa_demuxer = { + .p.name = "wsvqa", + .p.long_name = NULL_IF_CONFIG_SMALL("Westwood Studios VQA"), .priv_data_size = sizeof(WsVqaDemuxContext), .read_probe = wsvqa_probe, .read_header = wsvqa_read_header, diff --git a/libavformat/wsddec.c b/libavformat/wsddec.c index 8153d898dd..f9408be5ec 100644 --- a/libavformat/wsddec.c +++ b/libavformat/wsddec.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/timecode.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "rawdec.h" @@ -165,15 +166,15 @@ static int wsd_read_header(AVFormatContext *s) return avio_seek(pb, data_offset, SEEK_SET); } -const AVInputFormat ff_wsd_demuxer = { - .name = "wsd", - .long_name = NULL_IF_CONFIG_SMALL("Wideband Single-bit Data (WSD)"), +const FFInputFormat ff_wsd_demuxer = { + .p.name = "wsd", + .p.long_name = NULL_IF_CONFIG_SMALL("Wideband Single-bit Data (WSD)"), + .p.extensions = "wsd", + .p.flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK, + .p.priv_class = &ff_raw_demuxer_class, .read_probe = wsd_probe, .read_header = wsd_read_header, .read_packet = ff_raw_read_partial_packet, - .extensions = "wsd", - .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK, .raw_codec_id = AV_CODEC_ID_DSD_MSBF, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/wtvdec.c b/libavformat/wtvdec.c index e70470f79b..f41b0f2c68 100644 --- a/libavformat/wtvdec.c +++ b/libavformat/wtvdec.c @@ -1117,14 +1117,14 @@ static int read_close(AVFormatContext *s) return 0; } -const AVInputFormat ff_wtv_demuxer = { - .name = "wtv", - .long_name = NULL_IF_CONFIG_SMALL("Windows Television (WTV)"), +const FFInputFormat ff_wtv_demuxer = { + .p.name = "wtv", + .p.long_name = NULL_IF_CONFIG_SMALL("Windows Television (WTV)"), + .p.flags = AVFMT_SHOW_IDS, .priv_data_size = sizeof(WtvContext), .read_probe = read_probe, .read_header = read_header, .read_packet = read_packet, .read_seek = read_seek, .read_close = read_close, - .flags = AVFMT_SHOW_IDS, }; diff --git a/libavformat/wvdec.c b/libavformat/wvdec.c index 61a683a85e..b25c1eee83 100644 --- a/libavformat/wvdec.c +++ b/libavformat/wvdec.c @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/dict.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "apetag.h" #include "id3v1.h" @@ -328,12 +329,12 @@ static int wv_read_packet(AVFormatContext *s, AVPacket *pkt) return 0; } -const AVInputFormat ff_wv_demuxer = { - .name = "wv", - .long_name = NULL_IF_CONFIG_SMALL("WavPack"), +const FFInputFormat ff_wv_demuxer = { + .p.name = "wv", + .p.long_name = NULL_IF_CONFIG_SMALL("WavPack"), + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(WVContext), .read_probe = wv_probe, .read_header = wv_read_header, .read_packet = wv_read_packet, - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/wvedec.c b/libavformat/wvedec.c index 52b3099f73..43e6359892 100644 --- a/libavformat/wvedec.c +++ b/libavformat/wvedec.c @@ -19,6 +19,7 @@ */ #include "avformat.h" +#include "demux.h" #include "internal.h" #include "pcm.h" @@ -53,9 +54,9 @@ static int wve_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_wve_demuxer = { - .name = "wve", - .long_name = NULL_IF_CONFIG_SMALL("Psion 3 audio"), +const FFInputFormat ff_wve_demuxer = { + .p.name = "wve", + .p.long_name = NULL_IF_CONFIG_SMALL("Psion 3 audio"), .read_probe = wve_probe, .read_header = wve_read_header, .read_packet = ff_pcm_read_packet, diff --git a/libavformat/xa.c b/libavformat/xa.c index ec9fcbc94c..395af54afc 100644 --- a/libavformat/xa.c +++ b/libavformat/xa.c @@ -29,6 +29,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #define XA00_TAG MKTAG('X', 'A', 0, 0) @@ -121,9 +122,9 @@ static int xa_read_packet(AVFormatContext *s, return ret; } -const AVInputFormat ff_xa_demuxer = { - .name = "xa", - .long_name = NULL_IF_CONFIG_SMALL("Maxis XA"), +const FFInputFormat ff_xa_demuxer = { + .p.name = "xa", + .p.long_name = NULL_IF_CONFIG_SMALL("Maxis XA"), .priv_data_size = sizeof(MaxisXADemuxContext), .read_probe = xa_probe, .read_header = xa_read_header, diff --git a/libavformat/xmd.c b/libavformat/xmd.c index f9c8138d72..d8368cd882 100644 --- a/libavformat/xmd.c +++ b/libavformat/xmd.c @@ -69,12 +69,12 @@ static int xmd_read_header(AVFormatContext *s) return 0; } -const AVInputFormat ff_xmd_demuxer = { - .name = "xmd", - .long_name = NULL_IF_CONFIG_SMALL("Konami XMD"), +const FFInputFormat ff_xmd_demuxer = { + .p.name = "xmd", + .p.long_name = NULL_IF_CONFIG_SMALL("Konami XMD"), + .p.flags = AVFMT_GENERIC_INDEX, + .p.extensions = "xmd", .read_probe = xmd_probe, .read_header = xmd_read_header, .read_packet = ff_pcm_read_packet, - .flags = AVFMT_GENERIC_INDEX, - .extensions = "xmd", }; diff --git a/libavformat/xmv.c b/libavformat/xmv.c index 4bff63297a..e2c4c7f93e 100644 --- a/libavformat/xmv.c +++ b/libavformat/xmv.c @@ -30,6 +30,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "riff.h" #include "libavutil/avassert.h" @@ -575,10 +576,10 @@ static int xmv_read_packet(AVFormatContext *s, return 0; } -const AVInputFormat ff_xmv_demuxer = { - .name = "xmv", - .long_name = NULL_IF_CONFIG_SMALL("Microsoft XMV"), - .extensions = "xmv", +const FFInputFormat ff_xmv_demuxer = { + .p.name = "xmv", + .p.long_name = NULL_IF_CONFIG_SMALL("Microsoft XMV"), + .p.extensions = "xmv", .priv_data_size = sizeof(XMVDemuxContext), .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = xmv_probe, diff --git a/libavformat/xvag.c b/libavformat/xvag.c index f8a83f258c..c3c39490e6 100644 --- a/libavformat/xvag.c +++ b/libavformat/xvag.c @@ -22,6 +22,7 @@ #include "libavutil/bswap.h" #include "libavcodec/internal.h" #include "avformat.h" +#include "demux.h" #include "internal.h" static int xvag_probe(const AVProbeData *p) @@ -104,11 +105,11 @@ static int xvag_read_packet(AVFormatContext *s, AVPacket *pkt) return av_get_packet(s->pb, pkt, par->block_align); } -const AVInputFormat ff_xvag_demuxer = { - .name = "xvag", - .long_name = NULL_IF_CONFIG_SMALL("Sony PS3 XVAG"), +const FFInputFormat ff_xvag_demuxer = { + .p.name = "xvag", + .p.long_name = NULL_IF_CONFIG_SMALL("Sony PS3 XVAG"), + .p.extensions = "xvag", .read_probe = xvag_probe, .read_header = xvag_read_header, .read_packet = xvag_read_packet, - .extensions = "xvag", }; diff --git a/libavformat/xwma.c b/libavformat/xwma.c index b830f9ed75..525baee6f5 100644 --- a/libavformat/xwma.c +++ b/libavformat/xwma.c @@ -23,6 +23,7 @@ #include #include "avformat.h" +#include "demux.h" #include "internal.h" #include "riff.h" @@ -313,9 +314,9 @@ static int xwma_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -const AVInputFormat ff_xwma_demuxer = { - .name = "xwma", - .long_name = NULL_IF_CONFIG_SMALL("Microsoft xWMA"), +const FFInputFormat ff_xwma_demuxer = { + .p.name = "xwma", + .p.long_name = NULL_IF_CONFIG_SMALL("Microsoft xWMA"), .priv_data_size = sizeof(XWMAContext), .read_probe = xwma_probe, .read_header = xwma_read_header, diff --git a/libavformat/yop.c b/libavformat/yop.c index 8fdad6899b..fd11acafc1 100644 --- a/libavformat/yop.c +++ b/libavformat/yop.c @@ -204,15 +204,15 @@ static int yop_read_seek(AVFormatContext *s, int stream_index, return 0; } -const AVInputFormat ff_yop_demuxer = { - .name = "yop", - .long_name = NULL_IF_CONFIG_SMALL("Psygnosis YOP"), +const FFInputFormat ff_yop_demuxer = { + .p.name = "yop", + .p.long_name = NULL_IF_CONFIG_SMALL("Psygnosis YOP"), + .p.extensions = "yop", + .p.flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(YopDecContext), .read_probe = yop_probe, .read_header = yop_read_header, .read_packet = yop_read_packet, .read_close = yop_read_close, .read_seek = yop_read_seek, - .extensions = "yop", - .flags = AVFMT_GENERIC_INDEX, }; diff --git a/libavformat/yuv4mpegdec.c b/libavformat/yuv4mpegdec.c index c0972af7de..2b66a1e596 100644 --- a/libavformat/yuv4mpegdec.c +++ b/libavformat/yuv4mpegdec.c @@ -23,6 +23,7 @@ #include "libavutil/imgutils.h" #include "avformat.h" +#include "demux.h" #include "internal.h" #include "yuv4mpeg.h" @@ -323,12 +324,12 @@ static int yuv4_probe(const AVProbeData *pd) return 0; } -const AVInputFormat ff_yuv4mpegpipe_demuxer = { - .name = "yuv4mpegpipe", - .long_name = NULL_IF_CONFIG_SMALL("YUV4MPEG pipe"), +const FFInputFormat ff_yuv4mpegpipe_demuxer = { + .p.name = "yuv4mpegpipe", + .p.long_name = NULL_IF_CONFIG_SMALL("YUV4MPEG pipe"), + .p.extensions = "y4m", .read_probe = yuv4_probe, .read_header = yuv4_read_header, .read_packet = yuv4_read_packet, .read_seek = yuv4_read_seek, - .extensions = "y4m", }; diff --git a/tools/probetest.c b/tools/probetest.c index 6f0e002b74..e742d598b1 100644 --- a/tools/probetest.c +++ b/tools/probetest.c @@ -21,6 +21,7 @@ #include #include "libavformat/avformat.h" +#include "libavformat/demux.h" #include "libavcodec/put_bits.h" #include "libavutil/lfg.h" #include "libavutil/timer.h" @@ -44,12 +45,12 @@ static void probe(AVProbeData *pd, int type, int p, int size) while ((fmt = av_demuxer_iterate(&fmt_opaque))) { if (fmt->flags & AVFMT_NOFILE) continue; - if (fmt->read_probe && + if (ffifmt(fmt)->read_probe && (!single_format || !strcmp(single_format, fmt->name)) ) { int score; int64_t start = AV_READ_TIME(); - score = fmt->read_probe(pd); + score = ffifmt(fmt)->read_probe(pd); time_array[i] += AV_READ_TIME() - start; if (score > score_array[i] && score > AVPROBE_SCORE_MAX / 4) { score_array[i] = score; diff --git a/tools/target_dem_fuzzer.c b/tools/target_dem_fuzzer.c index 32767a0182..76eed9f6a2 100644 --- a/tools/target_dem_fuzzer.c +++ b/tools/target_dem_fuzzer.c @@ -113,12 +113,12 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { static int c; int seekable = 0; int ret; - AVInputFormat *fmt = NULL; + const AVInputFormat *fmt = NULL; #ifdef FFMPEG_DEMUXER #define DEMUXER_SYMBOL0(DEMUXER) ff_##DEMUXER##_demuxer #define DEMUXER_SYMBOL(DEMUXER) DEMUXER_SYMBOL0(DEMUXER) - extern AVInputFormat DEMUXER_SYMBOL(FFMPEG_DEMUXER); - fmt = &DEMUXER_SYMBOL(FFMPEG_DEMUXER); + extern const FFInputFormat DEMUXER_SYMBOL(FFMPEG_DEMUXER); + fmt = &DEMUXER_SYMBOL(FFMPEG_DEMUXER).p; #endif if (!c) { From patchwork Sat Feb 10 14:50:44 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46153 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1571864pzc; Sat, 10 Feb 2024 06:49:41 -0800 (PST) X-Google-Smtp-Source: AGHT+IFZUGE17SZ0R4yEmPhSc9tV3tFvrIqLoOUKENLyCeeN3J114bW6WSy1hhQ2lmaLKKGYl3hb X-Received: by 2002:a17:906:7c46:b0:a38:86a2:f366 with SMTP id g6-20020a1709067c4600b00a3886a2f366mr1375325ejp.18.1707576581619; Sat, 10 Feb 2024 06:49:41 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWsR5YmNcBdMNXDU8YFpsmedOtYVigBZVDYqsd6bBDMuiMjW6TPsEaGOQu8X9ZfASjB53iS90lX1CcjB68imOwnScXdla61oV9JC5BafV96zpzsR2AxLOQ9krYoGj6zrwSHU8YOASeR5uDeoOo8ugS+r26CFOvtLrwb6D+A6xLzL5l3Mmf7dGNfz2ksmov0lTRDOIeqe2ib41lH6GzAie4Ct4ftuWbGrC+SffuvtSNUQ1htEL759CKPtnLjzXhgCmaCz6q9+lre/CtHvGwqQEJ/JAr/PGZ4erWDFpNDo+o4HAAhTwBpclJGXdJjS1AOEZwoZBBuLS/KWVUdw7GYRVjP6ElNoOBRvh67q1TXPZ0ggtujwzm7zGpxyfBjC7x67KWC9jBedmuKKSqktNcDy/BFba4t6476XI0Gds1cM6kNRhhYAii3hTPbBT5+cA9BVsl1Pox6sqWQ/ff8MrxC+btXrMyW968QEZx8jigNV3rOABD+j4Pv9vbrrg7g/Djr/WAjbWOMq85w74Po6cu3lg4kibmjs+tM6ExyB/nvbxnb38tIcU63ggT6rnKVy/6jF1k3db1AE2s88KJt0SCW8e5/FYn7nXGOfqt0CjrAL0iFUtKxbC7qLVFMg3L8o8n6OM5g0yTYvmnMTbobEB3XGBV5lIkMgU3LymqVFgp3LaFqhrTqZmXHYKww3TlRM0YLvxsyNbgPNlM3LqXegBGy3S8pUaHMa4YV+PV+S2njyaQiAZth9CEz7Q53Mvhjn4RY3guae72D0tF9LhXH+3EdU1e7WUePR5rAVuyJQ30y/zZXJaZ5p9PAdnGj23DfenuQF2GNkVnMjiXmVd7iU/pya3PHgdwlkgwUMNogTvlsd0JAU41lpEneNrjPjUPX2SX1c6mcmVIrTcRQ3rT4U/KROOW07C1mloqVfpef2fLt5B041FTYBib1/bsbcR/q6QWuuDi9wy XYjxua9r2upmcihkcxHkkh4Oi1q6pPD6FDTscJn2jWB+Nt2P10wlMu5DzfAfwdJeH9LCpmyaiEYbsWlceBNhzzRNtmICTYtIGqbh0Ebb5SCG1n0ksIv1iWPJ03eSO4jsFw1v6PuZmII2Ccmh60w4Sw6Ol8ozGA4nTr6eMl26+a+YHYw4eMtEpBPBsOqU6oOBpcVJv/5O2o3jiOk4L/CF9sRQAC1H4+vjsRSlt6JmPUqcshbN7Z+vWRCRZbDPOk2/xehtCxV16KtQkOfwt6pxm8mzy5600yk2LgEvu45uWB148MyJd+H15/SDWmVN5SGmZUnvPIFlgQgBIotfTlHJnRYl6KEREvIDkFxaMMJyOCu1+VYqJEnwdCj/j8ZzTlEx7zVV1h4UBT0gMRh08z6EX/NydGxw7J+peN50WujVbTEW0iHx4EjoDXz207CjiSvatnDAtlEYWGGJi1TNQqzW9rlokPmbjj7KK9K9yg6H7F62cDfER/PMPba9r1/K34DFKGJOczhoNShq+hdiyygos+Icr1V8IdK3bz4LcxLu1vfBu0u1JsdFEfoM2s9XtSw1nLunj3Do6hYdt0rCs4EK1ZGdsuPfyt2i9VzO3H8gw3OZ7bFXwGjF66cWv2hMjIDaw= Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id lc15-20020a170906f90f00b00a361240236esi1990453ejb.777.2024.02.10.06.49.41; Sat, 10 Feb 2024 06:49:41 -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=@outlook.com header.s=selector1 header.b=QdgfJjjU; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C45C068D02A; Sat, 10 Feb 2024 16:49:38 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04olkn2036.outbound.protection.outlook.com [40.92.75.36]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B664A68CC5B for ; Sat, 10 Feb 2024 16:49:31 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BwbP5tjaJGWDaqgZsVM3D7Iz9dYpHrMLDtospsVZJNlueOosdCzq5OoiDizVbVepPpWS7yCG5QAcrCTr2m195BCVXN11Fx/5MYXCUbYNjPPjr6ozLHLjaXyeqhOnHW1pXdgThxe8lJ7QkT8MmUszF+3LCB/BA3gnWrvqHYgHmWEDWr2/fGIo+jUrngP9wwi/2t8YXPiLuVNU6+7FYOa+7YhA2x9Pjg4PZl3jdhXfbYBEC2qoRT/TSgDa+BV8T+9mpt9Y21K9DDr+btvxQHg3zFgf40CO9Z2HT8tIUGX3DS0sQbRyvlzT4Ja6RNnpb2GoKtWbZUG/HwnmPbAvi2ncCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=uRUVuuUs19daVWj9Vu5sZ0zcd2VRy/YGI5FqF8mO6Oc=; b=fGa6TFMgaJg91/G6/Gkwnd7s30cIAoEBqdivEa4q4jFGh7aAmpoN3mu0e8Lg1CEcwAOwMCbA6KwYKXg/Q1fXZIF/WwRiiqTgi4FQFykYUo3k4O0vl+F/PDU6gxCDjfLyVgEGhET8sRb+0mkDW4LZJWfvEktAmB3I2QWOGk1qxcu5A+92njwIKzHSwxqXVlZggkm2eHH+cGmrEidn2t2P8H6zXJPq7Jx9BYhK32jLgJ/ddFI3UU1B4xlUEuQvsMhvXsJH8YaI5KQgKMteArNlJM2SVJsbUBDMnCRO7AhcdUIMrF0tJ/zbonxBD6nykVVLsXYk2fOytNtWbfa2u/l7pA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uRUVuuUs19daVWj9Vu5sZ0zcd2VRy/YGI5FqF8mO6Oc=; b=QdgfJjjUVAITjOydALxZ9E9JFJerxLmlJKppmDnm7RJ1ngJXC+gsvRKkY/z6XSU1j8w3cpOh9lMRUdvSDTONwR1zwIDYwSqas3cJKBQLZaPMlPyJZFRjknrXW+KB6VYtzwk/rLSnOO4/wPRIdtnXIN0ccNC4b2Y2nbBT+72nL8nDaOL26+Z99Z0k7vVkksij6txxqbF6WemFArWqun1z5fsbnDXn8M5ZhPKEWtIGXNxPxtwuRpD2XUsSnboe1LJTDj/AZwwYto9q7y+56yM3SEgPNXvGjaZrUnX5Z0oeU70gKezGk4835eSeotx6EiTiNCmRl0fQXa/3TT8tZfCWKg== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by DU0P250MB0409.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:329::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.27; Sat, 10 Feb 2024 14:49:30 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 14:49:30 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 10 Feb 2024 15:50:44 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [TNF9rE4YyB9VHiENr106DW8h5omb826t+u7/w2PicU0=] X-ClientProxiedBy: FR0P281CA0213.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::7) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210145045.1298062-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|DU0P250MB0409:EE_ X-MS-Office365-Filtering-Correlation-Id: f5bec45f-6ef2-4eb2-815a-08dc2a477c96 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5y7cFw/ecOaMFQbNwaabLWky956d4YkgkWKjITo1joOnu0wXnKLc7fRNto2bYNT0G7N2RQVXdHPYefv5AlPWdFkPqb8ba9C0iBMrrPjTnoHJD7B7FAACkZyuM5HGqy1QVfJaYlz90RrXshw4Q9qzBO3mUGLciAiT2xnn9VPQxDozCF4gIg5EG7RD4gzSEg1s0SrtyTcqi/ce7MllQ9Z0lIuMfBWTH/W6shSJBwKV6lSOkPr7xmTN6bSbmi19FtoIuNQN44LKdflXlayU8ilGjE6lTzkLlCKPZsvm8hLghGQR2Zqsss8iEfZpcqNlUaMTvaMiogppcmyC+w0URQMZtnnX4n4RB7PcF8sRBdVFvhhwy0O2jg6H+wC+GatcbL3ZHzixQFFiIXjVu/6eKbWGNdjGEWowElaF4Teh4O3kai+7BpRdG6ggR2+SxPnp7lVfAn2zt1U3NebYDbuRpaB6GmKF3e9fwSMKvbjXtI/P5bcluyXAUp0shxLO3AoadmiH3PiL5HwZCQj8+EuY8geZ81Bo/ouxZMGvr4VEnqCX8i8IfM12Rh+RyHSY1kjaurNVh32AdN5hQmKmuNFTpLPSTKzlN0220YqLUZU8Ac2u8KjY+BPAhg3OxEbkfq1emaF8 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: rxfXIkJAORLoK01+RHfBoe3Ag62OL/v4/493T3dic3BwE1S2bFri+Yqp0q6cmqIh74MBgESbBtI4feRF0hVV7Nukt0sQgkbC2jg8V5RNb9jVfBVuSXizsWPh24kZ6zyWn2ttnHQJ76v/wDNnkfmA3NW1EDYZ+cKZGcwoEZpvXaS2OlPWqMMSuO7jG0e+lSfCZpe5jXi0uV+LL2/l09zr/fLivPRyguAR0B4pLhW/SYCbgnLsbY6FlOAcPQcRnPMNkDBFF6i42YVcSY7mtZCxwx6KL94np+nLYTaI9GaRk2AZOArsXwjyShTFFRol/PDO7RyIzESXAGtbcp3tY3Kptes0IHHkmi7pf7Fp2UHScop3dJOMyZC1lrc4U/DkyddflqxdB2abEE1BW0Zn0FjX01ncJNYVAQKhj6ibhZdzjITlzOsIH0g8W3rxemZSqsIn63BUu1ceFPh3+KcZ7Q/5ffAYisxupdAkYsQ9oZ1u542JzwQ4Ux3R2jwblBkq2odG7tA0FZ/lWPOPDXe4j/WN8uz1ESg2CWvlAs73cKc+1mveLV9NQ+n97J/kcSFSSsfs1fKonGoJW1b6kLsZ9Xx+spgNfW0G+QcNEFle9o35PUcWutsdHIXGjVatxJB1gnbMeS0f8fojbFF5X5+jsdsnYP1oc7tEPIwJ0uxmdmXvV+ukBV8T02S8V+3KfLUXAeGZurroVDADlcsMeej2R82i3IPTmf6F42Kz1/JVng1d80QhMX1rhcTyDWJkKvhCHCmbYMoJvdbuXfp6cK6JShsmHwmdNucscWj5via0iAyj2DnoKjcp28eyO3YhdOAPZKa3ZUmIkurbIuL/SvYDkWKXRRQ9yWySdQaFrE2W0ji0qcD5e4hhGNa22jNeOGByI+Taisaqt2iyirQgLB69QCWGXc3ckIoY+5gii4su0YbSn8pW13RGuGB98dhw8A1z4Eqc7xwrkrkA7jOO0ZeejWFVV4t77gnBu4tqgd65Rd6mzSgY5LQzbIfES/PVbIjqU8R0bO7Z4097Pk1ajmTa2HBC14rJgIr+tDhKDCO5lT6cPTdxbO3iPfoqIK1Z0WQe0kvjk8dSjx8V2ZG04OeG2DwU404QZu/vsPoEIMIAuwaiFJzxKIINatZazRF/E4Co+PF2pTiKSZapaa50+mROHAUjG0K+IfC4cUlx74KMOaWZcXnU4Dd7WAoUpDQ6fWxlM2rgOlHCBs259G0w1CdkRdMjSU+PEADm95ubRvz3DshfNEs3/NN5jnEUfDDFHwReKIvJjJeMqlQLFOuBMm8XDjYf1A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f5bec45f-6ef2-4eb2-815a-08dc2a477c96 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 14:49:30.3232 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0P250MB0409 Subject: [FFmpeg-devel] [PATCH 26/27] avutil/opt: Don't use AV_OPT_TYPE_FLAGS for sentinels 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: jYIewCserra+ Make AVOptionType start with 1 instead. Signed-off-by: Andreas Rheinhardt --- One could also add an AV_OPT_TYPE_NONE. libavutil/opt.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavutil/opt.h b/libavutil/opt.h index 3ceb4f86eb..0f84cc53e1 100644 --- a/libavutil/opt.h +++ b/libavutil/opt.h @@ -221,7 +221,7 @@ */ enum AVOptionType{ - AV_OPT_TYPE_FLAGS, + AV_OPT_TYPE_FLAGS = 1, AV_OPT_TYPE_INT, AV_OPT_TYPE_INT64, AV_OPT_TYPE_DOUBLE, From patchwork Sat Feb 10 14:50:45 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46154 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1571911pzc; Sat, 10 Feb 2024 06:49:50 -0800 (PST) X-Google-Smtp-Source: AGHT+IFiwCQN38x/V+JWxv6B41rLKg4G8I59S+MkAYkBlBdMagVLMp5SXmpzFNFYDpUcFfgFjylJ X-Received: by 2002:a17:906:b57:b0:a3c:5509:22d8 with SMTP id v23-20020a1709060b5700b00a3c550922d8mr243899ejg.64.1707576589961; Sat, 10 Feb 2024 06:49:49 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVrRry99Zu81hJPjm5FV3szkb7N+RycU2AxE+WaVFSdDHVNvNKLENgTPCJHrTfI1E/4r6u3g5zSoFo62nRj+U0ZQRZ/0pb5h68u1VoZxuEBAHhOfMwBt3wgTUSS4YMpQInHbjId8nw7jms1ncSDf1M9N4Ot7UmIvSkPpdbCAdPAkXsZtJq4aY8xcZI3PIyCv2KVI/oqidh3Fla7WIOdyTRjfkW01RqGt30uVqnXYe8UqYykgPvQKQZW62bNA1Iq0Wk/6wpQKTYZwAgQBYNfIB49ZM46G0QaO2BdiKl3OaFGG7DGmLY8H1qiKXBLEYe2Cb5vEXcK6QtwBap91xF2antOR3qtEvJqzbGw0BBAl5FbXcXef1k3Me9KPZ+HLarHTd9WW9Tp79r5whFjH7pKsF7w7ZgcFsxRXBhw6s7dyS4ykXyVVlO4SMr+nSN1bfi2C6CS4hTpwil1vGfOsvcUxZ9sTnl9NztXX53uZG561hEcnPPa2QEJYkc5dkAUNs18EHTESiTw8n8xB/NnC3fSl+oqSF5eqJT36IT/6zYJOTf3TA/x00gCu68gXtJqyLzymjfIdHOXJ9/ul49RD+Ig3kYyeB2KXqZ47knHNd83umRkMBsj4Z0sF9iwjo0VMmQBM+nTqtsMryG20bF0vwnwRtCYHtzEpk7sMhqMzTwvNN8mujlVEcs3faNDjvB6lgcpTcBVuyaxXrmGND9KUQM/D0+8N04YTAU+WZ6x3Fd0uW5x5gPJzjWIXA0KDOil0MVGnt272J9Fp6+3lyF4g+AB1ZXNA8X98fhm6UwgT2LSHATOAu945dPEwHcDZp5wOpvgFTHCQqfya69MLBLyS50umGhlctZxwqjWPLSCluw5NltoBLR61LGedX4e/8J5dTVvFu3q7Q0u9jiFWPi66n1Sk9jj3yXaelKV/Y1yGKyiiIpNIOCoFCjDtWfrPH0/2/e+UKoeDF 3dmK6XwwFL22X7Ez4HnMkSE2X6Z9eSWnjf0HxJcQsoRQlnAtEHOaLKdFv3ci83733BDrFIXGa+guDHNdrsRXD1pU0HqNuoYAb8bJkUjL+I2AHtBtvFRZCtM2AzfGEJE7GSM5JU9Rjn9UtnsP1VAzcXlN4SZltlCJqPVyhoucnm66HAxGdxJtQjFZlqkP4hoA5WhQtQYlYVc20NclYoBNt0OgosuZWtolQYuJKvXM5w+AvyjQkrfylQmGkjfMspFGUOPL4VEQMiahIatDzvU5i4dC4y2z6B1MuYx3yCuJZee/AiihDrEWM610Gsfd8Fd8th9t5i29bD8Ii6I72AoCTeFpbgUCLr0uddoEku6vTClXQuLQ4Ka2YwZ9ViA1185sNqktbqEuDpW3zjDAPUVBzdlIXe6GiCbZt4wBwfFpewcxp8TVy503YeWgIAXjX0pqjHFqWfmJOuOOzkfzFordxrx1wBYvsry9zxqL86yY57+84zw7v1DgxnuAPrXcRsvJRmiL6TczsB1lH+HHJYvYDDy4SpGTic03HcolGaNhlnBeZRIkwbJPePvtJu4unx+QEPZomrY3bMjnoFHVduhiNU8HmjTVhl6sFrSAw1cWXZmDVAhT88xZg7TakDfunj Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id v10-20020a1709063bca00b00a3740fe794esi2042989ejf.690.2024.02.10.06.49.49; Sat, 10 Feb 2024 06:49:49 -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=@outlook.com header.s=selector1 header.b="pWxv/tXB"; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CBBE068D0DD; Sat, 10 Feb 2024 16:49:44 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04olkn2036.outbound.protection.outlook.com [40.92.75.36]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 19A2C68D054 for ; Sat, 10 Feb 2024 16:49:37 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VP9afmU1xAILhj89bMG0YjOZ2gy7qkmzu1EWBusFmo9rs0UdVw0C1vHyJ/M64GVAImi9kzk2cEBOFHJgLFxX1E5mDhXzGOWcMI4dlVicbx0rgBR4vkJeTaww5dS/JutqNLlfvA6Ri3KGXIO1zTbNd0TCfbPCP7ptXndf03Mtmm3b04hXq2RBQIPOrWcD9BOzBztspyMzkWCQVCbMcALnBpVxM8hvo8Jf3mKUzT0GRk4hriZ+zi69gsCuid65iiyVNn9ris5ItDTxeZDkQIEwZMgce/uYq/VcKTvQy4xpx21TSuz4dc+XrFknAONELs3XKHXm0zwJrlhFYUT8QpmFVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=PDIkCikD4pzuPfOM5pzhsgB2PdfKMWGto0iCPgMYJhI=; b=F7Vf5ktH7rieJOsFEom478ZC52fvADdcud3ZjuaV4g3duiu8ZtOAKgXjDDRyj+gFVIWp3aWTHCnV2DKJd/GvtEziYV6OjcS8rl1FJ8iCbvvnSmTc25cKD8g/8Yx14vmXmS7QSPaerdK9qZ61IENSUoMTDmqVV6Tshfmw+xRsa03vQaNELoVMUgEjNepbblJfVRCd5vdIB5iZOE6BkgEysgRx6h6GnOucHwvvXCpsfEAPxSM/3aYJGVjurKx3sz7jfp2Yzb4OKMkWGV4Z3ukwvRG0iFAG/7LnVL2/ZlZGhJtB0O3fA2CwHfNqeap20WMExD2ZtpC1941b0rdEP0ARqA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PDIkCikD4pzuPfOM5pzhsgB2PdfKMWGto0iCPgMYJhI=; b=pWxv/tXBk1yF2/GM7KH3+ecZOYu63u+9ywRPjzEg4YxavgvNllTIVUdeipXgEnOPtA5FNZzvGM1paY+Owggc3HSAgtc7+lrpfhQeaqd8vOPT78nCaQQnKFgZdDox153eNr8cGYsv/CJ3St4qp2AdUmQAqOsp712WOtvhp/E2VZlaAgOpUBZQxiCoFONG/XayeBRZ9qP7XZFdtZTvYR4qaV9pYaZ0Hdom73YmAHxfiD+k2fEpvSESmkW5e+ZnqossJneno0fAk+7PUForZ7UA0KSucMV3Hr2tJ1nPHOyEdcthL12eoWgn8kpPlsDjwu2mB0WohmrVkZ7FZTCzCKZZCw== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by DU0P250MB0409.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:329::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.27; Sat, 10 Feb 2024 14:49:36 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 14:49:35 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 10 Feb 2024 15:50:45 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [Gg7yoZEqaZ46I0R5hDLqACcw7Npu1w4Zy7D07hIdkd0=] X-ClientProxiedBy: FR0P281CA0213.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::7) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210145045.1298062-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|DU0P250MB0409:EE_ X-MS-Office365-Filtering-Correlation-Id: ca643da3-3ef1-4b32-f999-08dc2a477f5a X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XVNrNQ2nfalBF9UDbySTdQgypb6zwWtlFso9iSXIYH+J53Apkswn3pup41LDKDrtYUgPrAKu0VMejHen7qXsoovOL0+6rb6JdRUNq0CfVMiQG9HanRYd75h+97facGErTnHlmCx3XoehmTlq3J+/HsN+SOoLf6L1loX4PREXlPV0eZXqD7No8os3dcFAj9my/weoEWEAbEF6w8HivaNooNugVvEmfA0et1FDNX1M7osiuEhqU3I6fE4W2TzmP253it6tRnQiCtyaDNFzVT1oONgKZD393Hm9oNn+3vvAY08NVs1uQw2kJ5gpHHHTwdDF0A6C6Bhlq8S+e+RupAUqU2GcGRxfhviR4smKwd3ceXJhr+HFtTTduiE1M6U33B+5GJe8upIDJJDES6/qLj2/lQB6hTGlTmomQGirBBG3EoSxITvHMlZ7W9mxvgZrP9wBNxm1BGKycSdL6EivB/O0tmx92Oogbb8VMtLMFjE1e2JXod15fK+iyJYm49c3fV2HpsGvc5iGOcQp50x5pqFz0WS1PZZsSVIci6p8J6ppOuiGm3ar8CkpCiWztaCHuJPiHSNrAIhwNyEiVD6D4ovDU+C40bckXW3BgxIjE3F9tTNv2dxRoYjss+qYXTpC84Cl X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Eoj6SpSNu+dV6ujyjbpCcrtekP+CKcj5rY2oPXFEhNShhO9yssWOkVFrPeIFsT2TLuWdDC9FPoQshfjIyqaOATe8tG0P2lRox/RCaL/ozjhGMByhbAzT8xDg6CsFS8lheNYywGnxwP9SmcD0IStReRZgSoDVDs/D0B1qDkgimFoKhlSQ70W+Bv/2H2ARqAEDTByQis8Qj04a7kDeE3L8AyJuwX5nNAdfFSXJsmz+J+FfuBh2Mr+7cE+HTYtfTo6q5XGasEOTM/xSr6iO1JxJbB3yUiTtNNg61lU2Sb8A6I2ToPgPVS3NcpxMEHStlAKZivuym9FGgL+SaK/n/sLL0HLAtttD3bdmEJKE4e/hKper9zp2R4oTZYcYFdVFgNHP2bCZ8PGrdZuNWSD94/H0HTu0D38RggYozNp1ww2KSelnrSvNvAkzjAJPZ6kmQCYexGTad2nzuO0fz0dmBoyDpVpq2rvkxlaXr9tMdvxGR7Q9xJSifmpgAdes8wZZg4Ei3GyThYc/PBpEV9B21SycxQ28Al0v/rCUh+oRNOqs0CpCkNuwvEJU2nbptjQLHds4zdXTPuYoDRbFQVTzkvq3XDO/vlsSLy0abJWpkIb4u1gdx1+w5N/wZJPAqklSEKku3JgtsnUA8ZNwDefw2JeKGtRevLu5NGxwer//SB2T0Q1NOPWEqBOXAzjbcg+3XpljyKnO5Wf2noWtFBDT1jEbFo3CVL3M9enue0hVvEy7grBq2NN97x9/SRf/JSo5OpjALb15V3DLiuk0DgTEYroPFB70wmF7pCncCI3GlalfNC2t7s1yjOT6eFfLN7zOEycmT0Sd6ccfcp3NaYF6NdkbA8Xs/eMWMepUWeer/f31Sn7zYoc/XhKQl5maP419DfSpU3QhRo/FHguEk2mCmg7Js6+iwL5QANYilKpN3ANdbAYDdHN1fj7jVxiZLgmY3B9iCpxIvVPSoRYFwGvZptX8br1ORe8R0xCCw3Bel0+5VomHvmqvrxy2+Cqn4DyRyzplN5FdLwY/Alnw0WTfwEgWy6yVQw82veUVxEw5CL/MxCkNsQt1vSGIH6Ha9sTlz7TZbUkoDxjpJfH369kAjbfebH+tptmqdY+nbNhq2dNFNpEVNRjK5BmgcmepoGSVvvfaR7G6tGG2InDETd+SKoXdiwl2iFrHEHp+Fd2uJc1D7wmUYY3OmNhiNgn3/RlOWAyYPx5rM4OHvo/wDkkQqYYN8tnVFwq2MxGyitNaiHpTe6RjYw/w5K0uA/vzw3qjcaZXM3yjMDctIBiLRZ6zL7/cQA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ca643da3-3ef1-4b32-f999-08dc2a477f5a X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 14:49:34.9592 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0P250MB0409 Subject: [FFmpeg-devel] [PATCH 27/27] avformat/demux: Use enum AVCodecID for raw_codec_id 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: wPyeE73zzqI6 Signed-off-by: Andreas Rheinhardt --- libavformat/demux.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/demux.h b/libavformat/demux.h index 41d1318f75..4e8d042e75 100644 --- a/libavformat/demux.h +++ b/libavformat/demux.h @@ -37,7 +37,7 @@ typedef struct FFInputFormat { /** * Raw demuxers store their codec ID here. */ - int raw_codec_id; + enum AVCodecID raw_codec_id; /** * Size of private data so that it can be allocated in the wrapper. From patchwork Sat Feb 10 23:04:04 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46162 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752559pzc; Sat, 10 Feb 2024 15:02:36 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUluvyyLNtlw4o7vfL1TrVFhdMkIeyZUzJDhlCItPYcK1lZm8uiXH5n7/37UqAC/+PNXgFij15lxzsSieL/4fQ/WGj5ri6OXAanzQ== X-Google-Smtp-Source: AGHT+IHRUtTGqH4OBgAOdhb68FWAC8vKq2NNcH1W3iZJNDApfeAaJjiY0KPRcyyAj1su6Nzoohwa X-Received: by 2002:a05:6402:528d:b0:561:64e6:b5c with SMTP id en13-20020a056402528d00b0056164e60b5cmr2536436edb.7.1707606156740; Sat, 10 Feb 2024 15:02:36 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCX2/rBzMbbcjytSS6W9zOFzA4XmIIh5DKqJNDbqr0eCQlf+rXRwx0oTbjwullzgQpt98Z//RdrA2j7Q+yCKtPxw14ReaqEWG8BKcK/QXj/8g2JAHdtRt17Ree1UbEXhSlT3+Ee7eo3zNVo3pmAdHtDaBXQYgbbtqjd+Lic4sB8DMkK/9YF1FFx0WLqZB4MSOFTLAanWFLE5NHnhODnHjXCW/F8nibEvwYVBqOqrSL+WSrXvIIeuAM5DWz5p8QgprHr5QwkTHRf2U6hoo2RjdXeBsGHrnSI1BLJ7SAYIqKr8L9NuoVNJO0tqxTZzj0CiVR0IgR1548wTJFZOyPtzjs1g2i2b+vfEhcnNW9ayrhm1eIuahs2g5EoA2KpNiqC0uWpH7/o7yNmFLV5+BcHN237PfI/CKUTBcVkyd/9K3jjYQc0JMGeK+vY63Pmmn4g193Y2oIX+E+Oo0/HEC5fqR9Ojm35jvzmYnYnnDtcT0BF0Cjdhj/90xH+Z0/M59Dzj56FhmWGqyn1BA98YoHHMho8+I7Ww8R2nBw3zje+TAUwfbqVWhucvIahqb5gf6yFK19CfhPXDAc65M/wz3yDm52GO4IQY9LvIpFUqUAxBTFLjOkIr5Jv8jTngbpLLEMBcij7QejSQa1hZEzDxdMxjUzDynkAiQggzZUcMAWoXUhDnyn7vBEATjrnoLvOJkioHdkvuYNUuxJ866p8qn9MU+6sWsFjX3Rv+6GKCkxard1ulRwf10pXcDcdqGq7stixHNfrMUnOBHX4l/jRccOHyPkx1Fzo9fjOA8NdRcSA+UdKTawMTPAXjKU787pzCGoFGlRIzNjYfow743P8ScEjxcJOMVPjCCi50DGRKh339yLGK5wTbybQcL1fhoQ8zvwxl9wWThmlaBiX+xsLWRJgErXc8Ttpmlt+9q9/uwX5roUskvecF27q1vdHKUMF5KayqjJoAmA NULOpVY8OI0sy0rXhjmYtoWm44nNzAKhdHecUMcukoNz7v4nF1qgnH2oZA7t0+Q6U2nmrdkKwoOVJOpQ/GZ+Iu121/z6pKhIwHdOLYLPhl0jw839iSCnM2rxx5R855tDR678HieaPlLbQwZ5Qwl7vhFHVd8g2mr+lUcpuMMjvivi4TaNQ2tW1vV6EnDPAg/ucJu6MhWEhPUPRZMuY4NrhX9hrk8AV8cJ+LH7CCanPnFlEmd6o2Dh9mJ36v40KVB9ZIXNdB3SjpK8DTPonnaTgKj7UTDoSrYNp5cjhkD+88gMcC/muIzCzNSHomOSwmCcy3Bn4WIYbolU1xCD2wA42Yluy9YT0hcwmpywVKTztC8A509esUT/APdX/za7kp0d+HDY+nz36ETY7V+BNR4XDkm4rxco60Ps6CNGny0eedWmSTCRKz/nvzLaOOVjwRwiZQ40nljbRo8n9Ywe8XNv97FO2oLBRCy0MuXyiQNKDdAygRm7ICiZ2RuStytY0EMO7z7mMWYlo2XFurhJYLLt3j7u/TFndrT5Ssjs2cRi3g+n/UO3j8eLKk0wD9Suo6Btrhqf8QJ6hDCtKDwwKkTrQNd7gieZdu Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id w5-20020aa7dcc5000000b0055ff9c2cecesi1185004edu.369.2024.02.10.15.02.36; Sat, 10 Feb 2024 15:02:36 -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=@outlook.com header.s=selector1 header.b="mU4zrQ/z"; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6B30668D0F5; Sun, 11 Feb 2024 01:02:33 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2058.outbound.protection.outlook.com [40.92.73.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A7CF7689245 for ; Sun, 11 Feb 2024 01:02:26 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eqWaKwqvLmFijAeUYiBfFSF34XQlIFE7digeA7S2s6PsjZZp1+F5RXpxPD02gbvqqpM5RhJ8kLPXEJ5Ws/09NmzW66USK9XVkKUXlCz9xFCYmUkypoA7YYAcS5xAVGtUTM3dtBoYbaIkmlsAVl3FTk7lCgwTcmegpCk7l+kR+LpN41k97fgN2WAZQPQ9B7A5IZzuduPvgGq7xDczz/964PMERkku9/M3j1eWF+WB+lCOd1NQkwOaAxGetOwun0sX/6cUq2cXqPKM2oh1FEB0x6PBmm4EMKEKFhUsDQZnVlFjtE/GzbIEYfJ4Fag+d7FIqK3Bs9DbMTcWbRz47gO7dw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=2ZwHzLLkOmiUL5ekAvzftBODpE4090pz2dxWDk8KEVE=; b=LzQejtc3Equtlmp9w6T8CPAmso59ndC4Vayn5jSpc+BK38dw+5db/MHPvmSfNb89bdJoPMaJq3VFRYsTnq99qsPgZ1AIkh4vnp5/KOdiT+ULHSinXH+HPCKMzaC4dTIL/PwurWPXMec2lGq2Zbcj1U/N1TPq+9FjtXnQv1+4vfP/aEDqPiolDZQIeaSAJNsBtbgKoWnnj8bNJ1fqBa+5PuNblknB+biVCCPHjhKSSJFzFvZUuu8Ck1/PNSgYU5q3l5WE7xBt/Bnmq0YhUqBXTZgT1xc1DsJZVOAZn/73edcqMCKwuB1hvsgyNAOOme2/N93NaO14cTOWRNpBNQw4Eg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2ZwHzLLkOmiUL5ekAvzftBODpE4090pz2dxWDk8KEVE=; b=mU4zrQ/zpmW3zi3rPe5GvRZobc/i4Lr2XV7bjlWM8IHr4svCfyFVoRBI1RAoAuvjiNoc+vKCOwHNthcHeMfKEpeN9VgAj88+JcGkMcVu8Q8TevtYUUV4eIuaGTrFrRrYCf73GTlxn5co3AgUlK19vvN3MhWSBdof3APS4n0qAJLlZeK3nEGVlhIvqRZbyffi4vGTEVSfIlCdUD0Fv437RD6oItrTW92/BpoUfpajzWhptmNbsdYWAwYkjNUPzKguF0wyaLLgVANsLQ9NFHNA6dwRa/HrmsFojS6RQvWtaxfaWfwSWMMhatK0FzgAqpIqVBgDgF9eneutIh3JCiHxeA== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AS8P250MB0037.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.33; Sat, 10 Feb 2024 23:02:24 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:24 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:04 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [O4uLF9RLWZ7c1/KYeKUNGJXlA+VY1XoDIFWXKpR/Fdg=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AS8P250MB0037:EE_ X-MS-Office365-Filtering-Correlation-Id: 1c2ec64e-af00-4f2b-5d9f-08dc2a8c5849 X-MS-Exchange-SLBlob-MailProps: Cq7lScuPrnpfz+h1ENKTbWTxnFGbPVjdCndMoSAvGurY8tkkmRZlrSt4x7frsu3y89POzI9ro9NGVt6g1cjyHqmLTKD/ls9lS2/H24VXSbJYV27o02Gmac5QJy8X/W3sdLMVyzUsUi9Q/9vLg85XqikoO7T+d7G0tiks08hvxra/CMBLw8lShoikMEfW9uEOFwXRHnZxSfKfsUMpiYiKQvHGrl5Q0K0qLvkC8cT0JNMIXk87wCAzMU4RaG2afYORshNrOdtrQwHARifFrYZ5xz2Jf43Vpke7LQbhUqjqto402QFFuEZJb9vXgWt7uTBGZgC+jpPayL8llTOPDP/ILarE5h8tkYR/0RTetRW/hV5bLDPceWcgmNquYpNwopHeAwp9JYYqfQ2AdK3aCmTgRMpt8zj56GXoY1WZtFmLfJHf341FKe7m/j0F2WzuhgavLBAOm4QpDugiv0h1pdKYb9HyIQhFqF2YV7hCqz1/hosJuIqUg6BjU4UvwyNmgcqWQx99KXPZc6zDtygQ0HJWhE9Ks1HOyzz4W7EF23iXmWfG/2W8/NhXlujJg32W2rvUbd7/7eMFyLYYYYyelw4YSbC5drXKmCEoGFJo540tpe52eSAaRvV7rIxUlAoA3IsNpy3Ls8ocskMp4wB6txEm4pQ4pSyPIGQ2eOg89Y1YrhKMtASoPWE0iXMqJMW40CreSDXstnkuRUdIkWHVw8yskgyRlNE2GE5RpVh6l5elJgDBDpKZNDX7IrBjhkpZTTOpRDG/eUDYC1w= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: q0mLlugxU7PdG5SqBJ/pyhbDiltBlJrm9EwPnMD/47QDiblLpvYUqTnkaXGvC6gpqSnxV3C9G+9U3eQcqEaxMvDp7iJsK79FP9A7JM/BbuzFN2l1cqt7DGDbALUz6tYE0ZSdKCiH4Cv0dYvQoNKpYbG0JdMDgHDDWW9Lq+bfAvF6O1jbqqYN0Bp3UHIVpCX7wW9jnyluhLR1CUFmeyQmvSqY/WsmMg47GIJB1QQPemqs98Y735bvpgtZGb94Vz+1pGaKK9lN3eo8maBWTHPojGuPzuuTecvBXg/i5johOQDWfzfj+AUfK/HQthbRq+fWGceBO3QbsSLwzS7U+MVvBkG3Elo0rbJH5jhU+nF7sVP1o2KNDLqC1p1J/lsiwsPYDDs5jixIlpG1P60a2yg0mZQPJVuM0hiUhQaQ5O4pOXSehtFrcrFNNPVUbC815E6KvbhI7p42bNcasNGYKIjcaA/zO/HLF/NeBsp9yfii9x6lMB9zAoKfN6ut4xAHNgO0d7TFE+KI2Am/hNk87oYdGAjoJr26UJA0lZcslwDjL9xT3DJs3a38FMdNROOM38gnjPlCycNayv6CsRNb1Lfgik77dm484vPyPuFJZwHF3eIEyoOhuQQBNxvkZL491j/a X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: JO249fhByZZYl1BZpSNZ1fbV3HYsSxYjlwkkUXjySVKJqZinMk3QcykE2Ktn9Qj6677wNkI2QJsVimyOuEZfJNbMyEtR0kPV+KWv85R5T26T1ZYT0Czyu8ko3EA40EjdFTq6tbm1Z7ps9WEx8mG8aNDFWjp368Q/gNiJ99xx3tYzTyzj7VM4Yn/7ZDzMq4Q3wuKrjL6hcQMYJNgXYDJhC1zwsL9m2RIa5i02KD3LT7eovcaULFomRgenMX/akh02Wp1lkzD4Xp5OdQAS1VIR1BFXQycejheTurRfBTGeaKfhNHCI5mwRw7OJEr1X98bNuq+35Q3GvP+ztp7dRfG8G+ULdNDxyAiQ1cTMcBI1FhgR67S1h5Zk6jGHSkLVE+THrtTLB7UVgJ5Vn8Hw0fSfkgqcp7Q0U6Zj4WYgSt+BmDGSVrLT+NOK9OOpgshpGi0CnOD6LqPyM+YI2Cg2VaH1U3bE9q9dNm9pX5E+KH+3MiZ9MjV7MByJ5slRmHoLqAFwOvmZaZ5mVy9Qv91SvJUzdefJ49nvpmooXxoQ3XYBFw3cpjTkEX+yopWRCmARSGvkTe+QI+R+n8tR8DX+iPEGnC+fRz+gY/B8xILnb5yKR5jA2FQ1/03YRT1DbkCiexcqF32Q8nVBHNPXZJxSZQxSU8YDuNwqm0WAgVqq+nEDnQD9yUCTVgNvaQ+rzaf4a7HN4gFOgzPf8bInr8VuLf6W+98xHzYHe39SQRFdgD98uMy7KSMAzZeYD0tpv8J7KS3eQNZmwCf2I/UmfEIaPjFSU82fsRSKD0kdZB2NVjj7kZAY0Qt3IdTJI6XxUHqXP18J89v33E0AQ1Kt9ibndo40ahljB5RxZqbMoCHVh9mZi9i8jh7eIUbT7yeF7YlgZ8Vb9t2LuDJ7gqnN4bCHwGBR2xXVl3MUTr6qC9T16SHbbL1KHYaNMw3tqvTu+lpK1V4bENi6MMcXwsP0uv8Hhs9tw7pPZIbW3RCGfb7JT/XvbGiFmqd16iO/i1kSqAsH8/br7pmNNPie2lfwSAsKlQBkHlyPYn/TcV8+g4tzrqKxJZCMYcAc0+n4eGdMZt4f5/5DvvVEYLJwmeYMss3SLn6WqCujsHvwejN1U147cqfcBdRyqTYhptZvM346l0aFyadd0fkyn9rvE9dtP5bBc4fhfrEgjg98F0H6VImM5ZG8sb7e8AB0KsZNnSkdmqGcGuXY8TYuRhfWmfOl09y6gm3aNDVW8kXA3Es5hNKfOZjmpREpJzDxSEVPa4EtRatn8M7VQdGnSbwGXm8bspX+12UpgQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c2ec64e-af00-4f2b-5d9f-08dc2a8c5849 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:24.6624 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0037 Subject: [FFmpeg-devel] [PATCH 28/35] avfilter/avfilter: Avoid allocation for AVFilterInternal 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: +Bb8m2nSeL5a To do this, allocate AVFilterInternal jointly with AVFilterContext and rename it to FFFilterContext in the process (similarly to AVStream/FFStream). Signed-off-by: Andreas Rheinhardt --- libavfilter/avfilter.c | 22 ++++++++++------------ libavfilter/avfilter.h | 7 ------- libavfilter/graphparser.c | 2 +- libavfilter/internal.h | 16 +++++++++++++--- 4 files changed, 24 insertions(+), 23 deletions(-) diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index befcda48cb..dbe6409274 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -159,7 +159,7 @@ int avfilter_link(AVFilterContext *src, unsigned srcpad, src->outputs[srcpad] || dst->inputs[dstpad]) return AVERROR(EINVAL); - if (!src->internal->initialized || !dst->internal->initialized) { + if (!fffilterctx(src)->initialized || !fffilterctx(dst)->initialized) { av_log(src, AV_LOG_ERROR, "Filters must be initialized before linking.\n"); return AVERROR(EINVAL); } @@ -651,15 +651,17 @@ static int default_execute(AVFilterContext *ctx, avfilter_action_func *func, voi AVFilterContext *ff_filter_alloc(const AVFilter *filter, const char *inst_name) { + FFFilterContext *ctx; AVFilterContext *ret; int preinited = 0; if (!filter) return NULL; - ret = av_mallocz(sizeof(AVFilterContext)); - if (!ret) + ctx = av_mallocz(sizeof(*ctx)); + if (!ctx) return NULL; + ret = &ctx->p; ret->av_class = &avfilter_class; ret->filter = filter; @@ -681,10 +683,7 @@ AVFilterContext *ff_filter_alloc(const AVFilter *filter, const char *inst_name) av_opt_set_defaults(ret->priv); } - ret->internal = av_mallocz(sizeof(*ret->internal)); - if (!ret->internal) - goto err; - ret->internal->execute = default_execute; + ctx->execute = default_execute; ret->nb_inputs = filter->nb_inputs; if (ret->nb_inputs ) { @@ -718,7 +717,6 @@ err: av_freep(&ret->output_pads); ret->nb_outputs = 0; av_freep(&ret->priv); - av_freep(&ret->internal); av_free(ret); return NULL; } @@ -790,7 +788,6 @@ void avfilter_free(AVFilterContext *filter) av_expr_free(filter->enable); filter->enable = NULL; av_freep(&filter->var_values); - av_freep(&filter->internal); av_free(filter); } @@ -874,9 +871,10 @@ int ff_filter_process_command(AVFilterContext *ctx, const char *cmd, int avfilter_init_dict(AVFilterContext *ctx, AVDictionary **options) { + FFFilterContext *ctxi = fffilterctx(ctx); int ret = 0; - if (ctx->internal->initialized) { + if (ctxi->initialized) { av_log(ctx, AV_LOG_ERROR, "Filter already initialized\n"); return AVERROR(EINVAL); } @@ -891,7 +889,7 @@ int avfilter_init_dict(AVFilterContext *ctx, AVDictionary **options) ctx->thread_type & ctx->graph->thread_type & AVFILTER_THREAD_SLICE && ctx->graph->internal->thread_execute) { ctx->thread_type = AVFILTER_THREAD_SLICE; - ctx->internal->execute = ctx->graph->internal->thread_execute; + ctxi->execute = ctx->graph->internal->thread_execute; } else { ctx->thread_type = 0; } @@ -907,7 +905,7 @@ int avfilter_init_dict(AVFilterContext *ctx, AVDictionary **options) return ret; } - ctx->internal->initialized = 1; + ctxi->initialized = 1; return 0; } diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index a5d9398c9a..a3725b1516 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -403,8 +403,6 @@ unsigned avfilter_filter_pad_count(const AVFilter *filter, int is_output); */ #define AVFILTER_THREAD_SLICE (1 << 0) -typedef struct AVFilterInternal AVFilterInternal; - /** An instance of a filter */ struct AVFilterContext { const AVClass *av_class; ///< needed for av_log() and filters common options @@ -443,11 +441,6 @@ struct AVFilterContext { */ int thread_type; - /** - * An opaque struct for libavfilter internal use. - */ - AVFilterInternal *internal; - struct AVFilterCommand *command_queue; char *enable_str; ///< enable expression string diff --git a/libavfilter/graphparser.c b/libavfilter/graphparser.c index 96ef6b15bf..229e647c0a 100644 --- a/libavfilter/graphparser.c +++ b/libavfilter/graphparser.c @@ -626,7 +626,7 @@ int avfilter_graph_segment_init(AVFilterGraphSegment *seg, int flags) if (p->filter_name) return fail_creation_pending(seg, p->filter_name, __func__); - if (!p->filter || p->filter->internal->initialized) + if (!p->filter || fffilterctx(p->filter)->initialized) continue; ret = avfilter_init_dict(p->filter, NULL); diff --git a/libavfilter/internal.h b/libavfilter/internal.h index a6cdf9994c..3d46923cad 100644 --- a/libavfilter/internal.h +++ b/libavfilter/internal.h @@ -133,18 +133,28 @@ struct AVFilterGraphInternal { FFFrameQueueGlobal frame_queues; }; -struct AVFilterInternal { +typedef struct FFFilterContext { + /** + * The public AVFilterContext. See avfilter.h for it. + */ + AVFilterContext p; + avfilter_execute_func *execute; // 1 when avfilter_init_*() was successfully called on this filter // 0 otherwise int initialized; -}; +} FFFilterContext; + +static inline FFFilterContext *fffilterctx(AVFilterContext *ctx) +{ + return (FFFilterContext*)ctx; +} static av_always_inline int ff_filter_execute(AVFilterContext *ctx, avfilter_action_func *func, void *arg, int *ret, int nb_jobs) { - return ctx->internal->execute(ctx, func, arg, ret, nb_jobs); + return fffilterctx(ctx)->execute(ctx, func, arg, ret, nb_jobs); } enum FilterFormatsState { From patchwork Sat Feb 10 23:04:05 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46161 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752612pzc; Sat, 10 Feb 2024 15:02:45 -0800 (PST) X-Google-Smtp-Source: AGHT+IHAR6y/yRSjROLzj1x1XmZVqqeU5vtj+R5CAnfImXTG+mVjbnL8+sMfXEGsuLS6QxRko7UZ X-Received: by 2002:a05:6402:31f6:b0:560:f90e:4da3 with SMTP id dy22-20020a05640231f600b00560f90e4da3mr2347803edb.0.1707606164951; Sat, 10 Feb 2024 15:02:44 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUVc+vlYSqMR84CQVsjWc6H03hsCc0QwSIqH9vt+2UKmpbvVHPCAnS7kblOmY/LYPfXLP8Dat6n+61NjbUEqSUsD7FhfFDCBWamHcS0DIPxTLFZ/oFg3cYEQZWgGRsFNn4hshqvRF6y7aV0GNPVb24Ehtlg6RugKkYgF3ALV7o4E4JoLASWgJ5HCTi/70q6dqlSahn0aiHCWKe5fWPdZbzDP+HaJMdbX9CLefu7r/F+38ZzcKPl+OJdz9hfsJnQDWwYMS07Dp0l75g+WO07F9B1MHpQhk+0wjdz+oimWQVyLqQCMX6AcNUzcvbkqsac6Byzh3dcjiTeRT3uproXOTPSWZMaRZqbHLSdp4HP9Qn1od3jTFVnJw6PYicplkZZwe/fANUu1oK5VK+1krlVTap4Dlem+gsQV8hpzfX9mJRPJD2wi/DmyKCvKWFPnYYEZX2p4KUkn/5/BsMvW779wFMX9MRuDzoiWokQ6i/6hTcLPuXeq0VBYrXQuBCmdC+ZvYeHwLTEh39VxQxoH4ys/5nqLA54KjjU40QADBMZwzMUwM2bGn2K1Zn5br2sTX+HLU4HoWWWKYb4NBkXpBeI3NjOF74kIQbZVdi3nkfWRaMgrs34v9D3GaIFjE8HhxwgKDznkWO4kKTDsvVcQQCPx2aBVY1DCSgmSVvKlnZSCPmhyDKSzOs0iSO9tXK7Fxu82ayB3MjP4Pp4fD1RmqdZIj4uaD+ETXtVY7OYDCN1Ciq8NIAYPs//0jFmPr1pDq0PVVL5A99kkyxk74c9zHNfPrUpaS1tLECm2JbKQ977zjze2ooc/Xy7vfZVq+h0Ji4UfPIyFHTYSrIFDpLIrFwcyjhxpFhfkFkJh6KpydIHPSuKM1k2OaLZsrTncWAfhIJSwyc261/+eNx0A4aAFInt51SI+8HYkLZNfCgLlqo+sBjz+EJaT7xYcDOy89X157wL5ba05D xp7VJFOrYe1+7LUNDVgYgf+cXSkljBVvQNalQ0vdGr35BKjKx1faFhqsy5CnOx3ecTabtA2SnkNJID3aqdp77TPew+zTXAVlBF7d76KDYY5YkkkLqM2UhMZ8tptt4rUM2H80SykR3cJdHqYDoHSSDsMNKilA2idHUmYBPvPkCiME2e5qkVNfGOOrfbRfs9y1IbPCTgbkRy/vpSZnoU6Z1G/GM+5NqdQQ8m0VPYkYv899J804lR1uNeISYAis5M83d4qLNdNxaNPgN9oduiZnJAQA/UvHDmPoju5G2wdF1xdVeAxRXE4pY430CACmUr+Ud0QHmqcV/qUgQSKR9wsVNonAixGkaK46THc/Lx/YV/5/kuzOtdWjgdmdACDkw0mIvbxUk7fRjDM69wQmGCbOzg7WfnjLcIkero9NOT7Ah2xRwMu7I3Xgj9OXKgTCNRwU5cZW76pHCE9uFuRaJAKQRUUV+4c4e8hig3DsYjzuhR2B4I07KYQmxqtm6aBv8lkHbrgW/q2AvhJjNr2vG76l7MxxUQCcX8Z3mpZvDUgFfuHezpcfX1sJqq1hEe3DPidDPMo+5vIaTggTPtkyH2z0V+ImSmtDGSQJz1rHQ= Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id z96-20020a509e69000000b0055d33a14abasi1219400ede.367.2024.02.10.15.02.44; Sat, 10 Feb 2024 15:02:44 -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=@outlook.com header.s=selector1 header.b=EdtsM3Hf; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7BE3368D11C; Sun, 11 Feb 2024 01:02:38 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2058.outbound.protection.outlook.com [40.92.73.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D550968D085 for ; Sun, 11 Feb 2024 01:02:31 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NGCcmo/QJJjJidFqVInFIVesmgWNNj3objjtM9UxU23d2AB+oJ+mn/wtBkKQ1YrEwC4BFBLiozUbVcRDV/tNB3ha3HB+cmrlmpyENPZk2rCJ93qq0wfoNFC1lhetEA+ZRvtS69/0zqfsqojfNPcSp9it+XIsgyBvWpgB49b6U6q0owkAozDMotu+oYygxUUWGAzRC/fg5qS/VovDkFt6Q5r7BrHS+NSvMxEH9WUuDuMJ+fEDFHe2ID5jxIQ/AlQty1v+VsQFSk5WZsH9hwU2jvd1J3vMjobNPVFVvX30K1VZyvnZgN3s228+bc2swtUnfu6S29/jvqIPar2xpqBt9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ltuuPRbRrjfdG1wCs5EajXtutbd1NvVO7yAIfWMR8Mc=; b=TLFfqZiw/BiFyJazugSN/Z7BN08oUBHSm+7p87ZZKW+xC4SnKy0vNkJ1sHlQ5g+bxXHVe3mrK03YMjK9lvXxOHZCvg6OGEmdWno3pks1uEcCddF5kL9vpa0Xe3SABIDfpLgP1S58YR66zfKJ4A/Qv6zrlWVR1LzGb9gUG0aZNdMDsfj/jti67Dm9NImz/ywnHEIy9TY7c/u0kyPlBF4OxFsxi7mjoza1Ad5xBFZie4AktbKJtqWBl1xApC9CEjhLk4oUQarE90lVgf2676GVeg9FxbcQ+S5+GEeVKBolotxi8ejr9NcShA/3bWZgyWRvDBTloQPzMWzEfSA58V+xtA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ltuuPRbRrjfdG1wCs5EajXtutbd1NvVO7yAIfWMR8Mc=; b=EdtsM3HfFpHllhkcPGLFjw01AixyGd/952gZarJ+lI5G3fV3Kw9Lgln/Erm9yAaAs6UlfFB1tU5Wdjo8agh1AoGjrPD4MfDyqKh5Grpw51Kps9R4iCSwlwJiwQW7Bj8CS3j+8l/9bv9OqKbNB3z3ZBVqTJEUiWfIueTUZjpnhfGrE4uQ7Ad3kgSeKdsF6X9ylnlxIzrl3LXEYkPkIKoet/ghwbuo8y/NMWNU5PlsiqdA3qZTCPPLSCqrdD9K2lc/dEgNzrwYgGM+AtHT5VF28hlNp+l4EuKTvORjo7ZL38zZVil+wqA+xaztAbTPsqMLYxOKxUpMtN1iM7IWOLREJA== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AS8P250MB0037.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.33; Sat, 10 Feb 2024 23:02:28 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:28 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:05 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [3R9z19tfZ7qKBaQDzAQKD0H4mMVD0WVSZsX14IgI+fU=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AS8P250MB0037:EE_ X-MS-Office365-Filtering-Correlation-Id: 7e6a1a73-6c80-4d3d-bc75-08dc2a8c5ab8 X-MS-Exchange-SLBlob-MailProps: Cq7lScuPrnpfz+h1ENKTbWTxnFGbPVjdzJr97b8hI9Gl0My2vSz+cfr7Sf6cNVOiEZKfT0+kBfW6q7hYhqnUUWVBJGJRdRO/Yz0GzzspkP4EosoHko2p9FjkpgrF4QjSuv+4pRpwUeaeUb3oMdOMfO5qh60m7uMP91jXz5wKBtiQDa3w6cDgRYv9/3pr8gWxz1JEmqScXquxEeKC0Zxk7hkHfohVucwslMbMns3QYYNF/Wm8iHFkum7u1qGJ4RTl+jdSGtmsGE7UD19YGwQF2PdPyBB6olG4seCYuCud2UVTBAM5NQ4cUYyRiksg+L0OaDz6T9uOBV1uFSlX7mmGTVpHx63V5ei7o1nh2L7pd0299g0Qd2+l74K0P8eKtoP7iqBrDGltB98jO4nt2TFV6twpobqWyCOCy+BAbXyeGftEKgGvNeLtfmMdPOUjVzU7cjM5g/17YTKn/ApN2A5aBLGqDAxvAXgQuffVlDh/xDtQPzg+prWGKkKie06k0wwf8xW+hi+5Xwo20ubtfdwbKiylh5ko1e7ePx4GydTVX4OapwWT4QyrMJG8+/Ce1TqgT0XFb7eP0J9bAwZMH1VAyINjGXPRuDX4VHkaHC0Z0YNHqYwFc1q2R6bC7CakkwV7jV9HP9eQ/Sa9jxzPywC2I5HraQAnFf8kCq/9Kt8oMJgarDA1RECN+dRRl+GTy+c8cWAIpJCPMIIrTwYqdO+mwPcSkFRAdPCwx1F5/UjvcRFpXOJX8/LEXDUMFm4zYjJo/hneXn9jQxk= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: H7Gbbta7vi5GIPOIY+IV1mn2ThMtueTCheQf4gI31m0b1U1MxBLgoFRq9rDA6UwFiZRW0yojBaDa/B+hOtsB1o7frQnw9sMUuo+v4bRX9UDQZB2pXBhggbgfnFqs2iwy58ahUA1M3fvcRZS4BZ8EEuiRlTlMZGvYHogy2QrmOdMwOh5N5PpXLgGp3o4yjCm/gMr8J+DQz+UoVVSuLZzS4UUOCfAIqVAbn823IiPuYa6L1ntKKBqwZUDoteOyQRcA4CvjdE54heUaq4eCYZpVCrufgeCikWrdSE556WyKD3lGkncZoLZK+fMZ3j6f+LmQH4nkJuPz4KxlKKKMDMDg55JRSRCBRCOhP1LSF7W8FKUlKZ1dngROMQnDgvdKgHkTZd58Va5TfqaBCkwHe8WwjCgMqIdKnZf/BVi0r9XqXAMP1e4as3gMTx8zE20oBpZjg5LfWbxhMe9Nx+5VDq47vnxnlQlqLPTzrZaqXgFAxfjOaQ4rdEn0TpTMcoWNIPrw1u0yIovF6uGFA2ArmVRaQY0TtxiT02bbPbC1+UooJu03NIGAzGdN234e6rFdVIGZl4jT+BslaRPw73KkyNPjBNKuXP31sZf5AOHjKuhN1T4Yf2/2yxg+6nThrbzX7fJA X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: oZRvyYNEDHfnIXPXf9jr/X9CX1u2S/PB0GUagWhFk4frOnGeZCy3CBsXH0BpyXfG2Jq61591edrP0gNDeNLTOK3/zyZnnelhyihOlLTF3PK9UE6sj/6MOizI0Fs1wfn1v2VmpsIQU6ztY8GGSBPwmUgPWB9PZfSbVlg9iRc1lzoxacGnhq95ZP2Vu7H0voll3w2q51Izdcm+OC94fMvwMDwPbEppdrdGk2O3Rtvc+0vsLb86ESES1TGpNJ3HVprflhSapPi78+94WbjC3nQPb5BNk8fqMNZISEoZyeprSG5B2/STCFmnKDcYoadmcDuAT9iUR0hvMDKzzVRO0fjl0JHldF5UShbPoIUC02v5wz/AspEaRVm/99nY6otsuxNJXfFSUMg95q5CxReR0ECcPmEV2K15RiMc8AxcHOjY+jiFKfXYm6mPo69ECHiM2EF0SKo/+dlg7AsxE8lmyVmUy4VULXy8lrzwYy8MOO5YhFRar/rgrPykzttjQL66hCjHDD75Ts16ai5KqbCgA4oskWXzZap0MBAK9j29TXJ1bOCpJizGsvrsFK1lwxcw0PDPpiRhcwVlCsX4qi3KlfAHq5Vcs0bdP4ztkSPfY7lVUHwOBWpbnZoNwUE6Ulr3d9DedEIyuyYFugVLAl1Vfpo3VWdNGdZJ6EBeh3tbsAg1HCZlpND90VE4aHGTeBbWPdUM9wfDpkpBoxdchuyr8tJa+qQd0/nZYPoZRAcbRx0Pix9/EZdFNQPb3a0oURNy26PGcBtLFT2DNckDJBrK7SLjRHt2//+kwaW8koel7KRbU3/YVJd/FJSxfpHUPdd9z/BSpGNQeM0epoSnWURO5D9giAWKyEqskNzuZAZQzrM9vGXQJbLmis8hZI6ggTbjyxAuWiHU/ZzklHDUD/XrWK9qn3bflY5xKHBrcw/vBUnZMf9jJiCJVOyfusaXDHTjEOBa6lfrxkqEfIIGD/FmZnVs87S6ji8ES1osnCAHObfMTenSBrhX0muEs6IkVW71+2EtLjWJrqZn34OLuv2XVOo1B9LW+FbRlnt6HT/ZUAbVybw1WBFlH4icX1So/TCsUw7lvZQSR4bBEc8TUv4LztD4OSho2M5lTOAP/oNQxnJHG0eHUa1UumD6F4onWRGrmrmMs78TlKMksRROAOmtlYibHNnaGG/sw6DdZ1rbLkn23gtireRUWSGt+JjTzT/0StFaNi1nXjZEDKipmiW9yFNPke7Nacu57sjyQoEldDkytLQtiWDx5Wi9HsvYIhwCqutTzyRHeCMWboF/bW2FPMP7ug== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7e6a1a73-6c80-4d3d-bc75-08dc2a8c5ab8 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:28.7251 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0037 Subject: [FFmpeg-devel] [PATCH 29/35] avfilter: Add a header for internal generic-layer APIs 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: bppJBkIoeHw6 This commit moves the generic-layer stuff (that is not used by filters) to a new header of its own, similarly to 5e7b5b0090bdf68e0897fe55ee657fdccc0cbca2 for libavcodec. Signed-off-by: Andreas Rheinhardt --- If buffersrc/sink were to be treated as part of the generic layer, the declarations of ff_avfilter_link_set_in_status and ff_filter_graph_run_once would also be moved. libavfilter/avfilter.c | 1 + libavfilter/avfilter_internal.h | 84 +++++++++++++++++++++++++++++++++ libavfilter/avfiltergraph.c | 2 +- libavfilter/graphparser.c | 1 + libavfilter/internal.h | 50 -------------------- libavfilter/pthread.c | 3 +- libavfilter/thread.h | 28 ----------- 7 files changed, 88 insertions(+), 81 deletions(-) create mode 100644 libavfilter/avfilter_internal.h delete mode 100644 libavfilter/thread.h diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index dbe6409274..85e2936e6e 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -39,6 +39,7 @@ #include "audio.h" #include "avfilter.h" +#include "avfilter_internal.h" #include "filters.h" #include "formats.h" #include "framepool.h" diff --git a/libavfilter/avfilter_internal.h b/libavfilter/avfilter_internal.h new file mode 100644 index 0000000000..3dd51fb993 --- /dev/null +++ b/libavfilter/avfilter_internal.h @@ -0,0 +1,84 @@ +/* + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* + * APIs internal to the generic filter(graph) layer. + * + * MUST NOT be included by individual filters. + */ + +#ifndef AVFILTER_AVFILTER_INTERNAL_H +#define AVFILTER_AVFILTER_INTERNAL_H + +#include "avfilter.h" +#include "framequeue.h" + +typedef struct AVFilterCommand { + double time; ///< time expressed in seconds + char *command; ///< command + char *arg; ///< optional argument for the command + int flags; + struct AVFilterCommand *next; +} AVFilterCommand; + +struct AVFilterGraphInternal { + void *thread; + avfilter_execute_func *thread_execute; + FFFrameQueueGlobal frame_queues; +}; + +/** + * Update the position of a link in the age heap. + */ +void ff_avfilter_graph_update_heap(AVFilterGraph *graph, AVFilterLink *link); + +/** + * Allocate a new filter context and return it. + * + * @param filter what filter to create an instance of + * @param inst_name name to give to the new filter context + * + * @return newly created filter context or NULL on failure + */ +AVFilterContext *ff_filter_alloc(const AVFilter *filter, const char *inst_name); + +/** + * Remove a filter from a graph; + */ +void ff_filter_graph_remove_filter(AVFilterGraph *graph, AVFilterContext *filter); + +int ff_filter_activate(AVFilterContext *filter); + +/** + * Parse filter options into a dictionary. + * + * @param logctx context for logging + * @param priv_class a filter's private class for shorthand options or NULL + * @param options dictionary to store parsed options in + * @param args options string to parse + * + * @return a non-negative number on success, a negative error code on failure + */ +int ff_filter_opt_parse(void *logctx, const AVClass *priv_class, + AVDictionary **options, const char *args); + +int ff_graph_thread_init(AVFilterGraph *graph); + +void ff_graph_thread_free(AVFilterGraph *graph); + +#endif /* AVFILTER_AVFILTER_INTERNAL_H */ diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c index a43c23065c..c6f94bf0a8 100644 --- a/libavfilter/avfiltergraph.c +++ b/libavfilter/avfiltergraph.c @@ -36,10 +36,10 @@ #include "framequeue.h" #include "avfilter.h" +#include "avfilter_internal.h" #include "buffersink.h" #include "formats.h" #include "internal.h" -#include "thread.h" #define OFFSET(x) offsetof(AVFilterGraph, x) #define F AV_OPT_FLAG_FILTERING_PARAM diff --git a/libavfilter/graphparser.c b/libavfilter/graphparser.c index 229e647c0a..5d6dcdb9d3 100644 --- a/libavfilter/graphparser.c +++ b/libavfilter/graphparser.c @@ -29,6 +29,7 @@ #include "libavutil/opt.h" #include "avfilter.h" +#include "avfilter_internal.h" #include "internal.h" #define WHITESPACES " \n\t\r" diff --git a/libavfilter/internal.h b/libavfilter/internal.h index 3d46923cad..0e3f68d1f4 100644 --- a/libavfilter/internal.h +++ b/libavfilter/internal.h @@ -26,20 +26,6 @@ #include "libavutil/internal.h" #include "avfilter.h" -#include "framequeue.h" - -typedef struct AVFilterCommand { - double time; ///< time expressed in seconds - char *command; ///< command - char *arg; ///< optional argument for the command - int flags; - struct AVFilterCommand *next; -} AVFilterCommand; - -/** - * Update the position of a link in the age heap. - */ -void ff_avfilter_graph_update_heap(AVFilterGraph *graph, AVFilterLink *link); /** * A filter pad used for either input or output. @@ -127,12 +113,6 @@ struct AVFilterPad { int (*config_props)(AVFilterLink *link); }; -struct AVFilterGraphInternal { - void *thread; - avfilter_execute_func *thread_execute; - FFFrameQueueGlobal frame_queues; -}; - typedef struct FFFilterContext { /** * The public AVFilterContext. See avfilter.h for it. @@ -356,23 +336,6 @@ int ff_request_frame(AVFilterLink *link); */ int ff_filter_frame(AVFilterLink *link, AVFrame *frame); -/** - * Allocate a new filter context and return it. - * - * @param filter what filter to create an instance of - * @param inst_name name to give to the new filter context - * - * @return newly created filter context or NULL on failure - */ -AVFilterContext *ff_filter_alloc(const AVFilter *filter, const char *inst_name); - -int ff_filter_activate(AVFilterContext *filter); - -/** - * Remove a filter from a graph; - */ -void ff_filter_graph_remove_filter(AVFilterGraph *graph, AVFilterContext *filter); - /** * The filter is aware of hardware frames, and any hardware frame context * should not be automatically propagated through it. @@ -415,17 +378,4 @@ int ff_filter_process_command(AVFilterContext *ctx, const char *cmd, int ff_filter_init_hw_frames(AVFilterContext *avctx, AVFilterLink *link, int default_pool_size); -/** - * Parse filter options into a dictionary. - * - * @param logctx context for logging - * @param priv_class a filter's private class for shorthand options or NULL - * @param options dictionary to store parsed options in - * @param args options string to parse - * - * @return a non-negative number on success, a negative error code on failure - */ -int ff_filter_opt_parse(void *logctx, const AVClass *priv_class, - AVDictionary **options, const char *args); - #endif /* AVFILTER_INTERNAL_H */ diff --git a/libavfilter/pthread.c b/libavfilter/pthread.c index 1a063d3cc0..a0336a8e04 100644 --- a/libavfilter/pthread.c +++ b/libavfilter/pthread.c @@ -29,8 +29,7 @@ #include "libavutil/slicethread.h" #include "avfilter.h" -#include "internal.h" -#include "thread.h" +#include "avfilter_internal.h" typedef struct ThreadContext { AVFilterGraph *graph; diff --git a/libavfilter/thread.h b/libavfilter/thread.h deleted file mode 100644 index c709f17a33..0000000000 --- a/libavfilter/thread.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef AVFILTER_THREAD_H -#define AVFILTER_THREAD_H - -#include "avfilter.h" - -int ff_graph_thread_init(AVFilterGraph *graph); - -void ff_graph_thread_free(AVFilterGraph *graph); - -#endif /* AVFILTER_THREAD_H */ From patchwork Sat Feb 10 23:04:06 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46163 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752669pzc; Sat, 10 Feb 2024 15:02:53 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCX+5ui4YLBVVSdp1/Bakn+8b8S8BTe9Rxc4vTOXMPWwKp1YI93QE0YqFJuyBpmLMbziu4NUbuv+CQL4DZBppi2R3cIZ7YtrJv9WlQ== X-Google-Smtp-Source: AGHT+IGha5QquI9in+BYmDuieIqhyk6IMw6kB/JUo2tnsNwfe3ECfaA2QL9VpYe8hFgQ4ydrEfDf X-Received: by 2002:a50:9517:0:b0:560:1f1c:cccc with SMTP id u23-20020a509517000000b005601f1cccccmr1810662eda.4.1707606172933; Sat, 10 Feb 2024 15:02:52 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCURmnuf3K7B2cH0tdv8mgghyPBuKU6kYDLUdxLXsM/r9NHd3+bVH7X52i/0vSZ2jNUzXia8H8GoG/oroWWzV1WTOrGpVXwOzfoRv61z0pjIFQ1kzv3Z/mNwCAikLCyN+4A2h9n1LhsIwW1CH9emUIqVaxfw2OB+7CHmBwSWix9EdsElHpkMbGhzhaAc1Sl2s1FEJFTu6FZ8g1ikx5Ky0gjqpLqq6ZBM+TekIdke0lilXgwta7WGw5l/t5wliD7SasgrQfJqbr/zdWle4ixTEkyPcL39UvBLnCvIC6vxSZLKaXTCeoMAsX5hYLGOjeesgjL+Bn1VBWpVEf4dTXfSKlZL9I3lywWLt3rRdiwtEd5P5aKBJDNXNmJNyH9gYELEGXPASk4x9OP6Og3ECRAnFJprbT/Ez2Lw6mvSENKxGuMhhHx75WqMco68EWezGwETMN+/o/jor2qaxSVWHlHN4h1sRdkS+GfceArUIn1nsE6bF4YinQoBSQrN3gK5gE2t4EG1ycMEYjEAzn5LZf6aLZM400xHruW33U3/9jEzpp1FLrKjs5tBNKpRdob6FOZfra8cuOitxWUQmRDaAmXTdf3X0QBxOd+gnXicGo7dNFAvivl70hF0MLvWobYEgNQArFBvOz69QBLrFAi95VVSJ/gGnqbHRh1FSUs+rgZAFY7WkQ7Hbd3d1MscBJAjOIUSeu1IQwDNinmdzbst+tXZBYuOlYfrr9rpQ78NZLBi8BfBUb9DkRLeFgyg2d8kZCAaOvkViQq2BDkhPoEbH6OfBcvBFSvlSnx+cGmAnQn5bPW5pLKxQ0WW4lB4zmmY76J1YTh7EvEKBGHGahmfaXfDM3v4qXvnbxQVg9P+eUi0AOqlTmWRMW9+1mFnpaCwgtL/CMhjD+iFYGYYySQWbHoOANMo22uH7M2HrS0s6YUHb8x6FYQUCeA7Ps/lbNW4mK6T92BpkR 9jX8PciNTN80mWiuevz5ELeKMWUM/y1Mbb/EguHBCQ3Nfq2Bc/e7o191wVb7EdJ2VPsHWhYJ6EXmlT5EDBRgMefQMHWgnsy+2lgYD3rxrdJBZCWESw8ZliW0dYt0qtMrnIggkzQBM13iXwWoXkqZTvYJvdZDUhjU3eZKLQgMPkJ3AAqLCAtpyDCAGfqtqVvEOCJTAAjvlQKl3QvTD/v2RMwud56VGasBp357Uw7uqrQfhiM9/dUZse9Fu3vC1HPdKu/pbziy0eckWL12E6kSGVJmOlinT9JIQzqP28CY3i5Lfmb0wDztwOzRoJj+Le9in3OwltADq2l4CCOvNEkB9N7pAvPrrckS2EUDKAj5rTBz7eCL4hciyMfq2o+IszS8gx7LuVZv+mA3ReVoM4W2F8RxrJmgHWfMGh2idshvXaTr6rdrQxhKLlNHdjSqXa5TUth4KUJXDl7eIX1vGyCpS8MSXrxfgyOpeJK1Beihcss1PoQilmRs/hwE33y5SooiB5jzXEp39LbuBr97YkXrr9trh2NNpV76ML76hkcTqZ4u9MFeaiGlkL5gDckpDW7uml5pBCN49lHZMtyL7EQRhUTsA8Nm/Vlr4jZg== Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id d15-20020aa7d5cf000000b0055feb4df095si1197245eds.685.2024.02.10.15.02.52; Sat, 10 Feb 2024 15:02:52 -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=@outlook.com header.s=selector1 header.b=CSVOUipB; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 80C9C68D0DD; Sun, 11 Feb 2024 01:02:43 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2058.outbound.protection.outlook.com [40.92.73.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1332E68D128 for ; Sun, 11 Feb 2024 01:02:37 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DNTg3p81EhRz1ok+iZCtwL2k10yPHBYtsc1y4roJHfRvg8qdJIT0xvPCVHZok/VBfTcDDvXQjx+AtrIHk5wryoVEGkUhjECbcksE8K3HJYTdJQ9AphtUyZmKj/qzPi6vbNTptOQc759ozHONqQ1vVzMDi36pJzi3HAZBeeWRJe0Xm9B8gw+VVcNY7c9De7a1dkyIap8y4lxOMjq3SPAXq3XKzfPE54sVk6fnKDCR6QUsaRASWTYeRQ7cNnoMaOr9XAU3TA2Nhku/vYr0zZyGKDlsEcJvp6ZTSioM3xMm0yj1siTCNiLCrFq/65e9C9GrTfYC1o2h1amNoiV+JLDBjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=N9G3POzUUnQ6xtDtaQSo24KiJqV2XsiyLWpMDbib1Xo=; b=bcLAvMUb6p739Y4UrI+qVwsuTARy8tBBwbV1Xt7S6MgE0CIWv5vh+ECuPg/6rO6l+oTlGEgRMQtAb5NzKDmGqGN6x/kSY+uW48tma3xoUYo+9FcXykZ9mkr6DEkT6NToO3tLtHluNY6tz6qstqcMTZVGLRFA5wxoviCSrDVB/h9LDm4tgBVpl4g+tpS9IFQZ6Mgl36q+HUJZuYIWd0ZQs5ZR5jsUu40XpaLfEcTFH3JVV+skNubKYNAMNjYTkWkzPdNNqtL/cWcwuxmvLqadmHVrFWsWRrJDr8A4Y4eDSM9je5s4+I4IZO93Cwkl4J029kXxGQ0PP0MJinDNxLOr9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=N9G3POzUUnQ6xtDtaQSo24KiJqV2XsiyLWpMDbib1Xo=; b=CSVOUipBifU4WBWDSMELFPDxC/Y1TTldOqfX9Pd86DFn+Xc517Yzz/sulECuQJZAxL9t7t8nQ8fhJEvVkgOsUio3WO8PhJe9jS5wrjOQ1TEohAOgEWwqERxgQl6D4a29O/KekJLwj5m86p2xLVX2eZacvUMOhQ7cLi55/9Dc02QUvBTIFfOwC/Z8qE+RJjTrCn7PAlyjWrRBHtwXHvnOZflMT4mRT5X8sVAP4qRVz63Ksw5fQsAYUVx2gPvfLT1zKcAUdmXgR77a3QgmOOYz2O76xc3w3anLMCHjwanQaBbenFCkvihlEgZrIlffwmIUO/WhJbmw4cKCc4TfRbbGJg== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AS8P250MB0037.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.33; Sat, 10 Feb 2024 23:02:31 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:31 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:06 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [lEXOR9VXPVeFz6Qwpg7UdoxFb6qch/G51g3ZTQN4tUA=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AS8P250MB0037:EE_ X-MS-Office365-Filtering-Correlation-Id: bc6a3b45-fe6f-4222-6810-08dc2a8c5c38 X-MS-Exchange-SLBlob-MailProps: Cq7lScuPrnpfz+h1ENKTbWTxnFGbPVjdZq+qbyJHi5reUj4SIbKGs4XhXKRqOppkr4sZCvw2IIqYq9m4it5/Yg9ukxHRQq9MNYbPUZ8XDyTSzAnMfAdqjc27yBCcTSHXldqdGxszNm+qhm+9xn3YeIaM3gXoMvNazgynWFbRqm0ruMnXiYHoMhZUCG60761qetbrl52QjYAXnt9XYb65p/C+8XGMFvw8IgPUc68JAshocWQfAo5lyfkbG6Rw6at58S1EkAPd6IsNpVWQ/9Y9PguShFg5WmjySnmV1oQlOmkTAR7VIOn+LVubUFCVizLUOT0g6OH/J4WKfmBJrNk5/p6yJEWwZc5Egk+XYxKpe/ctvfqtQnK4f5u1SYEfdx3juQgV63DD7hRtf0HzCl4UZzeGtRv6Gc4jyHgg3z0hfQHumq8dtom05ba+9MrX6fjB0NNqePZV873d3qXLnE1yEU9KqpzIVei9gPdokMeQeAn06ZTahChbAhMzUyZNNZMwjZMg18Cv8KGj3CDQHtPKngbzbiZVXrzLNd28cCwpGFdsJiSpHUV3VwmP7yW7sLRQUkKAicu1FaU2NS1jNSbMqEgo22vGXq11eT5uZH/Ei6466GKZdiuF6lhc/BvFpUxPZE0Dxgof698cHCxbFTOmCZB6h10x7Z2mnoRvoHV0ggJAJyY0jCnBmQz/6Id3U4HEYA89A7BcvIEGNU3PDRqsdW9jjfYc9kp/Wa3pYyec3jr7k/bVkeFWvm6fq6PYhQhhZeaHoE3k/s4= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fJtsT2sxOXoCG3jawM/30bCyjWMZdIuTFdLIqKpEaGvaxFypgit9Eid4useahddcvgdW86nC7MYe8ELUBgHE1NV/70qBBZI4kdInm4GFNU5fG0y3H18YoyaDvs372zpoU516m1l5/CYVTPAvm/cccf38s1gU+xMWtevf/X5UzqTDuIGE9Y3TdiaxBQGpWU88y5mlNbqPZ3wt0+VzgNGioox3mjPBv1DXX5EgQYazorjifMAw+rwEZH243ocQcj2ww0iy4eJqtYyxtkp/odsCjtb4F7vIbOnz9SIOX/3PzwJBMQ/bRcm6wMcLEzgXW2yzDp7rNwwni1Ik8wM5w7b5doyh2p6KCoDr+ijdAXcw27D5QYa1OSQpFovuIJLqs5f5cNBh2/H04Co1AJVaxvmLbj+Jd1Wf3kzr9Ses6G+hoDGQJgqC30oV9ysHT9LmshftSs+mtjz3fwvonsH4gP2mSPApSNBx1S/Jp9vHpoorpb56l+RpDQrCGxc7YDYichzqjINtn6TCShIIIynb5/ERJ583w/1QGNPMhgQ17jbGbzSeEn1JkYgIZpGURkIcslI8GSTst3BWf91eN3mmpBHafZzHVc2smDEtVORH5KdaSWI= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: ZrimDvJvfn9va/TXUC284STIRInjHjNFO28Ov7g0Egi+/1xLErRvlwbTzb5m+yzSQqJ0SFr49tmQbkqIL4tgHcOGyXLi3kv9ASj4zYIQApv1iFjKVLT3ROxq5oeYfqX2go4i2IEmJSo/H/fpv0W6YKwBXjSBRom10KXmXipG4EJzKVEykmvYg9vOpS0vMJi8kVEJRIUzM9j49GlDx08Tu11aW09yJRak/gcf1mnpMiugZ4Df4PcXy6mncX3YuGffR6sT5Qe8N3VqIouGXwypUtO/+f8vNqz8EP2sRSmtqQYEuPE8ADImXRz7ycTUMV2DhCeMhJSgtn5oyivgULJa1ewUgHppui7EaPlkL8a4hWg1AyN1spNmE4cOjhWkI55BporZYUh2OlELYUXwbpMqa7xeLtsHn0RLOPs3c0G22rNhMdbUpu7dKKsiUO7c6g9Qd+dqiQRxQn3Esznqr3eYa6FqkQtypTUZf4MY+FQKtwc1HK/yZXVDreb/SLMAidw6pr8CH0dQj8BRmuGq8s4GBKoKQtw8XY8dLO8Y1QeyOlOKs0T8rQQ5cjKbGKvMx69tR1nkM0BKy4EzNOuZDGATNHgIZgDIMKKpNeKqd5jGe6Bie5ZiWTtpzf2FvpBRmYFvwmvYgZFjK7p1JKWw9rrdulg33yfBdIt6hpnxVy2u9MmxazEVc31QDsBTTjTgElNS6ZihsKHaXJWvJ2/77TDFh4PFNVJA1mThBLEKQMkXS0+n3BU4xtLVTEdKgBzgnTwOw5N/Kmi3lvuBtKT+nme5fpd7F5MA4sCdV98RacPmZdEdoT3AzqRkwWxoma6pJjQBdGnqkomyKSkY9bldhTnP6pRsotJEfFpuE5ORO29eE9Vm7qw2R6VtgB/8x6jts+svp37iNC81FETyQZhac5ThiUzxDAt5nBWwHpzqP0EyiS0OlBPJGaxV2Ke1HKMDl60KZ7vTmTvq7GRWNuDh1MDD4LdwA22r1s4vGY+h8d9FEClLoZzWPVetaB0JqNkJVlGBLVlJtBu0hPHalnF/He/QcUzHj7qCKkzuUi1lHVR5N4g4UN3h8ASv4xoxhOuHnNoDd3AUCd9qhnhu+SvhjcMxkcakDmTzsPYhh23+E+uD36EO95kKTjKb0OKV2ZrVtyCdHgXuYnJuZRGWXaHoPg07fJ6jcrZN2o6SF6rkKfWBHQvU7bLr0jVX+xnF5eqhV6/CLA5JShvONRqmfhj2Z2ORWuFFo3vJ6rDJwovj2Z5AIpiJPwVPzSW2a+HBFNuTbETD0xRCotz0STpLN9a4UnVa5g== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bc6a3b45-fe6f-4222-6810-08dc2a8c5c38 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:31.2911 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0037 Subject: [FFmpeg-devel] [PATCH 30/35] avfilter/avfiltergraph: Avoid indirection when freeing filtergraph 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: CvBNgF6ocSL1 Signed-off-by: Andreas Rheinhardt --- libavfilter/avfiltergraph.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c index c6f94bf0a8..193fafe61c 100644 --- a/libavfilter/avfiltergraph.c +++ b/libavfilter/avfiltergraph.c @@ -117,23 +117,25 @@ void ff_filter_graph_remove_filter(AVFilterGraph *graph, AVFilterContext *filter } } -void avfilter_graph_free(AVFilterGraph **graph) +void avfilter_graph_free(AVFilterGraph **graphp) { - if (!*graph) + AVFilterGraph *graph = *graphp; + + if (!graph) return; - while ((*graph)->nb_filters) - avfilter_free((*graph)->filters[0]); + while (graph->nb_filters) + avfilter_free(graph->filters[0]); - ff_graph_thread_free(*graph); + ff_graph_thread_free(graph); - av_freep(&(*graph)->sink_links); + av_freep(&graph->sink_links); - av_opt_free(*graph); + av_opt_free(graph); - av_freep(&(*graph)->filters); - av_freep(&(*graph)->internal); - av_freep(graph); + av_freep(&graph->filters); + av_freep(&graph->internal); + av_freep(graphp); } int avfilter_graph_create_filter(AVFilterContext **filt_ctx, const AVFilter *filt, From patchwork Sat Feb 10 23:04:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46164 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752720pzc; Sat, 10 Feb 2024 15:03:01 -0800 (PST) X-Google-Smtp-Source: AGHT+IGgSyqhr0KMckQYAHoVKKv4pVUp2TQGDQNT3MCI1MmLWEUJTaMrw2FXWwJyrCkQBI4jvJjM X-Received: by 2002:a05:6402:33a:b0:560:58f:e50d with SMTP id q26-20020a056402033a00b00560058fe50dmr1774960edw.11.1707606181340; Sat, 10 Feb 2024 15:03:01 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXHqYJLZgZ9dMMVKh8qBjMZeyPjS73Yt+NUAuWzy+CAHJUDrDHqd9A+Kszv6GQl/0YbZ9LJgOHmbGvI/SpVkiQtNDNDra++FN7yz5mMYRtCyuga+6qGhgc+gU2sqnCjE6oNH9pbcIw4F8ruQ5+EPrlHidbgNSLKziJ8i3uJYn0obpOaXxjDIK0aBGFSRuCF6EK8ntW8wyFRmI2x20nbvFdO1CQdFmyVGX9MMz32JgVwyE9lMdbi/qT8RV5TMOUgmtJ94sHc69+g5Pe4BxPQ5vLByu0q6HzmbxsZasVlvmM5Zg8pDdJj/593rvUD8erCzzFJ1qf+4XIKcoUKFmxRZkSjLI/t0pqRP2TbZluRTqxeqGy3e6U77Pt1TPqUTqRgZ3dAwtIxiVFB+pPGtMWyee12fH7eZ7chIEnrxf3ZE4wp9/IbhWbqfutakSe9Kp/JjZai9qq84v6ib11fz8tjkmNSoNai7UogLQLfB/CNjyWIMBSAmjLP8rRBknE90tPFUDQKrBzIDfA+4smo6U07mtqji3Yhuvv/6ysAu5zt/nMbC/4WBmD4mHRLRZlLG5chK2ADvvH11i5TYX9AbHjECc079QBa4tuNnNGGOJoIpHnCh7PQUhFV/lpEuZ02jyInMwfoU2TfB/DAgdnC5Tr3q80kDdfvCXtA2Vp9kZkQbyRBBaj+yU7kEc7NApXtoPxkyf3kEiUkpEw2TKsGoH2q5WcoGuLGsA7/znpvRL2Bs2W72u1ysu0rQMhpSxHy2d9zdIWtK8o6/3K6+CHDwPafGNFt75lNQ8ORWJ933mCdFshFZoGIfIBoc7bIT0kNySqdttRdrJ58MsnoG8I/W4OinplpKQEXDMx2+qi4B5sJjgiydSMm4e2kftV+XuOKdLmjs+po8UxB5yFAn3YI0bmtc90LitaXA9xg4KQORw6tTMC1FUt8Ys8pKDxJA/A4eVWfOf1ES6 PAZ5eB05TdPS3iTdK9YL0jE8uY0zdjhsMM55j/E7+wnxAdRNcjVSX/ErRwHL9Ofx+KMxpCAvIpi6HFO+jjeutriXfqm7dGHk3kXNrDlL5+T8d5zv3Z4tQnW7rd0GFnwXETuLFLpIoL24LeiN5V7WAAhXE56GEX0HtxGKEbFEsiki3bcrRHGc/T8WdAIBcH850A5DDAeHM8U73XT9o1BAgtiUV8PeCRZ2QhSw4HHy2VM2BSQgb8m7nk0IpBsbXhKITptU9jiZiW1i616VVsI+FcvHO3LdqSuTbnuMdGRApU6a0LxCMnip2vpj+eXKorlOlv6aF/wzHQxhKb+UCkLujFit/+gOrAosrEcXlPqbUXpxPj7TyMxUz7I/A2QLOyR1NvHJxdwrqZTGFy/ZlINxzIWHzZ2OrAYKmfEBOnQI9O4mypaqbOTdgWbjrveWNG0Be+XYlix4A+M+0RYne3hP4SFMr4qVEpGScUC/PidiGTEXXo3NL5YFyTwJ3nNS+Md0P9Nu6Ez3fA9FkU+qCMVa2w780/JGhxmv8g2xDDCf+oOT7unw4eDR/c/MHm26vdnD9m43LKovuNlobQhbSOcJth9unTMrIdc305M5E= Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id cy19-20020a0564021c9300b0056004e767f4si1253743edb.130.2024.02.10.15.03.00; Sat, 10 Feb 2024 15:03:01 -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=@outlook.com header.s=selector1 header.b=q+yRGulU; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9C5C268D14C; Sun, 11 Feb 2024 01:02:49 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2058.outbound.protection.outlook.com [40.92.73.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3CF4D68D130 for ; Sun, 11 Feb 2024 01:02:42 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mEZRUbci7EthtVCaHoEOxTyXOLgshyHIJXjztbX/zmm0S69ngzaBgxRWfMvcOd76W/E+TiG666vtaX3HagLzvxk7qRC1JUMZ22qrV0k/OYerBjWYVls0b0Ix/Xb8A8RMbOkKEghRkGijh6csqEa8QFzjkUkNoL6nKEPh11tooj8WyoA44FjkNeYgLZsdhKe+mBG/edoF0s4BQYtsCZI1txJL+8Bo28FoOdbyzcgLg1H7mBLgMVlsCQRgKQgXpZXEXxhthkLgphMu70fqJpVjuaO3GQRgZ4BrMn6Bb58zAw3T2tde+1VOq9KQIlcI9XImYcZZmFnO59p2BFJf1puHeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=BUiO7Zv4RMbRGpDi9mft9kiTPBJfKDGk5zOskLkkRig=; b=k+ILGdTyh7w8qk4m11AGgNaHi7/rjZzsnNeLmGhXvVNoma6rX9KrAIVW13P97PGVXNCYbRLhF7MuOQUdWG7zzWC2Mitz/8EpAvtzZ42drwHvNAHvGarmgKG9cjbTVyLPFN65leU/zFp48NHGTWG1f/0CNwUd4V9KQU75TgyldW49wK+mJ4KCM1tNWd957Gc+zT1tbwI6LHLjXo/hwe/BB6vtBwQQ86bS4sRqYP/XhfC8Y1b+pw3QCrFbNeLHc/9Sj/G8JQdGHoVNGKELBHY5nP6rHKyE5KetepCOhUwPbMn2P2E/sECt9W9ycQ5MS5DsTr/syg4381ckIcSg8DmnrA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BUiO7Zv4RMbRGpDi9mft9kiTPBJfKDGk5zOskLkkRig=; b=q+yRGulU/iA2hFTrIzjkoIuE7E0iLmV5yG4ksXjOVH8tApaqLKhcUQdOHppAVLby/OwkpTBDKEQm/7HX8iQsbXrMBUK7IkbHsLnlWi4OyUoB19flfRuY0XhrRCME68IO4Leu9DJN5x4rYVh5AfEvkelZtTNGOKG9oysGTewTQSUeUqfeCQe0TaH+w4KdvheO/RN/REtofF11K1n/85BdB85IGidpD25ERRgNRIbgz5GwtGAEcvocS3cpwkGO7ab9B+k7+o0dwJwT45d53R2y1A5SyC9U5IERhyQ2pXGbxbg6pyubhFOEEx9HeV+RUNCwSaOSaMfyHpWKG9xioNPB8Q== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AS8P250MB0037.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.33; Sat, 10 Feb 2024 23:02:38 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:37 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:07 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [oq5AbU6q8YF09kYxqWTxBgj6G/EyKLG50bM6xKOPBzQ=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AS8P250MB0037:EE_ X-MS-Office365-Filtering-Correlation-Id: b7b333d3-eae8-4726-ce3c-08dc2a8c6017 X-MS-Exchange-SLBlob-MailProps: 9IecXKUgicCxfSlM0Mf+zc92VeVIBtN2nndbitdWGv4uJ3oe+arBiqwZUddONzLsdHA7eJmk1g9yA7MC4NKAw4KN8+2wTwv/PN/YIQwbru7uWUY2CD3neQ+KHwIA2veI80k2rhw9nTPeNxRro6rj79rueE7kO+rcAGqt2xwiJlw/wpPNvdFjsy44GbER5TYaamrWy6hiPXCErGMA3046XRDtBZuvgSxum7jwFBZ/NK95ga4fblv8PtV4I75O4i9kzvby3dhUwiDOVzzhRgNccsWR/53I1aja+UeFDBYmMeBk1nGc9MWgWXVqxDiCrBRzVPzS4radwJ49DrugM/S9BTxVZcKXrroOUOckxaPVAMksrJ5nl1+ImplBbFJXM2hFgIlDaq2eufBljuT44Tn8vX30en1rIy7QU2MH7JH4fkbsv7uVV1VTu83aVCrPf8f41+6Zak46zB3ViK9W0zRuHUOPMNF6ZX/IJqkKPh+5EdenbTASOdFQzK3w0i24m2yqldafc0gPN8Q8lDu7JkIm13vpUA4xpnhfzz3Zn5e4TplUjxG8ayjO78VIhxR3Yq6B/eAMXznS2f8zfItcCbcgk1kUEaMBjfxD2rcq/kK9JRV/toF6N/B4BoT/t/OVtRsZK1K7M+a7doYcJw2ZgFkqmSTDmskMarEoeR8qMzMvZgDv3O27wsr/BszNgUx5EQW0SKAMUl5dGiVNeOT1/cfTVi+P9umLrdbaAemAfrtvQZwB85R6NWjWmQ== X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LxPadRcNG6Eu4yFra9cs8LimUkr5BtqBdIZiy+m6KY2BqF8hRTNaByu4o/+OUzMR/zlxGsb7XCiLqKpvNaVxlACXhkJrI7JkZHXnpUD9CgEBXtt+e/Mzn5ArWjaFH0HqCtbky7oykuFXY3vp5n42VKxAco4y2cExvSS3akuFQLqiOyw8U8iYUnY3EkZfdhMdBuaPJbHzmw1rwfr6wyeCj1vILlJX38QAxvePf7+NRz88oU6wLn/n9DV8CPXK+N7zUFUb3rysJaZTbyI1XtxjATN9tm1fQHisNOCOCHDbYz+Fh8r3vsIl8NWSfXUbxJNx+5FXEhOGfz67NoXE/BG0eEdkdefJxxVGup2Rb7r9dBLOgh4f95WuxbJCoqc3aGc7KBg18Dxfpj406gL+UzXXAoLrgDJbOHa+7m2oT49BoecjVcTr5O6eBA0GJz4/GmrKi/k0oa0fn4S40DiM/I2RfQI3GIcLWN/vhwmz3hCItf9jTG3/eLn8Q15+SsloZ3sjCYtp+Sd/sYfPTSzKAiSwcWhURwg2AIFEh19Q1uG1hiQxugoLp+lJRQd3KFDme/EMQGCaWjzWjm2MKbCYfwP43ZgSOo7JJ026pVqeRvfAjHbkILwrEf9S8cy2qhLMGKTB X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: eDakwhlzBuF6mGSi6py1zbJYP6DFbLfpgZldtTDxAi0YV9FMYsxQGH/KSxcn47StoQuMTPBGqzx6DgPNX9dRyU4sFmCRLUD0d7GF2q+mMUT9Uc1Qk7tiVeyS4tTOgd4ZcKxNacDcmlQbd/pB+YguKwqX3+T+O4UaKZfcOQBWOoqs1JiL4FHKsQ+kS/MZlnK0zrwvBGEvWEXV0hCmqKPxAwvxgHsyEUgkMC6y4fltUcle7Jm9Evn+Rc1wpR93PBjRLaOSDUYBmguXwgipcIYcIbzo7h8Y+40IXY1R94Zns2aKfVb9hSRe6JAZrPtcjciAWwXW77fpsaYOGJLhvidgX5QyPYhW08vxnOSiBWJJGgWCi1QhmGaBj/jNLyFui2jvrpUKokKsYekTg1ztV4Ajzgu7pW1meP+G9HiH28h0gK830mWUWqL5n7N98SfI9fyfgMYHtAU+sUK31+sAwFHvYTGjMeF1ZZlS/gOMw3LPuzTwQO8aJP0gLaWnwAIvhFBXA+BTFnCEGrbUVjv27atdptrHCkhSB+v/tFyj40wJvOkZ2Qw1QrpvJiUX2HTAquEVoD1LyfXVvDVYFZKnzShOgR1h4PPMRo0RRH7HLvfaZq0apVPBY+5RlLa6knYuGSV6Ux/CSuNHNVwb7Tt3aL1WsLm/SrEJQT0BJTnE1pPqyvMG5kloTzAeZI6Vu62CB6Aij/2n2abE5mkrhrRgHn2zHiMcuMHIgv4O5xp4Vw/V5lZMEL1XSlYg6gPrYDOHw08IJUy89sCEEUS6CERieKsv71lf+UmTgDsrFjd2M4x9R7BEXtOYMlxyDa0FljOeEBXRKvPj966wsZu8yhcpG99+6d6WLw9WdtIp5ZTWvP5KGjYWHWC+Okh4KB5t669zn+aVZM2JifWDRJm/QkQfVnPFWUFGYbI9Qm0RG+yudzMw309o5sJDn1UFPapsWYUNCYOg74aWUg+AmkpYrjVhaXf8sjpo1Lmm6XSOkcfEaOmQGxwNzX3sqs0a0lUWMaG5YXuLX3BlO5qS7GwUwNS68zwfGXvtS0gu+YUUt2QVmhxVnlvNXIODaA+GC7EdPrLmq91InpBe7gHynJJUyLENoh6HGwszRmHYEnQ2F1R+SS0IaFf+Y5ON+uWT6i+qyAsZl1nONPaGjppq7ec9/qFXZ/pqCcNr6ZCdv0JUZ0R7HtmkzMYt90no6FtXa7kngrXQE/lznBhlRh3oUorh/n7YpzO4JdEjN63BKNuCdpYjjqkk6NleGcaJOaMdESFjTFc6zjeTw0HBOB9ELfT3oI5bHYqDfw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b7b333d3-eae8-4726-ce3c-08dc2a8c6017 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:37.7208 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0037 Subject: [FFmpeg-devel] [PATCH 31/35] avfilter/avfiltergraph: Avoid allocation for AVFilterGraphInternal 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: hT+N+BdLVn8w To do this, allocate AVFilterGraphInternal jointly with AVFilterGraph and rename it to FFFilterGraph in the process (similarly to AVStream/FFStream). Signed-off-by: Andreas Rheinhardt --- libavfilter/avfilter.c | 6 +++--- libavfilter/avfilter.h | 7 ------- libavfilter/avfilter_internal.h | 17 +++++++++++++---- libavfilter/avfiltergraph.c | 32 +++++++++++++++----------------- libavfilter/pthread.c | 23 ++++++++++++----------- 5 files changed, 43 insertions(+), 42 deletions(-) diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index 85e2936e6e..af46011b27 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -187,7 +187,7 @@ int avfilter_link(AVFilterContext *src, unsigned srcpad, av_assert0(AV_PIX_FMT_NONE == -1 && AV_SAMPLE_FMT_NONE == -1); link->format = -1; link->colorspace = AVCOL_SPC_UNSPECIFIED; - ff_framequeue_init(&link->fifo, &src->graph->internal->frame_queues); + ff_framequeue_init(&link->fifo, &fffiltergraph(src->graph)->frame_queues); return 0; } @@ -888,9 +888,9 @@ int avfilter_init_dict(AVFilterContext *ctx, AVDictionary **options) if (ctx->filter->flags & AVFILTER_FLAG_SLICE_THREADS && ctx->thread_type & ctx->graph->thread_type & AVFILTER_THREAD_SLICE && - ctx->graph->internal->thread_execute) { + fffiltergraph(ctx->graph)->thread_execute) { ctx->thread_type = AVFILTER_THREAD_SLICE; - ctxi->execute = ctx->graph->internal->thread_execute; + ctxi->execute = fffiltergraph(ctx->graph)->thread_execute; } else { ctx->thread_type = 0; } diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index a3725b1516..65034f831a 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -843,8 +843,6 @@ int avfilter_insert_filter(AVFilterLink *link, AVFilterContext *filt, */ const AVClass *avfilter_get_class(void); -typedef struct AVFilterGraphInternal AVFilterGraphInternal; - /** * A function pointer passed to the @ref AVFilterGraph.execute callback to be * executed multiple times, possibly in parallel. @@ -902,11 +900,6 @@ typedef struct AVFilterGraph { */ int nb_threads; - /** - * Opaque object for libavfilter internal use. - */ - AVFilterGraphInternal *internal; - /** * Opaque user data. May be set by the caller to an arbitrary value, e.g. to * be used from callbacks like @ref AVFilterGraph.execute. diff --git a/libavfilter/avfilter_internal.h b/libavfilter/avfilter_internal.h index 3dd51fb993..9ddb82bf26 100644 --- a/libavfilter/avfilter_internal.h +++ b/libavfilter/avfilter_internal.h @@ -36,11 +36,20 @@ typedef struct AVFilterCommand { struct AVFilterCommand *next; } AVFilterCommand; -struct AVFilterGraphInternal { +typedef struct FFFilterGraph { + /** + * The public AVFilterGraph. See avfilter.h for it. + */ + AVFilterGraph p; void *thread; avfilter_execute_func *thread_execute; FFFrameQueueGlobal frame_queues; -}; +} FFFilterGraph; + +static inline FFFilterGraph *fffiltergraph(AVFilterGraph *graph) +{ + return (FFFilterGraph*)graph; +} /** * Update the position of a link in the age heap. @@ -77,8 +86,8 @@ int ff_filter_activate(AVFilterContext *filter); int ff_filter_opt_parse(void *logctx, const AVClass *priv_class, AVDictionary **options, const char *args); -int ff_graph_thread_init(AVFilterGraph *graph); +int ff_graph_thread_init(FFFilterGraph *graph); -void ff_graph_thread_free(AVFilterGraph *graph); +void ff_graph_thread_free(FFFilterGraph *graph); #endif /* AVFILTER_AVFILTER_INTERNAL_H */ diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c index 193fafe61c..0e2b5ee1f2 100644 --- a/libavfilter/avfiltergraph.c +++ b/libavfilter/avfiltergraph.c @@ -68,33 +68,30 @@ static const AVClass filtergraph_class = { }; #if !HAVE_THREADS -void ff_graph_thread_free(AVFilterGraph *graph) +void ff_graph_thread_free(FFFilterGraph *graph) { } -int ff_graph_thread_init(AVFilterGraph *graph) +int ff_graph_thread_init(FFFilterGraph *graph) { - graph->thread_type = 0; - graph->nb_threads = 1; + graph->p.thread_type = 0; + graph->p.nb_threads = 1; return 0; } #endif AVFilterGraph *avfilter_graph_alloc(void) { - AVFilterGraph *ret = av_mallocz(sizeof(*ret)); - if (!ret) - return NULL; + FFFilterGraph *graph = av_mallocz(sizeof(*graph)); + AVFilterGraph *ret; - ret->internal = av_mallocz(sizeof(*ret->internal)); - if (!ret->internal) { - av_freep(&ret); + if (!graph) return NULL; - } + ret = &graph->p; ret->av_class = &filtergraph_class; av_opt_set_defaults(ret); - ff_framequeue_global_init(&ret->internal->frame_queues); + ff_framequeue_global_init(&graph->frame_queues); return ret; } @@ -120,6 +117,7 @@ void ff_filter_graph_remove_filter(AVFilterGraph *graph, AVFilterContext *filter void avfilter_graph_free(AVFilterGraph **graphp) { AVFilterGraph *graph = *graphp; + FFFilterGraph *graphi = fffiltergraph(graph); if (!graph) return; @@ -127,14 +125,13 @@ void avfilter_graph_free(AVFilterGraph **graphp) while (graph->nb_filters) avfilter_free(graph->filters[0]); - ff_graph_thread_free(graph); + ff_graph_thread_free(graphi); av_freep(&graph->sink_links); av_opt_free(graph); av_freep(&graph->filters); - av_freep(&graph->internal); av_freep(graphp); } @@ -170,12 +167,13 @@ AVFilterContext *avfilter_graph_alloc_filter(AVFilterGraph *graph, const char *name) { AVFilterContext **filters, *s; + FFFilterGraph *graphi = fffiltergraph(graph); - if (graph->thread_type && !graph->internal->thread_execute) { + if (graph->thread_type && !graphi->thread_execute) { if (graph->execute) { - graph->internal->thread_execute = graph->execute; + graphi->thread_execute = graph->execute; } else { - int ret = ff_graph_thread_init(graph); + int ret = ff_graph_thread_init(graphi); if (ret < 0) { av_log(graph, AV_LOG_ERROR, "Error initializing threading: %s.\n", av_err2str(ret)); return NULL; diff --git a/libavfilter/pthread.c b/libavfilter/pthread.c index a0336a8e04..06590fe65a 100644 --- a/libavfilter/pthread.c +++ b/libavfilter/pthread.c @@ -58,7 +58,7 @@ static void slice_thread_uninit(ThreadContext *c) static int thread_execute(AVFilterContext *ctx, avfilter_action_func *func, void *arg, int *ret, int nb_jobs) { - ThreadContext *c = ctx->graph->internal->thread; + ThreadContext *c = fffiltergraph(ctx->graph)->thread; if (nb_jobs <= 0) return 0; @@ -79,8 +79,9 @@ static int thread_init_internal(ThreadContext *c, int nb_threads) return FFMAX(nb_threads, 1); } -int ff_graph_thread_init(AVFilterGraph *graph) +int ff_graph_thread_init(FFFilterGraph *graphi) { + AVFilterGraph *graph = &graphi->p; int ret; if (graph->nb_threads == 1) { @@ -88,27 +89,27 @@ int ff_graph_thread_init(AVFilterGraph *graph) return 0; } - graph->internal->thread = av_mallocz(sizeof(ThreadContext)); - if (!graph->internal->thread) + graphi->thread = av_mallocz(sizeof(ThreadContext)); + if (!graphi->thread) return AVERROR(ENOMEM); - ret = thread_init_internal(graph->internal->thread, graph->nb_threads); + ret = thread_init_internal(graphi->thread, graph->nb_threads); if (ret <= 1) { - av_freep(&graph->internal->thread); + av_freep(&graphi->thread); graph->thread_type = 0; graph->nb_threads = 1; return (ret < 0) ? ret : 0; } graph->nb_threads = ret; - graph->internal->thread_execute = thread_execute; + graphi->thread_execute = thread_execute; return 0; } -void ff_graph_thread_free(AVFilterGraph *graph) +void ff_graph_thread_free(FFFilterGraph *graph) { - if (graph->internal->thread) - slice_thread_uninit(graph->internal->thread); - av_freep(&graph->internal->thread); + if (graph->thread) + slice_thread_uninit(graph->thread); + av_freep(&graph->thread); } From patchwork Sat Feb 10 23:04:08 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46165 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752780pzc; Sat, 10 Feb 2024 15:03:09 -0800 (PST) X-Google-Smtp-Source: AGHT+IFfBlAkS1yu4ZEOHautqKf6fzdln0/xfQPtp0LUM307n0J6xyldIiMiMQ6U48Hv/+b4fjt/ X-Received: by 2002:a17:906:b248:b0:a38:5443:f4e0 with SMTP id ce8-20020a170906b24800b00a385443f4e0mr3889186ejb.19.1707606189498; Sat, 10 Feb 2024 15:03:09 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXHI7cZzLuQSWMztlU4CQsK6+E2Dnx/4hQxFN/BLGNT+s2wQUDbd/vBm2kH81lX9DKIVQP1cosFvPC07dhCYqlx9UPMxeA3hu9W69RaRFLCM+a7fnIUCe2sQfQ5Ua2PWye4qjNQwInMT4+16gqO5KE+Tk4URAvNeAfhLWGwZ5EYOTVGmD/dMLRVnJRbtw0YcfbdWAFLUU9AEomx9pHTK8j6mcqCM6TYFy+5EjcbcqBpuBwLKkribwthLJKoliG73XCy/4WpKaoarH9rzW1zQc4HnuZwlnWIQaAjwfBCVjB4+Xg0wNEM/kofSkslY5+TGtfaMIM4wyExDcDwf5fxTG+xdjyY2OForxkihMo59TKXiO3mC8B9ZEN+2mMGyi3J33R1OH2JJPm5K5SJ4sDZ677EbTzy4gvJyvIk5tZEZX3r3lJ6PFw7jZtV/mrZ8CJrEjDMtEM/zTgGtV8bDJvFiXHLkecjpcrWmhft9Jw0sDzK6i0oalRKoCOrt2mkDq1GVCqO2b/W1rg1ug+PSuFAtiQ1WqQS+/Z9GfCIMQWyTRR2Dg43X4LpsQkIfm1sSmWARMQEyROp0lPcbjbSg86j9xjw7AVis1YMSQwD4//ft56xPzPDH3u7NMqcuCTdTahduGCLvNb7TikzKxruZoXJYiRB38N8WfBEAv6rZE22l8vNKD0ZTcpUsd7VIO/iH7XZq4Q6PSbflIreoLxIx4cMQC1xthWNs/WlHRDikLWSySEQ4/REB02z6FWUlCw8CQsTxtweEUdb4a9piRJrugrgffJFVBMfA8zxcSNjfitjx6YbgCj8qJqXg4KszEQ0WTxnFC6L27d1kzk6itiBPeH6ywYZnmVf0QLm+8xPgTmPLYXuLFG+weKW3yWQiIMyMpG4zCheJgwhxeLbw5Dbp9DYRUXZgibsIxNOHJtjOG68FPtJeyKUx9FijnPbG/YCpRIPXlosLO xxdNN82ywwS6zmk7GLmsgN0KUdFIktcKltdAtowX2jmsoFkXmsi5JPR4XP2bLBH1732kOp1UA4M86S4Ub5xsP/o5fUJGy2qaUarLOET5ZS1NDiNgV0rFoumvYZsYWTdq6kH4f4huT8TWeovi+7uQhB2YVw/VxH0u03ip/Pt+KALXBOfRuDlsoWIU7RYTXykR9iopAqJG2DJ4aJzyf6VqvxbmaeISY7Vcs7xX7v1+Q+g9s11XHDNZibZZxcCuvbEmCA2v9qE0DJDYs/An+TpuethpZ75M75XXpBB70KqDr4Z+CrchGCqOvdyG9ZnKulJ0X0/RQLulmt+L0QtQtBjxPRAGI9ncobs3WkIdAAnKT4ouJQHq//ZahJPEXO7rJ3oapBupxkLHtQ6+if9xb52D6nhhgIvu+tURsgGfPLjePwC7R0rnjOSTfpalxBKoDiiS+2B1Z3uX5QvHL2hpGxIyF43t2VCpJrNd58SFkGQS+AP4u2ZNmyTYR32uiwiy7oS3YNxI6OGxD+Fbf/VLVOS5IUwpay770ZkLsNXZP6oBHnZyuVDc0nCPh3EYZKRjAMsd2YErbvhkh1u3SdqaihW8fY2mG9I6KEfeALHNDUCrjwUwmJKy/fsb9CtRgc3ibTdjmf390= Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id zc6-20020a170906988600b00a389a3e392esi2262021ejb.887.2024.02.10.15.03.09; Sat, 10 Feb 2024 15:03:09 -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=@outlook.com header.s=selector1 header.b=l5wLPl1u; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A07C6689245; Sun, 11 Feb 2024 01:02:50 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2058.outbound.protection.outlook.com [40.92.73.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 90D9468D130 for ; Sun, 11 Feb 2024 01:02:47 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MNXc6JZrb+zyRV/oj9OmgYt/5c5ctYyO848DGibm2gxjp9C+BvsI7TwRZStV32G49rO69xXN06whhUiRw7UZS9pe9A7AmL4yiH6HB3OR9G+H/GT3LavFu2nOCPr17FJV0aQRaUWg9N0uMbcC8UKiHDKeo4I90jtK0ZOnL8abEPd4HITqLOTgmCg67o3pq6u1tRym3KjfUJwQ+BXTUaODGtjCRBNEYpPdMFZF5nNHgBzB0aNM/A1MJfnH+rqyAwhZZX8uhH3vq9BOx46ZYrtjey1sPkXzk5pmxHJdX14yMhgyM8EycoJRYFidmLba3i6/Hvnfxpw7552Mrh6fgN1SBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Zdc7nag2ygaRO+VQSH3f7KtKy/vYRqdFf1jsDjRD0hQ=; b=Sjc8aGqBu0Rx9ByIElxUZ9DH7LelgxTittgsF+Zwhjmel1FCIIQBLcSC1CyzPQPXOVp/ab5kAPj5fARp/6Yz0qagxWtZQntCpSE4+WzvWE7mLo8QMnEWOk42X3RMGkMawCgFXTXIwvGJPHs7q/TT6kI9kzXjiTWZ1mRiSGcR5zoW/464XOG6/GskFyjBhtKMgxO/kR3pueF+2aPt7rUrEGVAsodWH8J8RGh/w+nxoUDqlPNouRJPa/CWId0uNjjtJz1tN9M0OoTBBetHIFuA4/6u2XUtbch7lEbOmsD3g/yyizzTw29QTI51V9QasXlvbxhclGeWObQ40zQEORwXFg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Zdc7nag2ygaRO+VQSH3f7KtKy/vYRqdFf1jsDjRD0hQ=; b=l5wLPl1u3YgKnx+2qH+3t1G0L0ft6GbjkGoppPYbXlNrFa6fR7MEkiJH45s4YPl4o4nkBgwV7OKP2faRs/vrtLNtVD0C92Q6flh2QpDideX/ibcC+p7KHcji2lnTSy5PMWNpbkj6mRlQHw4LeHvR/AprMMAA4i0MFql4NpZqOOhea0YjxZqTF34DdeYPKj1/Gk5g0GcagQT7jUyIdY3MnYsUuufCqrSNRWL4AIXROIZbjFiszyqjb+uGCL3xTCB629HIpe2ZoIecINLTrAPUAiIaASi3pTyrDveS4Yhbn5uSIzebRfrQVTdNXTZfE2mvmqKe93C+MMAwXLQTFxcW6g== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AS8P250MB0037.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.33; Sat, 10 Feb 2024 23:02:40 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:40 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:08 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [T6mNvGPCf7KetqRDAGgcH2oMWae9ITWxiKIjsUoa6mw=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AS8P250MB0037:EE_ X-MS-Office365-Filtering-Correlation-Id: f3fe3fc6-8b20-4d14-0c3d-08dc2a8c61e3 X-MS-Exchange-SLBlob-MailProps: Cq7lScuPrnpfz+h1ENKTbWTxnFGbPVjdNkbZ8j09dgoG/I7Ca0KASdDajsVfupCefoZusdNZdhHMtfSkBZfsBS4vactZouKBK9CDOcsSjuypDXRS+bdP8P7sOOt/i5fOTESd5lWE6j88REMWrCSJyr77riHx8y2Vqd+nkFsUdpGXY8v0K9kXqF3qcbZLc+buIwhnUztcdXrjzYYELWzqqFCzsicFu95bT+mAybsN0IRtfab0xJJvkqPRgdgN6GH0heItqQsbKTjBwj5b7nCPFpqCWvLrBcWdHbAH846OWlUIIoJ7NA6j/6PD+feCluR+cROgNfax7Ms/3XPTBOPLE9sDVpUfJYRyrDivkPIgw2IACJGgVguwVp82r+b0yXdQB9ZNLCxtCQ4u/iQAorOD6Elwpzp8iQ8rAXlNtFBvmElIkXlN2EZP/3V+pyDhJWHCCELMStG+ttjsBb0Z4tA5xCEFZYJxelDprNoxNPdAACDja7H6zfwRDjoghMct+fi4r1eEJ4KQbiYWOURjyvBkMxDYFo8+WA4MpT3N0CklWhierT1Wk41kHW01iNryzxIpL9C2K/EvQbjxZgifIIx/YMXDMucxp/OFAsitF+QdyrpPJdku+uxfm2r6Snjc1zrKaTzAYrz12bLjL2zE6DsUCiX16aa4EzR9qBbt550yVKqjcjgZKelP3txnG0y4Y6AgHgukwEWQEowqvU7xCglS92OSbHdPnbKMAulFvOHEqaq2Vux1vGifcpc80Z3TvAmd0iq2nHqzfoc= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6khyyFix+ZSrACcbwecFwZdgcLyf//vQ4PU2tIpYA0VHCMUO+n1uNMsUrLDI2xPMyhwZceFa1maitLx3+GbLseYFXwDEvlGrJ+Y+e6PFos7dBHtPbJ2Cv4FO9sEaM5dDEAG8IHTi3gG4mJES7ucY+zD9Qlt/y5zggDY438zRvJJp9Tl+5lZ1WK6XjcChWb2VIJ945cZfxQGsAdJI8Q+eKaFKxPx8i4s0Iybu/gj4sq94zrQpK8N9FaS9inDQfSWMTsZfljJ3cRLmRkBa/QphWgFO3rLTTcKwzgPr4wgSH8FzVXp82Ba4Z91ZQF/sxBglYanU3uzHjI+bPwMSnSB1Yte5mQqsPvNfcGp+LYRpXfUUTP3ny3soZGLabwiTpU+moKZjTUid1yf5NjfAQ0caxMt0ZMM5pTORswJ6pv6mfiFMulPjI+c063nJbJdUfuhAaeotfxAJtIUPq54pmY6xhdoeS869SqO/5I2OaB0DAjP7QqQEOM2jZo/OfOo8oJx+UmN04YF4iUKLS3oLzYwzzepeKkXaJwDXdHayQbe2xguYY6Fupbd3I3muD2qURxb01VjzkIa5vSVxlOq7/mxG5J6ttbrhQUZ2YIYLoNxn1ahxYevJLEV15nLx/NSQTmcs X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 9SAC8Ri0mLRG77ynTjdicxNIdFghHGM53FdU5aunIKwtZikaxMLg3knLgOR/OfHPDwFdkw/yXVcdU50YtzzfN5n1Fr1wMoT1KLUufy8s1Ymmtm1RmEXrvmoSR7aSTTu7B3BY6ljiXfM/Xft64LLG61VcF95y51Gp8H0miuD5SwgGpOxSN5Md9rl/rAiY3TQU8YodrnfEfxFtflshZUYqRd3vPlYdoIJmmEaoj/nbYwhjsH+LGxuGsNbfjIf+tq9KstZ4yic0CHsEYAvHvX6tFivHiTf8DPBl7f23N7duRSJK0mrnvIussmsUjTl43zKBDjmvGdObjeLCRfmr36RnySK25zy0aERwz2qf30vKw/ghXd9EtgjAqNycCybrbEWB7a1+FLg9ImfuGYv6BvxdC8FtATT6l4XkggO41F2ndEQCYn+2lftZFJc9EXt04cBf0KiTRo547aXeQX9p0kkkMoLMa6+9xRLNLLJSB7B3IPHG7KNXJq8WNAqnk1jzkRTyqJSOC0iiyH1kmSTbdwVKU0KhSosZuzl3v0KHbi4R+masBrEsI0VBnoSwa9dVE6dtBcmn1RMkqsefguCRv0WKT9xpKJ1qqDz1IOWSKdXckUn7P3w1H3Enr/jQqVvDS21SmjyppvICwXpFCAJYsfunMxrAvPzowOsJevq4NmvRmtpPWIUcEr7fAIdOWeyH08AgYnJhVeZ6ORLC9hpW3vTTPVCchh06wA0qFBZT7Z/s8wZzBUx5fmLVU08vqqnNq8Rz07tMhG2azqzNOQqQ72y8Y32o8owvreq6JHENQUj70kwK3F+ZikZmMpragoP7dGE1XIFgFT3Wl7ZvQyzh5wNSYiOYRDG45v3C2RrndT7vn1SkZjbohniZ7fbIsccS/mBHQQ+8p3hffbj4MUYUh5LxUQv6JruTm3Bd3Al7u3TIMyTo/oydlw0XPFuMS0LRI6bYQn+bdv5/3xtN6jL5d0gTyIlkwqa/jf92kemW4O53K+2sztOBrAiSljZGUNAZ/HmV8zIVUrM9EByqnv4CyX1KtGsxpK18holqX2M234GYaRWCVaYeROovQgOCOd70ZYzk2tLTyNaJpxpSSfLTBrO/iJ+egLuiZf9mwTqqm6WJF0071p4fH5BzCOgfuCyRpyeMXssVqnqRJy9xWRGr8WmU2sf6Nft0CwtcWWLieWbcCusE5hR1VmCqnpGhxkWaYlEoabJJroeX2JH6GOk/L0jhCJ/bismywOP4zJ6pQaqmgB/ild2RwHHdYKt39sFSDz/ZO0UG1kp9WZStxinB7Xx0kg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f3fe3fc6-8b20-4d14-0c3d-08dc2a8c61e3 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:40.7865 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0037 Subject: [FFmpeg-devel] [PATCH 32/35] avfilter/af_hdcd: Drop a redundant log 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 9aC5OQByVB25 avfilter_insert_filter() already reports (also with AV_LOG_VERBOSE) when a filter is auto-inserted. Signed-off-by: Andreas Rheinhardt --- Can be applied at any time. libavfilter/af_hdcd.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/libavfilter/af_hdcd.c b/libavfilter/af_hdcd.c index a03c9aadf7..9cd483cfc4 100644 --- a/libavfilter/af_hdcd.c +++ b/libavfilter/af_hdcd.c @@ -1714,9 +1714,6 @@ static int config_input(AVFilterLink *inlink) { HDCDContext *s = ctx->priv; int c; - av_log(ctx, AV_LOG_VERBOSE, "Auto-convert: %s\n", - (ctx->graph->disable_auto_convert) ? "disabled" : "enabled"); - if ((inlink->format == AV_SAMPLE_FMT_S16 || inlink->format == AV_SAMPLE_FMT_S16P) && s->bits_per_sample != 16) { From patchwork Sat Feb 10 23:04:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46166 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752834pzc; Sat, 10 Feb 2024 15:03:18 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUOFzqM74sz5XJnvD6OiLdnmPQukG1Rhtp7cAIFtz+x3lUi/+dRT/kNj+ZtLZJae410ofDPJUGna3bQK76l/68BHa8gb6kxFK+c+A== X-Google-Smtp-Source: AGHT+IH0xxKEnSQ2piGX22LqLncisg+TfZco/S7KmiHVee5e5xpTpy0Q+7bTWFqamvaIdMm5sNg4 X-Received: by 2002:a2e:2e18:0:b0:2d0:cbcd:a33c with SMTP id u24-20020a2e2e18000000b002d0cbcda33cmr1740339lju.53.1707606197899; Sat, 10 Feb 2024 15:03:17 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVxES4DlYieEtESDRVFM974GS2fg4X8uSR555S2+w58vNMrpZs5omCB+zansMWFtNGw8eDRRuwnHNUO7kGogIQrJNIRmrgGADzi5W9x0TXl69heJhSGV8XVmBEkyZi/YKttzOlzp9hRK6wpilRtqtMl/LkO669Jz/hNmpTsIRFaCr8Xlga8emU8KjRj/Y7TeIU/AU2OvWFe6xR63CZW8gTkN2GPbt484tlXLnh3kApA7S/l/41RnipSG4F7q/RU0b1+FC6m4y2zimKbZOKSJo5y0Km+eBsPNgNZL5e7X5oxbbnJgfxCaprGC7wk6yphDfeQRCR0c4Swae4XFILAS1cozuNrNGZxhOXvP2vtiJIlp/Z/KeaF+GC9u3bKrdaYUF8zJRR0SFexcCASSeTDuHnFMJM+cqtiySzDZjDZYNeUc7kk9JWlsMOLiCzYopkrtf1qoi0V1hXr5IiRBWEm1mbikB7ObEv2B17X/becTKyiUCNAx4/s2HOIv+v3ngUkOdTRqXUEcbcA/fLWyEtl1x2WCtM1dQppcLClG+jFHoFpP8ppFVANdfgw7jecVGt+NAXpgtjohm4RwaUKF7xmqIOf81LOpk6zgYo6hySvXUC77GdWir0q/douUFyyG0LBKmPm74S/1czAoK+MRGKlFqig6sWF6Em6iPoDJnZVQDL/tROw8UscTpNZdFiOJVpqLLvA5MXhkIdd5mnGY1QlXGxWV8Mep4U4sC5q+TwYNn8uV3FJdb0wrR+0OHY5umzDjzAbjcBcj+u8tThVdmiT/IfZZjbWYOiLAuB8IS78pSTTE0KfvEXgXK4itbMWKhT5t52rv8QDEd7m0eexr7/roscLOOnvRcKpaHxHHFBNn2VMVNMrxmrCf5CF3lQJlbCzqCXRVAQGtbztmng54xF6Csww8QQq0cwIlNJ80QBRd62wjcbwX8/5ayF9+gsGARPg7ZAODo 0I21TVbY02vPBKsZf88Fw0XrD3u4/ia0q355SPSbg8ULOcMRjPk82wQFvD5mxeGYsUR/9UkmTAxPBUpEQkqWkpuyjVMiUOZgD8LLisPheagK01UYOXj0fPwAxBlIJLToWNp+LAXkAC051dyKjZ6zAmE5/3u4u8BC4ODvht2C62/0WCu8Z8FqzJsENV3M84+zAckExR6Gwmtn9el6IFFcFeRgGhhRzplX7EkKbOikf8SkO5/SJrd42BxWZsOBzmjlEPJ7IPDaiOTZjM5KUzjBkG42PRFyzLoyqCgFjqxAAqIYs/BYzs/YZyUc+CZ8IeD1FT795RXxImmjjXZaTLsEUbFlRnfc/P77bqImzjUjnMxQjs2UKjqFP+GIR/sYF5uiYqge0WrJBNbG4f+4Fz0XkDKptGw1PzyEc+LAZ3nh1kJqP6eewllmLwNNifxaBpU5UncXU9PMTTwXCbGHlIGpZ5FAkn0FCArFvPXaEJ72kXaaJ8FZ8Bi7UNBuKefPkE2wiX3wcr4wbXV9xks5MxkbqoK4IEDPaNFbzC1nn2JhhsAOMsJjy7Zo0QD7QmScuDxfRf9EkEQ2Geq0wEBPiS7ufhcnLkzKyAZJsVjw== Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id n8-20020aa7c448000000b00561351b6317si1249115edr.635.2024.02.10.15.03.17; Sat, 10 Feb 2024 15:03:17 -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=@outlook.com header.s=selector1 header.b=u9f2jB7u; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id AD41B68D15E; Sun, 11 Feb 2024 01:02:51 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2058.outbound.protection.outlook.com [40.92.73.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B70B768D12E for ; Sun, 11 Feb 2024 01:02:47 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ofa1uJ6+kngF8ibnLOkkv8nCIGWUcW4xGNKIPtBkAaf5Szg01Dqib56kXzEDmjYU5bfxXADvy/N7zGqTaUCH6HiBmM8Nw6nVvaOiIBuKeaa0CZWgr4gGUXCZLniC2AdPiUUTshlByu3twVlRduBND6uMQs1rUg50i/WrMDeXF1L0IcEvVt4IL6ATYUOSuUNxHpa3x7eWsjiAPEGY0ko7UuTmV+TMfSjDCqkmGJoZIUjO+9Tk+NRPKHeow2Kb5Vt71mRmIV7D2KXxZQ3IJ8Q3dUYo9fr3lycvX9e0WXpcVJo1aYSM01K3eDEYIoPYtYO54qCC+kSPdbFFfjFF8UrZ3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YC7H+DlwDiItjSet0CMzmi2r9Fa8l01QB1kuOttHE/w=; b=h4W0sX2nVkbF/VptTDIQL1wE3+FxBW7a8W+ihBKM6WRDSPmz/YC3BqsxXR9u3AUBfcP8Ezm6GGyp1fehxroEBECtTFdv6OyQwELdECiNjoKarAgi62K03wWqX1Z2dff9c3lfL855peMGBzoYtKUBoqASnumKdNAmqhQZgrrdImhuKFe4oeSiktwGHV0vCVeVMcwcwUWl0UUFo4AzK5GDUtaH5dP/VGZPWB3TPkRbXlIViwkEF4QhfV7gly2JFTEgcKsa2R80D+FM7RO/S41zCDJC8ua0sAQA5LZE7fXbWR/oqg6R3qMpE3e15WD1pMPSV1mAuS35GHBaaKx9ycl3Pw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YC7H+DlwDiItjSet0CMzmi2r9Fa8l01QB1kuOttHE/w=; b=u9f2jB7utNP3PYZ/R9hfpnpJC2pmd8IWtvd0q0SUnprDEUW6Br9fQVbY2eIfLOhDz9HFFarSI7+TYBRSPpNnHEicrAv4eslHJ7cHbM/eAMrri8S2mWq3kCV4do3qqVwFawrAnzQvbA0pFZhUcDbiV8XkYTbfwEevrCtQPxjzy3kKPGnDTwLIEKdLtT5awXd+W7xU9Jf8iMeialcCNlibwul3QqZmUJ2/arZaSSTskv8mSJ7MWRTf9H2k8zmL4J/TKFNXyT76rweucrfuAgOIoQUpQpQyIry5NWlJlI94NbG61nFBaCGrZEfuEsv/JGgpuN9hKcsUxci4x5wq4ZjLFQ== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AS8P250MB0037.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.33; Sat, 10 Feb 2024 23:02:42 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:42 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:09 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [7hBy84DoKZ6A1VZgpZ80PytmysPSE+hhlmwqI1Y6BXA=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-6-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AS8P250MB0037:EE_ X-MS-Office365-Filtering-Correlation-Id: d543228a-2fff-4522-ab8d-08dc2a8c62ce X-MS-Exchange-SLBlob-MailProps: Cq7lScuPrnpfz+h1ENKTbWTxnFGbPVjdrmXFL6Hxb7WNAoKGnetZZCp9+kj5QYV22V3IVQYFKFBt7hdj9YOmuJrevy7AmbO+tdH40pjfWfQ7dHPKKQPCD+9nfJALsexK359Xq+ifkOYoCKFZwgF+Kf4G/z4X4IZbvLruuxjgEV2otJkY0C6u0shzS5ZuORSxIOk71PCC2D1qO1xBQjAv7iKb+2u2A9X7zWfDZq7en4FvSb2RRSIn39jRM6VndPR/5K70rrrwQBPUGTgOHNpk5aQnwDFx2aShcWiB8tEp/1gbiTLPpjbYGpzlVFdjmwR5AH+FwhYjQuCOJbEAcnx5gzSkxZuqXMFmfqE74kGwYcyxiSjAnWrIJ5mgmPPctPIZHAA9qeJwcE1UAsBbGehFG9OI5Gi5jnMBsC88OWxg86Hg2+WMDQfvj9RUdJ8V+AllLGYXM+H1WqDsd9xYc8THMUM2WRBCX1IbB0J+hk92ajP/a+J7aEvTnxRgBQTtUHJDDSWdZYmfLc5cg4SoGIbSAENx+/70za61njreZn11v6A+GlMSy+AhIpvRlfoNzjSc+tHukoHUhNTlgZdHxM3k6mPyF7aMbSBaNKJNyJ/8wtoMPO1vvOdRa9aq2ofFUXV4fESk9JrO6L8J7iqrowo8pkcP5i29bhWh2DeRTQE9LFz99IKo2Iwdvj567WLXG34OwCyaQ0imU8r2ixl5LSaMegn4apsPVLL3bpa8AcnseITwyrjD7aL9M7QUlW63KZLUzzy8Is87TDM= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bvnHcQDn9Kz5GOXED65ZN9nYoqe7mL7rXNX9ZT+t6PntFDog1HWQYhNoUeGke6k8nJlGhaDz6Y1ggBqk/YlcGo1f6jzxsPtuRXUEPiK1JBoQfYbRP+Iajye6BwZvuLSHDZColc/pBKBAK13t1KCreTgUhw6BKijtVVe/eljsmAmY2YnMNmF5u2flB6NK52HzKTkOHDnf/0IgDfZNlgXZ7Ka/JEQt+35fpMt+4g6hd4zhXTEW2T0uR/QmyhGwTSCYQVSdQq85YU0/PC8va3q0xdRKoJkMMj0VRi7JwDTQH3ZNLp9gtrsKmq5UA+HSU4ptgXS7q35q5eFjZwf9cU5usdf0t42meBoqah9mC36pOSuQrFrm18Yt/teHhzfa7qwH4OyerXWI+Z4310zzVRYbqJLy15BUaFqdxarRzvU/9kFDzqem9nwfR9aKZqUb1g/9K5R8pD7P1jFZmAltqDaj2hCyds7jz+zU2XK9uBvSqfRbMw/ji6u6nWgUCNHzCemLL7FZxg+vIY4owO65PCDtjGqfWMIUPGwWqPsxHvK9BtDZ7Oq4thvNpGuBD9GQeFuj7eVl/CYmJQgYZFIi122u8iZxsKWRjoWm/OlSgDmMbUI= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Nhi7VbzZ51kg3qcexTRlhqSfeifdl7ltkJ38KTatKgaA5fuZuJ7xhuOP1lCpAXYZVL+O4NTU11PkV1DWnj1byiPDdc8XYIZZzVnhvzq8EzoXjUfUuPuP3oPFzXBxwc4cSOJekdIR6vKr5nr9yu8RehtB5Su1sa27L4ke+XrGHGY0/7oqZ+EolPNOfT5qqKdQIexy2SrGOjWJX76Q61EOU6IdGSTPraEnJQkBgoRim/l3rg3FTgUA5WG1/QmTCjyOWS29Rjg7q3uzG4GdkrD41Qkmkr4D/aX8A+yGgv/7fwfRYop8d28X+dNrgAnfD+EWaAHQU2a5sN0uYXi9bf7SDWOd9sL8Spd+qGYyb8OtP8/ui30DOZWDLxvQDtFijv68B/sATQBXWUJ2AJKG8Z+Lfymni82k2MshxDF037ABm6jbpQt17TeVSVCXhdPsnPPrETQd344TeJ2sYGVXV3K0MHkk3/EhwYZs2L3Ba6jKowFUWGTTmTaPEggISd1Sc1fD/W4LEI/MAA+oyovpG/pYLM9ar5EbVxFD3n+fZxOBUNFQki7tAvjQHiI5TD2IqOGuHGRtse4ir+0c2myq0hAbxJSm9gIIX3OJb0SQG2mVQVF+mSQq2A6M7bSugsiXtmvtZQ/YwqtDLMd94HJqAYhY9PNqKwMMWllK4HEVUvPnfKKnfQ4c8MvaGu46c0SUwIAYukR3k8gx2mbnWh0TSqA2jjFzFdTrQs6hReiFCXWC+uVmC1t1cB8w+zHC38zGftreXoMG86MqRF71y6pU/fJS+TwPO7Ng6CAiwE0Zmqi+FNNAE0o48VmA66MuKouVnRsfC1Z6fiKxcXNFOEjoQXR+KNsG3W7TeSf+zz897FmyfW/FbnOR/W9dtPnam567oVu5tAOk2uh+f0qIpPYDdeeHMFVLSLKqNsqkebZp1v48H0REu3TyYOnAt4kF2nwdnivLR1YrF7uWkj4wwgCJdWb37E8zUBbIbNfUcnMBirY3kEQbiP9KyvIqVd0cGuL8iyHIpZ0QDgetRnZTsknEaklBO15v67IOqTh2ouNzYjZoYx+QN0hiPXK9JsyiYH8bPTMzf2t7FmttwmDgnEIHWH20hNmBQu50kjDLP9YRs6RyhKoheF4gZQT7P2MWeBVgcJBz+wxEri/tnaz2jp4bSx8M+uC7Xu1jCz8w31+nU18NCFdFCM89gFnAJ280G3oMhRqrYr4sN9WSCuDfBwtRA62VEvHex2mh3ZxdCYx2aqriveepPWoo4OU9iJewVjmkYT4GugB0ovCgoF0dBheG5DQSVw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d543228a-2fff-4522-ab8d-08dc2a8c62ce X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:42.3002 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0037 Subject: [FFmpeg-devel] [PATCH 33/35] avfilter/avfilter: Move AVFilterGraph private fields to FFFilterGraph 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: jwtnwkqU5mSA (These fields were in AVFilterGraph although AVFilterGraphInternal existed for years.) Signed-off-by: Andreas Rheinhardt --- libavfilter/avfilter.h | 12 ------------ libavfilter/avfilter_internal.h | 6 ++++++ libavfilter/avfiltergraph.c | 32 +++++++++++++++++--------------- 3 files changed, 23 insertions(+), 27 deletions(-) diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 65034f831a..35840cfd54 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -922,18 +922,6 @@ typedef struct AVFilterGraph { avfilter_execute_func *execute; char *aresample_swr_opts; ///< swr options to use for the auto-inserted aresample filters, Access ONLY through AVOptions - - /** - * Private fields - * - * The following fields are for internal use only. - * Their type, offset, number and semantic can change without notice. - */ - - AVFilterLink **sink_links; - int sink_links_count; - - unsigned disable_auto_convert; } AVFilterGraph; /** diff --git a/libavfilter/avfilter_internal.h b/libavfilter/avfilter_internal.h index 9ddb82bf26..72712608e7 100644 --- a/libavfilter/avfilter_internal.h +++ b/libavfilter/avfilter_internal.h @@ -41,6 +41,12 @@ typedef struct FFFilterGraph { * The public AVFilterGraph. See avfilter.h for it. */ AVFilterGraph p; + + AVFilterLink **sink_links; + int sink_links_count; + + unsigned disable_auto_convert; + void *thread; avfilter_execute_func *thread_execute; FFFrameQueueGlobal frame_queues; diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c index 0e2b5ee1f2..c25fc42430 100644 --- a/libavfilter/avfiltergraph.c +++ b/libavfilter/avfiltergraph.c @@ -127,7 +127,7 @@ void avfilter_graph_free(AVFilterGraph **graphp) ff_graph_thread_free(graphi); - av_freep(&graph->sink_links); + av_freep(&graphi->sink_links); av_opt_free(graph); @@ -159,7 +159,7 @@ fail: void avfilter_graph_set_auto_convert(AVFilterGraph *graph, unsigned flags) { - graph->disable_auto_convert = flags; + fffiltergraph(graph)->disable_auto_convert = flags; } AVFilterContext *avfilter_graph_alloc_filter(AVFilterGraph *graph, @@ -471,7 +471,7 @@ static int query_formats(AVFilterGraph *graph, void *log_ctx) char inst_name[30]; const char *opts; - if (graph->disable_auto_convert) { + if (fffiltergraph(graph)->disable_auto_convert) { av_log(log_ctx, AV_LOG_ERROR, "The filters '%s' and '%s' do not have a common format " "and automatic conversion is disabled.\n", @@ -1311,8 +1311,8 @@ static int graph_config_pointers(AVFilterGraph *graph, void *log_ctx) } } av_assert0(n == sink_links_count); - graph->sink_links = sinks; - graph->sink_links_count = sink_links_count; + fffiltergraph(graph)->sink_links = sinks; + fffiltergraph(graph)->sink_links_count = sink_links_count; return 0; } @@ -1395,7 +1395,7 @@ int avfilter_graph_queue_command(AVFilterGraph *graph, const char *target, const return 0; } -static void heap_bubble_up(AVFilterGraph *graph, +static void heap_bubble_up(FFFilterGraph *graph, AVFilterLink *link, int index) { AVFilterLink **links = graph->sink_links; @@ -1414,7 +1414,7 @@ static void heap_bubble_up(AVFilterGraph *graph, link->age_index = index; } -static void heap_bubble_down(AVFilterGraph *graph, +static void heap_bubble_down(FFFilterGraph *graph, AVFilterLink *link, int index) { AVFilterLink **links = graph->sink_links; @@ -1440,18 +1440,20 @@ static void heap_bubble_down(AVFilterGraph *graph, void ff_avfilter_graph_update_heap(AVFilterGraph *graph, AVFilterLink *link) { - heap_bubble_up (graph, link, link->age_index); - heap_bubble_down(graph, link, link->age_index); + FFFilterGraph *graphi = fffiltergraph(graph); + heap_bubble_up (graphi, link, link->age_index); + heap_bubble_down(graphi, link, link->age_index); } int avfilter_graph_request_oldest(AVFilterGraph *graph) { - AVFilterLink *oldest = graph->sink_links[0]; + FFFilterGraph *graphi = fffiltergraph(graph); + AVFilterLink *oldest = graphi->sink_links[0]; int64_t frame_count; int r; - while (graph->sink_links_count) { - oldest = graph->sink_links[0]; + while (graphi->sink_links_count) { + oldest = graphi->sink_links[0]; if (oldest->dst->filter->activate) { r = av_buffersink_get_frame_flags(oldest->dst, NULL, AV_BUFFERSINK_FLAG_PEEK); @@ -1466,12 +1468,12 @@ int avfilter_graph_request_oldest(AVFilterGraph *graph) oldest->dst->name, oldest->dstpad->name); /* EOF: remove the link from the heap */ - if (oldest->age_index < --graph->sink_links_count) - heap_bubble_down(graph, graph->sink_links[graph->sink_links_count], + if (oldest->age_index < --graphi->sink_links_count) + heap_bubble_down(graphi, graphi->sink_links[graphi->sink_links_count], oldest->age_index); oldest->age_index = -1; } - if (!graph->sink_links_count) + if (!graphi->sink_links_count) return AVERROR_EOF; av_assert1(!oldest->dst->filter->activate); av_assert1(oldest->age_index >= 0); From patchwork Sat Feb 10 23:04:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46167 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752888pzc; Sat, 10 Feb 2024 15:03:26 -0800 (PST) X-Google-Smtp-Source: AGHT+IGUo7ZyJwBoQA1kQnoWiTYh4sVk85PfVigFZVgQHOC7/NN8jw6yaQYuTJWT8Lep9Up48sQH X-Received: by 2002:a17:906:3493:b0:a3c:6015:4d07 with SMTP id g19-20020a170906349300b00a3c60154d07mr426740ejb.54.1707606206519; Sat, 10 Feb 2024 15:03:26 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXo87D6wFf/zpIDbDsUNyyOExsEBhQGI9ultHMPCsaSYnTY0kENNn7dW6s36Dm0tMOGqGy6IaKFbtRq2kFWQY75rx7bmREasxRL4bNINbUcSuGBdxHANz+xDCBKGREb1+AshP+gbKNLOL+d2FFiTUi51JhMu9ATERsJV6MCHm1a4dN4+9jFNrrD28xLwBxDnXSuV8CDv+Btb9yP6dAc/QmDvqq9N8BMSJMdjIYrNluxzSj/YERNBF7hHBm0qkaoMIE2UyGFWlNkSTDJWE5M2whcCe929DLlk/sPSrFJBcnGVlX1E95uP7kD+QFxwGD9P1fZ5OBVuEn43J7MPC5mOWY484SAyynzWx4lVZ2ZxCs8TUeKzcMh+jj+aF0vEH4Dhni02T0DzPwlXDHN16tah+ASk0gdvmMSVbRmnGpt+OnJYJcDuL9zUpEq5/bpZehh7A2KjD1bOTZ//MUSyKfiGu2SbHcTJICrUWbq8dBiUvKJfXdw3JBV9YCRVvv29Dc39cXHkmQ2CGlIFIQ0gsBYNHRqLv1z+fHjUSsaK4TDlryf5/12rkOWuwMr9ng9yAdJtV/TqgvaLy7xnqVnWf5xbDeBSL5VtKR1swHJwDK+1QLLrui+PFuNwNJ2D/d3hzwbwuhtIeNEt6PxcR56DKSy3fBtxP+Gw60BDT1rcdlbMZiTolBoGEjKokHkz1Hd20JsQ7CWZkFCOq+WEnVIzOvv37C0TrWmoggQGsXKkJgIdUg4gG0FQ54G/s1segYSJSiP3Zh4V193ixrejjrq5EVBl8VjMgTVqUBWs/neI8QcCYvyiWZR1Nx6YPpiTm5mGafwxpVqz/FdlkqjfrIQJ1vAMpJ25e2ma620sja5kpIjXU0ncVz9+yuFLzJXRXZMTW+iMFNY3uJV+M/DUNgxqjwDMRoTFKCIuT40gBb68M9oZ1x1ihbzhJFsNsa3/KbIE82n7VDu4P HfMixsUkEfmHRp0mfDrKfP/efyLkIiGQ9aQhfBK1LAd1FpILVgY+/QGPYL/C7o+2xbXCkKqahV9U+ODycV7zpVovDtagrokQUAo14oi6CdWPI9iRq6mO9XRkK7v16DSb02vFC/3M815i4xpjHQE/5Xn3izX/+IVgShdV4afKw52VVrJKn5qA4dKN89rcjfjWK4tYThvRo0CjQkU7YL9pPSzI9GYgofB43TC7B8kiLs8YYz/f2NHDkiOjGXTj944mSkrzhgKTikX3wj0KEPX7jkaEJaYNrG/L62XJydzcfPgaRy3GKKXWOPUZyPSQDH792eW3ykdUrEWNXoRNXxt30ocoXDxW1dfWLuCNW90FHUWbxSDnC1/AfctayROQljLsOc/xsPoa0W8jJwCm84oqPvBJ2KiLXnX7Olfoz++p6gGgQUZqQo12EOQQhFCelJ/y9/9wb9jxL4H5/Kmch/30RSLrdQfeuwbtRKiG1EY8H3ajJ3yPijPfTj7S35XSJHLOFzCgAW2Kj7o0trCvOolCSBClCOtmTG/XyiSpmidYvzFBoETATeZy+VpBB1qkoLaEvtb8HAjdkMS5WKogjZLOfRt6spzHt7qn9PRQ== Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id hv12-20020a17090760cc00b00a3c2f685485si1022647ejc.201.2024.02.10.15.03.26; Sat, 10 Feb 2024 15:03:26 -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=@outlook.com header.s=selector1 header.b=DUOCkYlj; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BFBE568D152; Sun, 11 Feb 2024 01:02:53 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2040.outbound.protection.outlook.com [40.92.73.40]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7319F68D15E for ; Sun, 11 Feb 2024 01:02:51 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IiHvQPlUalXCTeEIAHR1y41yL8O79NjAVXYGFMsCSs16GbLbz1C0sNAVXf93iczDHIpozYi2vYD7CHzhonVgQZULPTXYogcMshz56oG69UteUYDkH0cUPkbFoFWVj2tgPfPWl9VxZfBiAvfqXmiBpxg0uPmq1lSZyOj04YNSHKqupsu384C0vU2xvqevOgnk+XNB/+JAtbLyYZWIEDYL/vGL7vjcdfUlqz99bwiDnbyOwuHmm2RDB6z5pm+eZTtivouspMrOuJmJnokxay8hVJJ/Rm6fnFYrBZl86ZVPnYqn77N0lxlGToMT98hgBdWdnxsDLDItFSMrp6NQy7U0Uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=EnLDz3dQvbFH2NKvcsMv5LG5ipUdHLKoMYGiQy3a2LU=; b=RhadaLUJxv1BoEfQJaLDKIXAdo0y3ExcVsTmJHbRBanSh1lvNvnG55uCRrwUer+Rh3+hpIujbL4HwrocSMBtfADFnF5w1ynl+6Vvj637V+b0ohuMJdOTT+pkjWZ18LJB2mppdVism+1ll38+L48cez8G5EbDcBeWiWebEcdxqmZuzb7owQ7hgexR/Gw5lCZ6tIVMmosWvH6sU4scyc4Fk8v4S8S4QHl1Yll8KfS0TGqrguiuro5IoiDBvIT1++aMP5mKtAVFtTPMKk0QIh34guXsN+aqDVlv33nLBssJ2CRikpKR7p8vo/oAstrSvSe7B5FKQbzF7vQ7de6NiHFM1Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EnLDz3dQvbFH2NKvcsMv5LG5ipUdHLKoMYGiQy3a2LU=; b=DUOCkYljcM0pkpWEv1p0gsYTZz6GjxxsgN5Hb+OJ/Q5KkU8tqGnyWjK3FdMhgG9kfCGijb8NOYtQ+02ZIDvGJGlBD0az58EDIshTD8wbAxaFfnbV3/XptDQxP5XjblXgdSi/bMiLAFt8+oSAyy5SZkHMq7XLZ4PAWXMS9d4u3GqKq35ccSLcAYUFgNgKNKvL8YJUtqc+KVJNC3lpFHGUIgj5cJr5gNTkmkVHAiSB3P4HWEfxTyMHmPUzEX1DAJtw4Dqqj6d1HTV11bQm+VWw4AhaxbOXNaWzmeePbYB5oY1js3wJXnSD3R50NFlMR/sICgDlsoHxY3SAbPHyf+M/qQ== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AS8P250MB0037.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.33; Sat, 10 Feb 2024 23:02:48 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:48 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:10 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [ItEgHC9y7yzXqXq+Ans8sth2Qa/GNmCq6CnG5L52fmk=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-7-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AS8P250MB0037:EE_ X-MS-Office365-Filtering-Correlation-Id: 599cda2d-1217-4873-ee89-08dc2a8c66a9 X-MS-Exchange-SLBlob-MailProps: 9IecXKUgicCxfSlM0Mf+zc92VeVIBtN2Utoo4PySODx1zB+wik7ZNMSbtiUYTd2m6hH3MPa3jqj6Tqqh1d8usEjbfqoc6VJrQXnwOEkMIv+0jl0yfsBxBqwV3R//UYFYLJwg3yZiYU55k3MgYHxh/9LEMgR7428LEMC3bhCs1A0qk4MBaJ5OKtIjgPYRY1O882RWj/cyrIt8nf9Tjux7KXfr7g91GPf7z8UrVfDhhAilutUJ3oo9Jv/Me0locckmdizGxBUUnwAfQhbX7TUbOtj+qaiGM3k/WtvzItUwxRuD4YagptC1PDBi06nvJpB3MLBQsS32TEFaTzdUPG2rvBMTdzn9EPAxLVEd5t/dxcCnJXyolm+40t6CM1jdmHLKUGF18y2sbflsPe+62MVwr3qKPP/EDMUsmLQfIJLuEuvgnKMhkjrbLEVUJ3Ix1HfanCYFlI8dYJ7+RgYwUEXANloOnssufRZnamAPDWpXII8rwMuPlyh728NRsrMjiA5V3SnuNMkYud9MdErspwtCGb6T/mJXeUNmUmMghHegBn7FgghJR2FQvbpIw8XaKQiyqPTLW7UGsKKi6JpNBKHIpWv0FIjZGAhgsFgCNLAQbLJ9WKVHG7jSgg0TCJOe23Z2dNdgZV+1/zSHBujN0J0Uay1cyW5afYepAsmQbe4cKmS5wAtoTmd9pcSPsWS2iXf7CzpY+toFljehA8r9+lGlKmytQ/gZWCRvJGSeOjW1a95cYe8YHcgeAQ== X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rBafPrMMXm950Qcp0MG98GYrDRBh96Fun11KZSMuYv/N3TGZ4bpqPfACBxiOtFPC5y+Xep4onwaqT8JtqO9dIfoSgO1mBjXqqb0pyh+l82Qf+UbiMjrfE2irOsptRgCaxe3hzUc4xgsQeQAH3vjo1NC6IHcoTLbyEboX/KNBy4y6A2NpHlGoOHw67zVGKjzdM+8yZ243wbObpv+O+mK9YzNui5AZKuU7FRGukBEKcSec6AYAZMkx/JeAoLab8kRjdgLAGvhzXLlW1NxJEMCIArL0gzTHTVv1BoaBORUk7gMKSsJszWb3rCkCwtBDXcIWTvZqtdVrgrHdUNjWPVc6EMt2OxtZh4jSHqTb91PBm8k/C0IJVZ051zESIgNMB34Wt8R+fE0Nu1F1E78udInN9uvfgbNF1USTH7fEFhbu4hCkzjw/jKPDjAU1sFE2SnRjcijPbj/ph/8ilUt+vPjyoEdnvOgVPmjSJ6Xwa1OCDmkXPsPUNxd7bdgEqH0jEX5OnTkm8cie9rwnTHDTFReHUgEJK0m7rrV1sc0O9eKPIpYqTPhI6jw9DrQHXm0pkUxBOiSH4nYYmW7Al09KNjFoqg== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 8Jv87qidsQn1WzhpTIc6kQfzxJc+zbGeq5+cnT8wSeWhmvOdfa4/rEasdsUBxYPottCx58KxvpU4DKaqLaQ/6RmOe8aadzOsVUsKWtuvrZA8LqWMFhTh2WBrX4Q1naE+Sc5UvmzYdLc3YvWEg45L0fQ8EtkgRbQa+hVaUIDliBSxc2kZ0pGQastBV2Rrnln5Y5iEL8Vwu4CXwJ4FTC+FTi6jSDbTP1BsP9jAgF76XwZ9msdZmzL8tr5/fbrC2mf9M2+FujFrUnI6y/8jI8rBM2SVU6yZhdpbFSIpMaJf3jTSU5YvJmdx05E8gzxw8hX6rwYeEO5A3V6scEbVRxa9WVFkR+sI0m7WMD+YC+9TylrjhUn7KSLhCBghQ4t/+omtR5PE0qHkFRFTUmRHGFF8nJu3eTJYdV2eiSOr4ei7hnd4afU8G58nwFQe6/cxyVOcTvcwq1Oyud+E8XkA6K959T3pQ6cWpKJeR56CoH5Qxy0gFo7QkPPTsWvZfbBNlPHr3fbzhtnKvEMsYntc8+Yg00WIroINukVJXd+QRY+kGafV2RNwUkZQChO6/gywLkGGwoZ7566ho8ggNBQnk2f1TTMXkY5+5jgZZTNqT6Ja6vxYKjOiqBm/eTNzT7YVIUpQ/IDqtx1odJMe9SQiq2yX7jd283w2sFxGORKS6WLgD0e2lWLlO5Zr7Xdujyn56jt1W4bK7IfTRekXfB3XADr0zjEDejP2CCoGlUeeZneEG1u0PEIJ/LhK5KsAWaKqTc5UZA7EyUTGCUe8ycFIup5VpHdlBfqFk3wUFGmpbq/0kPo+iUc+cfgFYR48V435Ho1OdD8SodFRuUpYqcvW9RoFq53WACXDQFvpMMhNwGplCPcJWBTdAh895cr14LHuaMbEvYbKUlACFS91wG83YyZuZwr0Ox4+lre5HjwEcj7wtCOc9++UKW/XppWvlqEVbp5qJu9UXE7ily2izJfXXq21wM3RHOi+BojR80910Gjb/UjKJ9pNXIFSoQgaiPKJacu6+BZQvCOnBiuGowwOCTO8tSS3SpooGjozRe0EWxADR7bPYqXS3hp8cVhPcAwpteWCCMpGKaWCL8DWlN990yjeAdLv5uwcxG86tQoxdOBP9Gla/C9Gvq9NBBRwsPpH9dURQK8ZMbeKsESUFoTbqhZ539qtm9RWS5V794g8q3PGZGZxN0yIzOEGwMYrVyOy+RUD6GzKP6hlPypkhuqY4GVy042RwepSD6b+/LPNJfaJvK4XoPpGoR4hJ5NZVzpqE31PLIBKDQxyGdx+M1627hbqQQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 599cda2d-1217-4873-ee89-08dc2a8c66a9 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:48.7951 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0037 Subject: [FFmpeg-devel] [PATCH 34/35] avcodec/avcodec: Reorder AVCodecContext and AVSubtitleRect fields 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: vNdjZPkTXhxH Move related fields closer together and try to plug holes. Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.h | 585 +++++++++++++++++++++---------------------- 1 file changed, 292 insertions(+), 293 deletions(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 431fc11de6..6706061ecc 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -490,29 +490,6 @@ typedef struct AVCodecContext { */ int64_t bit_rate; - /** - * number of bits the bitstream is allowed to diverge from the reference. - * the reference can be CBR (for CBR pass1) or VBR (for pass2) - * - encoding: Set by user; unused for constant quantizer encoding. - * - decoding: unused - */ - int bit_rate_tolerance; - - /** - * Global quality for codecs which cannot change it per frame. - * This should be proportional to MPEG-1/2/4 qscale. - * - encoding: Set by user. - * - decoding: unused - */ - int global_quality; - - /** - * - encoding: Set by user. - * - decoding: unused - */ - int compression_level; -#define FF_COMPRESSION_DEFAULT -1 - /** * AV_CODEC_FLAG_*. * - encoding: Set by user. @@ -562,6 +539,22 @@ typedef struct AVCodecContext { */ AVRational time_base; + /** + * Timebase in which pkt_dts/pts and AVPacket.dts/pts are expressed. + * - encoding: unused. + * - decoding: set by user. + */ + AVRational pkt_timebase; + + /** + * - decoding: For codecs that store a framerate value in the compressed + * bitstream, the decoder may export it here. { 0, 1} when + * unknown. + * - encoding: May be used to signal the framerate of CFR content to an + * encoder. + */ + AVRational framerate; + #if FF_API_TICKS_PER_FRAME /** * For some codecs, the time base is closer to the field rate than the frame rate. @@ -636,11 +629,13 @@ typedef struct AVCodecContext { int coded_width, coded_height; /** - * the number of pictures in a group of pictures, or 0 for intra_only + * sample aspect ratio (0 if unknown) + * That is the width of a pixel divided by the height of the pixel. + * Numerator and denominator must be relatively prime and smaller than 256 for some video standards. * - encoding: Set by user. - * - decoding: unused + * - decoding: Set by libavcodec. */ - int gop_size; + AVRational sample_aspect_ratio; /** * Pixel format, see AV_PIX_FMT_xxx. @@ -657,6 +652,82 @@ typedef struct AVCodecContext { */ enum AVPixelFormat pix_fmt; + /** + * Nominal unaccelerated pixel format, see AV_PIX_FMT_xxx. + * - encoding: unused. + * - decoding: Set by libavcodec before calling get_format() + */ + enum AVPixelFormat sw_pix_fmt; + + /** + * Chromaticity coordinates of the source primaries. + * - encoding: Set by user + * - decoding: Set by libavcodec + */ + enum AVColorPrimaries color_primaries; + + /** + * Color Transfer Characteristic. + * - encoding: Set by user + * - decoding: Set by libavcodec + */ + enum AVColorTransferCharacteristic color_trc; + + /** + * YUV colorspace type. + * - encoding: Set by user + * - decoding: Set by libavcodec + */ + enum AVColorSpace colorspace; + + /** + * MPEG vs JPEG YUV range. + * - encoding: Set by user to override the default output color range value, + * If not specified, libavcodec sets the color range depending on the + * output format. + * - decoding: Set by libavcodec, can be set by the user to propagate the + * color range to components reading from the decoder context. + */ + enum AVColorRange color_range; + + /** + * This defines the location of chroma samples. + * - encoding: Set by user + * - decoding: Set by libavcodec + */ + enum AVChromaLocation chroma_sample_location; + + /** Field order + * - encoding: set by libavcodec + * - decoding: Set by user. + */ + enum AVFieldOrder field_order; + + /** + * number of reference frames + * - encoding: Set by user. + * - decoding: Set by lavc. + */ + int refs; + + /** + * Size of the frame reordering buffer in the decoder. + * For MPEG-2 it is 1 IPB or 0 low delay IP. + * - encoding: Set by libavcodec. + * - decoding: Set by libavcodec. + */ + int has_b_frames; + + /** + * slice flags + * - encoding: unused + * - decoding: Set by user. + */ + int slice_flags; +#define SLICE_FLAG_CODED_ORDER 0x0001 ///< draw_horiz_band() is called in coded order instead of display +#define SLICE_FLAG_ALLOW_FIELD 0x0002 ///< allow draw_horiz_band() with field slices (MPEG-2 field pics) +#define SLICE_FLAG_ALLOW_PLANE 0x0004 ///< allow draw_horiz_band() with 1 component at a time (SVQ1) + /** * If non NULL, 'draw_horiz_band' is called by the libavcodec * decoder to draw a horizontal band. It improves cache usage. Not @@ -735,14 +806,6 @@ typedef struct AVCodecContext { */ float b_quant_offset; - /** - * Size of the frame reordering buffer in the decoder. - * For MPEG-2 it is 1 IPB or 0 low delay IP. - * - encoding: Set by libavcodec. - * - decoding: Set by libavcodec. - */ - int has_b_frames; - /** * qscale factor between P- and I-frames * If > 0 then the last P-frame quantizer will be used (q = lastp_q * factor + offset). @@ -795,13 +858,11 @@ typedef struct AVCodecContext { float dark_masking; /** - * sample aspect ratio (0 if unknown) - * That is the width of a pixel divided by the height of the pixel. - * Numerator and denominator must be relatively prime and smaller than 256 for some video standards. + * noise vs. sse weight for the nsse comparison function * - encoding: Set by user. - * - decoding: Set by libavcodec. + * - decoding: unused */ - AVRational sample_aspect_ratio; + int nsse_weight; /** * motion estimation comparison function @@ -889,16 +950,6 @@ typedef struct AVCodecContext { */ int me_range; - /** - * slice flags - * - encoding: unused - * - decoding: Set by user. - */ - int slice_flags; -#define SLICE_FLAG_CODED_ORDER 0x0001 ///< draw_horiz_band() is called in coded order instead of display -#define SLICE_FLAG_ALLOW_FIELD 0x0002 ///< allow draw_horiz_band() with field slices (MPEG-2 field pics) -#define SLICE_FLAG_ALLOW_PLANE 0x0004 ///< allow draw_horiz_band() with 1 component at a time (SVQ1) - /** * macroblock decision mode * - encoding: Set by user. @@ -927,6 +978,13 @@ typedef struct AVCodecContext { */ uint16_t *inter_matrix; + /** + * custom intra quantization matrix + * - encoding: Set by user, can be NULL. + * - decoding: unused. + */ + uint16_t *chroma_intra_matrix; + /** * precision of the intra DC coefficient - 8 * - encoding: Set by user. @@ -934,20 +992,6 @@ typedef struct AVCodecContext { */ int intra_dc_precision; - /** - * Number of macroblock rows at the top which are skipped. - * - encoding: unused - * - decoding: Set by user. - */ - int skip_top; - - /** - * Number of macroblock rows at the bottom which are skipped. - * - encoding: unused - * - decoding: Set by user. - */ - int skip_bottom; - /** * minimum MB Lagrange multiplier * - encoding: Set by user. @@ -976,11 +1020,11 @@ typedef struct AVCodecContext { int keyint_min; /** - * number of reference frames + * the number of pictures in a group of pictures, or 0 for intra_only * - encoding: Set by user. - * - decoding: Set by lavc. + * - decoding: unused */ - int refs; + int gop_size; /** * Note: Value depends upon the compare function used for fullpel ME. @@ -989,44 +1033,6 @@ typedef struct AVCodecContext { */ int mv0_threshold; - /** - * Chromaticity coordinates of the source primaries. - * - encoding: Set by user - * - decoding: Set by libavcodec - */ - enum AVColorPrimaries color_primaries; - - /** - * Color Transfer Characteristic. - * - encoding: Set by user - * - decoding: Set by libavcodec - */ - enum AVColorTransferCharacteristic color_trc; - - /** - * YUV colorspace type. - * - encoding: Set by user - * - decoding: Set by libavcodec - */ - enum AVColorSpace colorspace; - - /** - * MPEG vs JPEG YUV range. - * - encoding: Set by user to override the default output color range value, - * If not specified, libavcodec sets the color range depending on the - * output format. - * - decoding: Set by libavcodec, can be set by the user to propagate the - * color range to components reading from the decoder context. - */ - enum AVColorRange color_range; - - /** - * This defines the location of chroma samples. - * - encoding: Set by user - * - decoding: Set by libavcodec - */ - enum AVChromaLocation chroma_sample_location; - /** * Number of slices. * Indicates number of picture subdivisions. Used for parallelized @@ -1036,12 +1042,6 @@ typedef struct AVCodecContext { */ int slices; - /** Field order - * - encoding: set by libavcodec - * - decoding: Set by user. - */ - enum AVFieldOrder field_order; - /* audio only */ int sample_rate; ///< samples per second @@ -1052,6 +1052,14 @@ typedef struct AVCodecContext { */ enum AVSampleFormat sample_fmt; ///< sample format + /** + * Audio channel layout. + * - encoding: must be set by the caller, to one of AVCodec.ch_layouts. + * - decoding: may be set by the caller if known e.g. from the container. + * The decoder can then override during decoding as needed. + */ + AVChannelLayout ch_layout; + /* The following data should not be initialized. */ /** * Number of samples per channel in an audio frame. @@ -1092,6 +1100,41 @@ typedef struct AVCodecContext { */ enum AVSampleFormat request_sample_fmt; + /** + * Audio only. The number of "priming" samples (padding) inserted by the + * encoder at the beginning of the audio. I.e. this number of leading + * decoded samples must be discarded by the caller to get the original audio + * without leading padding. + * + * - decoding: unused + * - encoding: Set by libavcodec. The timestamps on the output packets are + * adjusted by the encoder so that they always refer to the + * first sample of the data actually contained in the packet, + * including any added padding. E.g. if the timebase is + * 1/samplerate and the timestamp of the first input sample is + * 0, the timestamp of the first output packet will be + * -initial_padding. + */ + int initial_padding; + + /** + * Audio only. The amount of padding (in samples) appended by the encoder to + * the end of the audio. I.e. this number of decoded samples must be + * discarded by the caller from the end of the stream to get the original + * audio without any trailing padding. + * + * - decoding: unused + * - encoding: unused + */ + int trailing_padding; + + /** + * Number of samples to skip after a discontinuity + * - decoding: unused + * - encoding: set by libavcodec + */ + int seek_preroll; + /** * This callback is called at the beginning of each frame to get data * buffer(s) for it. There may be one contiguous buffer for all the data or @@ -1175,6 +1218,29 @@ typedef struct AVCodecContext { int (*get_buffer2)(struct AVCodecContext *s, AVFrame *frame, int flags); /* - encoding parameters */ + /** + * number of bits the bitstream is allowed to diverge from the reference. + * the reference can be CBR (for CBR pass1) or VBR (for pass2) + * - encoding: Set by user; unused for constant quantizer encoding. + * - decoding: unused + */ + int bit_rate_tolerance; + + /** + * Global quality for codecs which cannot change it per frame. + * This should be proportional to MPEG-1/2/4 qscale. + * - encoding: Set by user. + * - decoding: unused + */ + int global_quality; + + /** + * - encoding: Set by user. + * - decoding: unused + */ + int compression_level; +#define FF_COMPRESSION_DEFAULT -1 + float qcompress; ///< amount of qscale change between easy & hard scenes (0.0-1.0) float qblur; ///< amount of qscale smoothing over time (0.0-1.0) @@ -1380,6 +1446,75 @@ typedef struct AVCodecContext { */ void *hwaccel_context; + /** + * A reference to the AVHWFramesContext describing the input (for encoding) + * or output (decoding) frames. The reference is set by the caller and + * afterwards owned (and freed) by libavcodec - it should never be read by + * the caller after being set. + * + * - decoding: This field should be set by the caller from the get_format() + * callback. The previous reference (if any) will always be + * unreffed by libavcodec before the get_format() call. + * + * If the default get_buffer2() is used with a hwaccel pixel + * format, then this AVHWFramesContext will be used for + * allocating the frame buffers. + * + * - encoding: For hardware encoders configured to use a hwaccel pixel + * format, this field should be set by the caller to a reference + * to the AVHWFramesContext describing input frames. + * AVHWFramesContext.format must be equal to + * AVCodecContext.pix_fmt. + * + * This field should be set before avcodec_open2() is called. + */ + AVBufferRef *hw_frames_ctx; + + /** + * A reference to the AVHWDeviceContext describing the device which will + * be used by a hardware encoder/decoder. The reference is set by the + * caller and afterwards owned (and freed) by libavcodec. + * + * This should be used if either the codec device does not require + * hardware frames or any that are used are to be allocated internally by + * libavcodec. If the user wishes to supply any of the frames used as + * encoder input or decoder output then hw_frames_ctx should be used + * instead. When hw_frames_ctx is set in get_format() for a decoder, this + * field will be ignored while decoding the associated stream segment, but + * may again be used on a following one after another get_format() call. + * + * For both encoders and decoders this field should be set before + * avcodec_open2() is called and must not be written to thereafter. + * + * Note that some decoders may require this field to be set initially in + * order to support hw_frames_ctx at all - in that case, all frames + * contexts used must be created on the same device. + */ + AVBufferRef *hw_device_ctx; + + /** + * Bit set of AV_HWACCEL_FLAG_* flags, which affect hardware accelerated + * decoding (if active). + * - encoding: unused + * - decoding: Set by user (either before avcodec_open2(), or in the + * AVCodecContext.get_format callback) + */ + int hwaccel_flags; + + /* + * Video decoding only. Sets the number of extra hardware frames which + * the decoder will allocate for use by the caller. This must be set + * before avcodec_open2() is called. + * + * Some hardware decoders require all frames that they will use for + * output to be defined in advance before decoding starts. For such + * decoders, the hardware frame pool must therefore be of a fixed size. + * The extra frames set here are on top of any number that the decoder + * needs internally in order to operate normally (for example, frames + * used as reference pictures). + */ + int extra_hw_frames; + /** * error * - encoding: Set by libavcodec if flags & AV_CODEC_FLAG_PSNR. @@ -1434,13 +1569,6 @@ typedef struct AVCodecContext { */ int bits_per_raw_sample; - /** - * low resolution decoding, 1-> 1/2 size, 2->1/4 size - * - encoding: unused - * - decoding: Set by user. - */ - int lowres; - /** * thread count * is used to decide how many independent tasks should be passed to execute() @@ -1498,13 +1626,6 @@ typedef struct AVCodecContext { */ int (*execute2)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg, int jobnr, int threadnr), void *arg2, int *ret, int count); - /** - * noise vs. sse weight for the nsse comparison function - * - encoding: Set by user. - * - decoding: unused - */ - int nsse_weight; - /** * profile * - encoding: Set by user. @@ -1662,6 +1783,16 @@ typedef struct AVCodecContext { #define FF_LEVEL_UNKNOWN -99 #endif + /** + * Properties of the stream that gets decoded + * - encoding: unused + * - decoding: set by libavcodec + */ + unsigned properties; +#define FF_CODEC_PROPERTY_LOSSLESS 0x00000001 +#define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x00000002 +#define FF_CODEC_PROPERTY_FILM_GRAIN 0x00000004 + /** * Skip loop filtering for selected frames. * - encoding: unused @@ -1684,55 +1815,39 @@ typedef struct AVCodecContext { enum AVDiscard skip_frame; /** - * Header containing style information for text subtitles. - * For SUBTITLE_ASS subtitle type, it should contain the whole ASS - * [Script Info] and [V4+ Styles] section, plus the [Events] line and - * the Format line following. It shouldn't include any Dialogue line. - * - encoding: Set/allocated/freed by user (before avcodec_open2()) - * - decoding: Set/allocated/freed by libavcodec (by avcodec_open2()) - */ - uint8_t *subtitle_header; - int subtitle_header_size; - - /** - * Audio only. The number of "priming" samples (padding) inserted by the - * encoder at the beginning of the audio. I.e. this number of leading - * decoded samples must be discarded by the caller to get the original audio - * without leading padding. + * Skip processing alpha if supported by codec. + * Note that if the format uses pre-multiplied alpha (common with VP6, + * and recommended due to better video quality/compression) + * the image will look as if alpha-blended onto a black background. + * However for formats that do not use pre-multiplied alpha + * there might be serious artefacts (though e.g. libswscale currently + * assumes pre-multiplied alpha anyway). * - * - decoding: unused - * - encoding: Set by libavcodec. The timestamps on the output packets are - * adjusted by the encoder so that they always refer to the - * first sample of the data actually contained in the packet, - * including any added padding. E.g. if the timebase is - * 1/samplerate and the timestamp of the first input sample is - * 0, the timestamp of the first output packet will be - * -initial_padding. + * - decoding: set by user + * - encoding: unused */ - int initial_padding; + int skip_alpha; /** - * - decoding: For codecs that store a framerate value in the compressed - * bitstream, the decoder may export it here. { 0, 1} when - * unknown. - * - encoding: May be used to signal the framerate of CFR content to an - * encoder. + * Number of macroblock rows at the top which are skipped. + * - encoding: unused + * - decoding: Set by user. */ - AVRational framerate; + int skip_top; /** - * Nominal unaccelerated pixel format, see AV_PIX_FMT_xxx. - * - encoding: unused. - * - decoding: Set by libavcodec before calling get_format() + * Number of macroblock rows at the bottom which are skipped. + * - encoding: unused + * - decoding: Set by user. */ - enum AVPixelFormat sw_pix_fmt; + int skip_bottom; /** - * Timebase in which pkt_dts/pts and AVPacket.dts/pts are expressed. - * - encoding: unused. - * - decoding: set by user. + * low resolution decoding, 1-> 1/2 size, 2->1/4 size + * - encoding: unused + * - decoding: Set by user. */ - AVRational pkt_timebase; + int lowres; /** * AVCodecDescriptor @@ -1771,32 +1886,15 @@ typedef struct AVCodecContext { #define FF_SUB_CHARENC_MODE_IGNORE 2 ///< neither convert the subtitles, nor check them for valid UTF-8 /** - * Skip processing alpha if supported by codec. - * Note that if the format uses pre-multiplied alpha (common with VP6, - * and recommended due to better video quality/compression) - * the image will look as if alpha-blended onto a black background. - * However for formats that do not use pre-multiplied alpha - * there might be serious artefacts (though e.g. libswscale currently - * assumes pre-multiplied alpha anyway). - * - * - decoding: set by user - * - encoding: unused - */ - int skip_alpha; - - /** - * Number of samples to skip after a discontinuity - * - decoding: unused - * - encoding: set by libavcodec - */ - int seek_preroll; - - /** - * custom intra quantization matrix - * - encoding: Set by user, can be NULL. - * - decoding: unused. + * Header containing style information for text subtitles. + * For SUBTITLE_ASS subtitle type, it should contain the whole ASS + * [Script Info] and [V4+ Styles] section, plus the [Events] line and + * the Format line following. It shouldn't include any Dialogue line. + * - encoding: Set/allocated/freed by user (before avcodec_open2()) + * - decoding: Set/allocated/freed by libavcodec (by avcodec_open2()) */ - uint16_t *chroma_intra_matrix; + int subtitle_header_size; + uint8_t *subtitle_header; /** * dump format separator. @@ -1814,16 +1912,6 @@ typedef struct AVCodecContext { */ char *codec_whitelist; - /** - * Properties of the stream that gets decoded - * - encoding: unused - * - decoding: set by libavcodec - */ - unsigned properties; -#define FF_CODEC_PROPERTY_LOSSLESS 0x00000001 -#define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x00000002 -#define FF_CODEC_PROPERTY_FILM_GRAIN 0x00000004 - /** * Additional data associated with the entire coded stream. * @@ -1834,39 +1922,14 @@ typedef struct AVCodecContext { int nb_coded_side_data; /** - * A reference to the AVHWFramesContext describing the input (for encoding) - * or output (decoding) frames. The reference is set by the caller and - * afterwards owned (and freed) by libavcodec - it should never be read by - * the caller after being set. - * - * - decoding: This field should be set by the caller from the get_format() - * callback. The previous reference (if any) will always be - * unreffed by libavcodec before the get_format() call. - * - * If the default get_buffer2() is used with a hwaccel pixel - * format, then this AVHWFramesContext will be used for - * allocating the frame buffers. - * - * - encoding: For hardware encoders configured to use a hwaccel pixel - * format, this field should be set by the caller to a reference - * to the AVHWFramesContext describing input frames. - * AVHWFramesContext.format must be equal to - * AVCodecContext.pix_fmt. - * - * This field should be set before avcodec_open2() is called. - */ - AVBufferRef *hw_frames_ctx; - - /** - * Audio only. The amount of padding (in samples) appended by the encoder to - * the end of the audio. I.e. this number of decoded samples must be - * discarded by the caller from the end of the stream to get the original - * audio without any trailing padding. + * Bit set of AV_CODEC_EXPORT_DATA_* flags, which affects the kind of + * metadata exported in frame, packet, or coded stream side data by + * decoders and encoders. * - * - decoding: unused - * - encoding: unused + * - decoding: set by user + * - encoding: set by user */ - int trailing_padding; + int export_side_data; /** * The number of pixels per image to maximally accept. @@ -1876,37 +1939,6 @@ typedef struct AVCodecContext { */ int64_t max_pixels; - /** - * A reference to the AVHWDeviceContext describing the device which will - * be used by a hardware encoder/decoder. The reference is set by the - * caller and afterwards owned (and freed) by libavcodec. - * - * This should be used if either the codec device does not require - * hardware frames or any that are used are to be allocated internally by - * libavcodec. If the user wishes to supply any of the frames used as - * encoder input or decoder output then hw_frames_ctx should be used - * instead. When hw_frames_ctx is set in get_format() for a decoder, this - * field will be ignored while decoding the associated stream segment, but - * may again be used on a following one after another get_format() call. - * - * For both encoders and decoders this field should be set before - * avcodec_open2() is called and must not be written to thereafter. - * - * Note that some decoders may require this field to be set initially in - * order to support hw_frames_ctx at all - in that case, all frames - * contexts used must be created on the same device. - */ - AVBufferRef *hw_device_ctx; - - /** - * Bit set of AV_HWACCEL_FLAG_* flags, which affect hardware accelerated - * decoding (if active). - * - encoding: unused - * - decoding: Set by user (either before avcodec_open2(), or in the - * AVCodecContext.get_format callback) - */ - int hwaccel_flags; - /** * Video decoding only. Certain video codecs support cropping, meaning that * only a sub-rectangle of the decoded frame is intended for display. This @@ -1934,20 +1966,6 @@ typedef struct AVCodecContext { */ int apply_cropping; - /* - * Video decoding only. Sets the number of extra hardware frames which - * the decoder will allocate for use by the caller. This must be set - * before avcodec_open2() is called. - * - * Some hardware decoders require all frames that they will use for - * output to be defined in advance before decoding starts. For such - * decoders, the hardware frame pool must therefore be of a fixed size. - * The extra frames set here are on top of any number that the decoder - * needs internally in order to operate normally (for example, frames - * used as reference pictures). - */ - int extra_hw_frames; - /** * The percentage of damaged samples to discard a frame. * @@ -1964,16 +1982,6 @@ typedef struct AVCodecContext { */ int64_t max_samples; - /** - * Bit set of AV_CODEC_EXPORT_DATA_* flags, which affects the kind of - * metadata exported in frame, packet, or coded stream side data by - * decoders and encoders. - * - * - decoding: set by user - * - encoding: set by user - */ - int export_side_data; - /** * This callback is called at the beginning of each packet to get a data * buffer for it. @@ -2016,14 +2024,6 @@ typedef struct AVCodecContext { */ int (*get_encode_buffer)(struct AVCodecContext *s, AVPacket *pkt, int flags); - /** - * Audio channel layout. - * - encoding: must be set by the caller, to one of AVCodec.ch_layouts. - * - decoding: may be set by the caller if known e.g. from the container. - * The decoder can then override during decoding as needed. - */ - AVChannelLayout ch_layout; - /** * Frame counter, set by libavcodec. * @@ -2170,6 +2170,7 @@ typedef struct AVSubtitleRect { uint8_t *data[4]; int linesize[4]; + int flags; enum AVSubtitleType type; char *text; ///< 0 terminated plain UTF-8 text @@ -2180,8 +2181,6 @@ typedef struct AVSubtitleRect { * struct. */ char *ass; - - int flags; } AVSubtitleRect; typedef struct AVSubtitle { From patchwork Sat Feb 10 23:04:11 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46168 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:a586:b0:19e:8a94:b663 with SMTP id gd6csp1752954pzc; Sat, 10 Feb 2024 15:03:35 -0800 (PST) X-Google-Smtp-Source: AGHT+IFQoS9BXRO2jxKuAqtAW2zp9yURQrXxaJ2QJ6UjcqGSZrVNUTir/Wn2BR7xRC5FiPP6kxvS X-Received: by 2002:aa7:de01:0:b0:560:c7a1:dc4d with SMTP id h1-20020aa7de01000000b00560c7a1dc4dmr1750100edv.33.1707606215295; Sat, 10 Feb 2024 15:03:35 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVhxhotb7BGJJO9XHXAjncn9oYDtoz5a8ps+CSCXNvDckWkqHrLQmE/X3il4v2WAcxrwmeRKmkq7Tg8/IDD6pV9IgILfvDQdMtsQcYSvsriAc34OZcdeOTMUW/Xm3yiWy+BF/iDyuOg48AAAUwtoHAS24vQTduniof6DaezLCu/EOCq+qAwXJ1sVYOXlXriX6RgHd14m+Y/LLSLfQWrbtYRvMOYFkav4Hr/t3xu/ExaSWqHG1EeyY5RTfPDrwodlvWApnhLp+SH1gCwE6n2ZNAUZORup6Woagj0jdWUL1AGN2ve2iD7V970yMCM9FWELmt3k68GUWmjkTn2k1i5CudWGqPQA0YLEDNaQDMoAHf+ofXRKHq6EzhmBg/jvkTWUeIVqLNvCNRL/4y0jE8NDkKFqPGFNnWfXet/llkuK+ICtyK0bYL+Ilbrx9srkzDCFBSBrNm776ZzhmEMt18H5TCBR6Bpg7AavhqQkoqFhCg4QLImAN6b5HZolQjpMLddrv70pUuVpRiQRHw6qiJ99lHQICiEeuoFwIisbwIbGHLJ+nZjFtQLlanSIcg3v4J8k3vUeNTi4payY4h2dE4alFm06NkF702Bzs80cZHZPLfMCKKu7P51/DWxqHVb3wIolww5oxgruSiNHYLobmCcPnpJ5mzzelMs1uL6k8vqnwEzdaeDQjSR0ewWCsT/Vkq5Ts25wuTGdgHv8+j2WhCHaCZQQf1D5pjLkS+qYFNQJXGhcAQBoU44JOckDInsBcPjVB8bpR57gIiDXnLgbtEc89jfd+vxInj/htkYgJPv2JXz4KUAvTONtC2MRx5Ly+WcEuTxY5CqXBNkp05edtM8HywIo5lCflF0zCNs2+u3oRFUfTKE8fgdFGImfY+DieiyNOn1K3Z+eN7gjGiXvwjR6mO8TuaS2vjJgUKAClgnrugemHmAb1zgT9Cb4IjNaCO7IkeraT IgkWUJakINqF+Hj8SypJXWhgIhLBp6sI6fUaGJl743bE15oIpaafa7+R0dp1sbam32o2WpctwczGwXRgf3FKGlHiWSxZpXasPwuRHODLq/1Ce5hHzke/T09lWyrxRsOj/fr6Zwe0L1Nihk9L4zf8ipe4QQ3I6lAKCyYxzWjyp8AW5IcV0Vq8WDg8UVeeQpqv8/3hQU9zm0VHGyLOluQSVZD8u1JNhWeNbfBx8idnbzEEO6v95Jq/li5sR2LHlygnWypEU6U3p23JJLY4KbCZVqBWRXmBjxjkuOwe0zRBDvZIhD63s5lV2klpT0fUHT24kKadgrI4VblQHKjNUTRXsippC+d4BFglhKgTEcJy1d050btFhY6MEB8o6SpbOnM0q1rAQzIAqP2IvFCohGuWe3boBjq5cGJ1BIcbHHJOmhaEHXUEuGWoujwZX68DG1rgO6G8jvtLLEDbq8IDM+2+wrfyZzwX6N2o7tHajVfppu0kwQOUu4FLWoGrwbOJdx5P68GqX56LXQxT0pK0kUWVo6tcsQ8OjWpmSUfIvEeOh4JJs3249ebTHiKSIYhIC+aYeA5FOR7DY+vx9r7JQdRxG40bFYBY/NheEuwQA= Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id da9-20020a056402176900b005610ed87a67si1164759edb.336.2024.02.10.15.03.34; Sat, 10 Feb 2024 15:03:35 -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=@outlook.com header.s=selector1 header.b=Rwtv3zbV; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C0A3B68D17B; Sun, 11 Feb 2024 01:02:54 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03olkn2036.outbound.protection.outlook.com [40.92.58.36]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6FB8668D13F for ; Sun, 11 Feb 2024 01:02:52 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gbC3P3GqDQmd1k+9B23Dzwx2cqcEjbkim16Oqhppdlhi/RurRB8/QlsZg9n8tO+UC2UecJ+WvR3Ya/iLivGYVYpXyZxdNNEMUZb68nvD207WXaFzIqhTOU75sVBJe742WjkppDndkje08DSrx9P3RHZn45Nun8QV5ScGU2xKVH3CTxxv48qNpwK/mTj2d7KOIFSqM+Y04B+vKrzFsBFrTucZOMpU5f7c0QNke+Kmc6GrS4WsBH9BiDsYuiaxoep3DqIN2A8vUU1fAFzh4/aN1cHv636hzpnxIKnjJLx6elr4iAwDCwNRlo3XkbPZbgC2naDQpSICQpXc1agdf1bSSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tALmk65H5GvVTCZCDXDmkleBMwp99PbagbYkCGQjyWE=; b=kkyiZjtHNHWU6X8rhTKQVqOA2TQ6mbDofX0I47m+9a0yUQbT12pg0O0gJzA65J7CtWUj4JDrhgFn0Hb0Nv8rO3HKMOGn8SmOw8VDjvPH8+ouWJ5zPAn3Y4QrccAjSUptPhggX8DSc++adKhf3zV68bj0jIWM3vXwyvFbLL3d8U1qwceZKbSRr9py9zLC4wLfabZAVPqwibnzuOY/Zb9iwPYZMI2knwHE9GXLWzslTokgXQMMu1FChbsXW6BqliUUl6E0h/prdYdsjGLPufmCp18L8tewmZYUYzmqwmR3cTkvDAif/Kpw4/KHaG5gRLsX8El/njRwldSAHSyhAnJ8pg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tALmk65H5GvVTCZCDXDmkleBMwp99PbagbYkCGQjyWE=; b=Rwtv3zbVvFZo/XCFwdsQHk7TvM1pKtMUZ5/ZD/J6JYDLnQcpNnLSJmGgKSfXMlJQKO/zUtBsLttPE2FzmtGiKqnSzm/FO6WmmDxFC4SU+b4FyxiQL7VMMGaB1B0RRz9UUNA+hGsdyPEXeRuryxNTYg515TRyGyjxkXDZFA6OC5PgTloJP4yR012wc8uwcHFlnoMzstMHpQEWZMKdT+bwHYNMjWFIuV1FJMIlzAL3xoeixwwqHOrmo1J3ycM6B3cZnA5+b1dNgRpd5VbXRSnJuI9WpctPxJx4Om4t0dtLFC9uT35gzADNujP+dFb5gX3goKOt42bhWLTPANYbPHY/Ew== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by AM8P250MB0373.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:328::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.35; Sat, 10 Feb 2024 23:02:50 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::db07:87f6:7c75:38cc%3]) with mapi id 15.20.7270.033; Sat, 10 Feb 2024 23:02:50 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Feb 2024 00:04:11 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240125134425.374-1-jamrial@gmail.com> References: <20240125134425.374-1-jamrial@gmail.com> X-TMN: [9N25kaY3uV4w0M4JWx43TwFVSFqkNW37d8kKP+u/Yj4=] X-ClientProxiedBy: ZR2P278CA0003.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:50::6) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: <20240210230411.2616270-8-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|AM8P250MB0373:EE_ X-MS-Office365-Filtering-Correlation-Id: 61115611-a7dc-402a-9613-08dc2a8c67a5 X-MS-Exchange-SLBlob-MailProps: 9IecXKUgicCxfSlM0Mf+zc92VeVIBtN2kEN2mImAxfQm2UC1fT+ezoxSeUd+wz+MsixyY9GhWjRmHAwaQsjqKnSGUzfI9FOhyRgIfe6XRTrFDWtcWiM6R1EOWMxkSgEavWVMl0NYRf7dTBsw2fAWoqmcjhfLxdgyBG95F1RstaeQLVtdkhzSmU/VImmERGj2zMDCTg9/VvkK8CSY1HsX+fpPkiJ7/89U1LSSZS7h1CApqfKS8MeiCvRu1oYAIRhzHKooounp/dhWQh/15dFtL8SwnDhk/M2RxtYi69cw18gqnALfU9Epan7Be8obDDPexCvZYiI/vedA3k3lmUWQiBOjQ9knh17i9zrRS3XZNBhcojFW3m31M2HfKotcDCvy56WTg+3JbHAD9MjFDDcR8DP0z/TyOTCdr+/r5tpSQcEbxzJ0UtOAovSUSu43vAOXRYkVi7D3c3a4HoJ10NO0AmAwig9o1bQNtY5d5fQ9smkhhf1lVWZEbPp56NHNB3D4T23ZiEb4qo4JbZqF9SA6+QF4RzgqTYw2g0XZ2uRVYd/dUgjl70tqdwwUxLX6X5Z0Owl+n7uuEt6wjqrNcToMzyYrBFL4QwTRHBNdKbOphxg3X1WwlEaIyU1Kn/aaSpV9fpewjTdjlkJdEs+UUh2gv7AYo+0D+zCwoL1p1PnbwSUZM41fMyT+H6d1o3Rd74Z6c6ykR83pIHJIFcSUk8fGiGo+vo2xbtsNvvogqcqm3HPkwowYcwGLGg== X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HWLrhpMh0xWYzbp9Juwsdmq/J7UWozZHpfwJze7kKLpIrUc9IVUAfzfQN2F/FbeRQVU6v0kfbg/WUSqR8pZjKOHE2FjegmEVDqF0HDA7SSODnMmcd9MKepiDvPrCO0lWAED4y1sLao2mLq32/2cBPLdoVeTv3KaD3kQ7jVCp+5K8I3ueWE3WiszjRlo7rSUOWYKkl1mD8vl7GK1ZcXJqGfUm8mfPqY6y+D42260nIsx3WW0iNR93ZbNgOAyPYTgvUDNcSAIa127pEEG5Ne05XT3k5jejKcsNaTN4DqR/CQJ+uj9QyaI/roX87I+axAamHPg7AkQyMpOTJ8mHtPFx9eexy7rrVo+MNyjJGc75XsyzPIzXZBK1obmJWE6Vhd7F8KKuI2Vn5YfMIX3yIdLRVbzKfe0215I8i79pHhAe+4w17zRuJKeNjv4ozhwO3rA/74JfGeRHDt7DGo1JqNyB4HnYFb47pj87Y/nbXFimVsFeajz6Hfm8ooNFYpTqXPu8slihU2/qvEe+JAM7mSeYTTODllRbbolTaIMEl2T1XHfGUDksh+1gMQMdP4e/02PxtxR1Uho0/nfyivvwidNSCx/Dc/Af7WjuHEheTIZ3q6N9De8rdN/OB2FolD54rw2t X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: vXVQBAl3mFYDUlS3XO52I85JHFZGxqiealt8gf2mPSui5wZfM/PaHdbp8AQFeFSxlGw+k1AXWthU7/aYksBN4rX87u7MxXo25qTfRrtm163XtJg3XHMHVoW0YzDxxbo/g6iz9Q4n7bFxGzrf1Frc5HEKanYpSn/KfnovaIT9HVri5N68jEOLJtbFYPDRjVUB/afHSUQQ2iYQWxqYiQc1+M0AahaXjE3eBq+ECq9YgzT0X1s1ebtM/1NHCDoX9P6A/v0aE2Vf04SwyW6GsaJ8Zhpt+Fbz+yZdZA/R2j5/aNvICKQ5WCEc5jeAARqgiw4m0JJDMHji9id905R6rHrkJ6iigMaZD1VXbvGA+PpPQG3rXDTZq6L7G+WknpUYsrKna9+2GC8tUV5NI7EKGnLO+rtCgdJogrlG8/e5SxZSWqtMYuHePBFqUZMv7OFJ+3yjVIOWVUHEI1jtfpf3RpYQXgxhHJsYI0ZtduQdHxtkV4KaVRiqYcEyavEKMnB2hXrb+4bivGXHZXg7ocwtK+2BNbZOErCw5KH8kSmGnhgV0x1xp3WnT+9menOcbX/kIFtPx3bukB816A1vVzrplEeXCjNXZQJRLQn48FKhd4OzOANEqnpHhu/rB6zFI2MQD6D1qNASxJ5yEVSBjojMJeDGG4VrLUsxobnK2gBDLXXymjzm9xsPUbEu5lsCzRok/vjmY2S7c0zsbVocN7VRt4BL+5HzB/wlZkUgCBjjWAs49XjlxpIsir8CSA9xkUHNb9kEBzaGCn670lvt0H6OZcx8BW4SVa+nm95syod5a64k7PpMFfLuV45pKlBbW3iW5vl3Ey1Rxhida72kLo73H+Hx/yQ+ze+z5w5Y+VXRnvppHOrSCUhuHiDinSYal3Veu7IbE5ICDLAtnS+rNtXlCt0Hqi3qKYx6StZompXkTnILO5JDGTjlFi6qNptOJyJORo/sh0719RokTBvMiN6GbYQHCfE3apfDsnVK81SBXfmTrxII2sw0pB+56BI0w0DYj5DnEnL9r/683I8aGCBggmjZbe0pPvm28fC4oeoXxZnif2Fb0JgbDMImrGxlhbleigG3hvJl7jANSZDW5GJTy1hPhHN7a/6hi+dq8jT+URO06HGA7wzJznNDx14PhV041rfJUXYHV9qiChg9bWa30gttOTP+EP3Wi/UnDEl4L/3ZH7rj0FlGAwfOu17oCXOddzYSvgdvmevsAQbn9aUr5MFOqEtYINROOkMfngLIiCNmJ+npsyiou7Mf0PPIqiRxhTx91+utOH21i+GLmz93X66Ugw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 61115611-a7dc-402a-9613-08dc2a8c67a5 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 23:02:50.3874 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8P250MB0373 Subject: [FFmpeg-devel] [PATCH 35/35] avfilter/avfilter: Reorder structure fields 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: jWiuTAO7hLbe Move related fields closer together and try to plug holes. Signed-off-by: Andreas Rheinhardt --- libavfilter/avfilter.h | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 35840cfd54..f376d25efc 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -441,6 +441,13 @@ struct AVFilterContext { */ int thread_type; + /** + * Max number of threads allowed in this filter instance. + * If <= 0, its value is ignored. + * Overrides global number of threads set per filter graph. + */ + int nb_threads; + struct AVFilterCommand *command_queue; char *enable_str; ///< enable expression string @@ -461,13 +468,6 @@ struct AVFilterContext { */ AVBufferRef *hw_device_ctx; - /** - * Max number of threads allowed in this filter instance. - * If <= 0, its value is ignored. - * Overrides global number of threads set per filter graph. - */ - int nb_threads; - /** * Ready status of the filter. * A non-0 value means that the filter needs activating; @@ -548,14 +548,25 @@ struct AVFilterLink { enum AVMediaType type; ///< filter media type + int format; ///< agreed upon media format + /* These parameters apply only to video */ int w; ///< agreed upon image width int h; ///< agreed upon image height AVRational sample_aspect_ratio; ///< agreed upon sample aspect ratio + /** + * For non-YUV links, these are respectively set to fallback values (as + * appropriate for that colorspace). + * + * Note: This includes grayscale formats, as these are currently treated + * as forced full range always. + */ + enum AVColorSpace colorspace; ///< agreed upon YUV color space + enum AVColorRange color_range; ///< agreed upon YUV color range + /* These parameters apply only to audio */ int sample_rate; ///< samples per second - - int format; ///< agreed upon media format + AVChannelLayout ch_layout; ///< channel layout of current buffer (see libavutil/channel_layout.h) /** * Define the time base used by the PTS of the frames/samples @@ -566,18 +577,6 @@ struct AVFilterLink { */ AVRational time_base; - AVChannelLayout ch_layout; ///< channel layout of current buffer (see libavutil/channel_layout.h) - - /** - * For non-YUV links, these are respectively set to fallback values (as - * appropriate for that colorspace). - * - * Note: This includes grayscale formats, as these are currently treated - * as forced full range always. - */ - enum AVColorSpace colorspace; ///< agreed upon YUV color space - enum AVColorRange color_range; ///< agreed upon YUV color range - /***************************************************************** * All fields below this line are not part of the public API. They * may not be used outside of libavfilter and can be changed and