From patchwork Wed Jul 4 20:10:46 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shlomi Fish X-Patchwork-Id: 9619 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:104:0:0:0:0:0 with SMTP id c4-v6csp1148747jad; Wed, 4 Jul 2018 13:11:14 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdvR0o9SZfnMU61Ic6m53ECb892VtD91Zscuwsk3XQcmSM+1wQldPtIoJJJnJLrP8IoIDy+ X-Received: by 2002:adf:ee43:: with SMTP id w3-v6mr2676913wro.63.1530735074169; Wed, 04 Jul 2018 13:11:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530735074; cv=none; d=google.com; s=arc-20160816; b=eDDalxOar47Gn0YzgXXqR8WW9R0vo0c70+/D4YI28QhKDPIqMfpeJmJW930pVefy23 OxBtvO6myKWvGRLBKaRnoBLWm/JAig7vrEmbcsj1YvnhetWsd3mx5cb6JP51x29Sp6O+ zZ3+Zin7AwH4mfdMRA4kUXt8tV1affMBfcFM3ziRw3XmrLALTJMSBBC/L/LLKpkn+WLf vS/+fvteoLtf4TA1XwOG+g8WnJsGb7jl2nJRXlnVzBZvQl4H0Lin2PgsJeKlakGDKkyi /fAKJUPA/Mh3haGitr5i+g1WbbuqmklfOqv/2DZubmjVKludPlyeytOHvdFS6WAg+kUl vtXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence:subject :mime-version:message-id:to:from:date:delivered-to :arc-authentication-results; bh=svbX+Kmg2UusJvipmuo53+Av4K6dXbwfIRH9YUQF0Dk=; b=FL6zOBFJDnlNrrKg+dsahNfUT2A5IzuCgjYdeRU1qRH1jMjoRvpHPyRQBoI0bVDAe/ ZlR3fmlY2/4ps9yFXNExZAE8DPQvI5FkBrVJzdqP/vQyYbRSQdFFR9QoGX6CJPfdvvf6 +GIkLUi16prbA5qqFkjUgr62bpqiGrBVIGGoHBwb6XwT6PKtPlx2oBB8r3U6hIW2SsJq rMEjmVxNGADWq0EVgyV7fvMrWk4qrdDn5bCd9XeRjgFFKizn/r+yuUfniaWfLOjHpthB Cz7a1d5CtJ9Q7rK+5zpJS+B/pFFR1Mso6q1d3q1VMhOg7pDOchTPBhAuG+8ACdRWecke AqOw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id k133-v6si3333564wmb.188.2018.07.04.13.11.13; Wed, 04 Jul 2018 13:11:14 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BE59568AB54; Wed, 4 Jul 2018 23:11:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from gateway36.websitewelcome.com (gateway36.websitewelcome.com [192.185.200.11]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9931B68AA8B for ; Wed, 4 Jul 2018 23:11:00 +0300 (EEST) Received: from cm15.websitewelcome.com (cm15.websitewelcome.com [100.42.49.9]) by gateway36.websitewelcome.com (Postfix) with ESMTP id C6904400D7B49 for ; Wed, 4 Jul 2018 14:11:50 -0500 (CDT) Received: from gator4065.hostgator.com ([192.185.4.76]) by cmsmtp with SMTP id ao70f6QbPbXuJao77fGe7H; Wed, 04 Jul 2018 15:11:02 -0500 X-Authority-Reason: nr=8 Received: from [77.124.107.214] (port=57024 helo=telaviv1.shlomifish.org) by gator4065.hostgator.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.91) (envelope-from ) id 1fao6z-001FxS-W6 for ffmpeg-devel@ffmpeg.org; Wed, 04 Jul 2018 15:10:50 -0500 Received: from telaviv1.shlomifish.org (telaviv1.shlomifish.org [127.0.0.1]) by telaviv1.shlomifish.org (Postfix) with ESMTP id 40D0B2600A9 for ; Wed, 4 Jul 2018 23:10:46 +0300 (IDT) Date: Wed, 4 Jul 2018 23:10:46 +0300 From: Shlomi Fish To: FFmpeg development discussions and patches Message-ID: <20180704231046.1fe7845a@telaviv1.shlomifish.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; x86_64-mageia-linux-gnu) MIME-Version: 1.0 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - gator4065.hostgator.com X-AntiAbuse: Original Domain - ffmpeg.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - shlomifish.org X-BWhitelist: no X-Source-IP: 77.124.107.214 X-Source-L: No X-Exim-ID: 1fao6z-001FxS-W6 X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: (telaviv1.shlomifish.org) [77.124.107.214]:57024 X-Source-Auth: shlomif@shlomifish.org X-Email-Count: 1 X-Source-Cap: c2hsb21pZjtzaGxvbWlmO2dhdG9yNDA2NS5ob3N0Z2F0b3IuY29t X-Local-Domain: yes Subject: [FFmpeg-devel] [PATCH] Optimize libavformat/metadata.c X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From 98e0629d28394f8683abd98f80645ee63b295d24 Mon Sep 17 00:00:00 2001 From: Shlomi Fish Date: Wed, 4 Jul 2018 22:53:08 +0300 Subject: [PATCH] Short-circuit several calls on a condition. This is an optimization - more details in the comment in the changeset. --- libavformat/metadata.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavformat/metadata.c b/libavformat/metadata.c index b9b6de7972..4b720efd38 100644 --- a/libavformat/metadata.c +++ b/libavformat/metadata.c @@ -60,6 +60,10 @@ void ff_metadata_conv_ctx(AVFormatContext *ctx, const AVMetadataConv *d_conv, const AVMetadataConv *s_conv) { int i; + /* We pass those to all ff_metadata_conv calls below and it returns + * immediately if they are equal, so we can short-circuit. */ + if (d_conv == s_conv) + return; ff_metadata_conv(&ctx->metadata, d_conv, s_conv); for (i=0; inb_streams ; i++) ff_metadata_conv(&ctx->streams [i]->metadata, d_conv, s_conv); -- 2.18.0