From patchwork Wed Feb 22 00:27:45 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Darnley X-Patchwork-Id: 2635 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.65.149 with SMTP id x21csp638777vsf; Tue, 21 Feb 2017 16:33:46 -0800 (PST) X-Received: by 10.223.173.171 with SMTP id w40mr20812326wrc.177.1487723626443; Tue, 21 Feb 2017 16:33:46 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id m83si18290512wmc.159.2017.02.21.16.33.46; Tue, 21 Feb 2017 16:33:46 -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=@ob-encoder-com.20150623.gappssmtp.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 714F068833A; Wed, 22 Feb 2017 02:33:35 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AEB1768831F for ; Wed, 22 Feb 2017 02:33:29 +0200 (EET) Received: by mail-wr0-f193.google.com with SMTP id z61so16134278wrc.3 for ; Tue, 21 Feb 2017 16:33:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ob-encoder-com.20150623.gappssmtp.com; s=20150623; h=sender:from:to:subject:date:message-id:in-reply-to:references; bh=Iai46veXfzzBXeWRejZm58H8KAJuvW+/9UNFHynsNwM=; b=kKdazzQDdGRplEXgUrhaExHn2pPpd6jvfMeIUO1JoPkg3v8q2+Pa8zeSl6YvU8YrIf Dq7J92I21u/25PVHVsqkmKKu3GLYcQ7zAWyNRMHAZz2moLuibIVx8TjeWrgeYPbKJhiU +pl3oW1kg4ghxlFBEjy239T7o2MVCxXoAsvj3ueN+6MMCc9/BeX6+nKEOyx5Bu64TKKZ OADhaEj84CuU1g59WOIQ0A4uTJdsx9tsT3uz2HWlv/xoflysLCTQI/tfgzjx3QU1XH4v 0VwmKAdUgKR3xeFjj43HnCjbMPQM50TUtT9LMaYTWpH5hT5v5Zxv7YXd/ZW59956t8I9 r3xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:subject:date:message-id :in-reply-to:references; bh=Iai46veXfzzBXeWRejZm58H8KAJuvW+/9UNFHynsNwM=; b=OKDQoMMGWdCnLY9UY4DzSZ7V0p266OAV2yKrXe5Df8F3MxxHOS8E2+J00WCgzxh8YI n33V2X9jJ+6vTxaLRMe0+ahwnHrm936iaXS43c07ty3hy1mEL+iliTZ/UcivtpDkbzNt brfwoBFtmfr0eCTU/I6TU8+O8N9/hxsd8XmJK9NVi2vIJNrmUgB343Utkaby1Mj+D1Is gjkY+sU8KwgF5M895g5jPlgX5PXREHV9fYXmyxixyt3YvDQugwojbrXvN4WggFg0H9Xc 9Vna+37XyrakWjybygF7GuJ1hKqJ2f4nGgpegx1wFClj4S4Fg9ugdrsJqVIdxFagtBz9 UJJA== X-Gm-Message-State: AMke39lyZ8xFCqhLLnNarnUBe6cjje05FD4uwyXtleq/6t42BsUQJj2Cg5TjB3H0H+ksqQ== X-Received: by 10.223.139.93 with SMTP id v29mr4003285wra.144.1487723305889; Tue, 21 Feb 2017 16:28:25 -0800 (PST) Received: from localhost.localdomain (d51a44418.access.telenet.be. [81.164.68.24]) by smtp.gmail.com with ESMTPSA id e6sm30761845wrc.30.2017.02.21.16.28.25 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 21 Feb 2017 16:28:25 -0800 (PST) From: James Darnley To: FFmpeg development discussions and patches Date: Wed, 22 Feb 2017 01:27:45 +0100 Message-Id: <20170222002745.5680-2-jdarnley@obe.tv> X-Mailer: git-send-email 2.8.3 In-Reply-To: <20170222002745.5680-1-jdarnley@obe.tv> References: <20170222002745.5680-1-jdarnley@obe.tv> Subject: [FFmpeg-devel] [PATCH] avcodec/h264: enable sse2 chroma deblock/loop filter functions 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" --- libavcodec/x86/h264_deblock.asm | 1 + libavcodec/x86/h264dsp_init.c | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/libavcodec/x86/h264_deblock.asm b/libavcodec/x86/h264_deblock.asm index 32aa3d3..6702ae9 100644 --- a/libavcodec/x86/h264_deblock.asm +++ b/libavcodec/x86/h264_deblock.asm @@ -1252,6 +1252,7 @@ RET %endmacro ; DEBLOCK_CHROMA_XMM +DEBLOCK_CHROMA_XMM sse2 DEBLOCK_CHROMA_XMM avx ;----------------------------------------------------------------------------- diff --git a/libavcodec/x86/h264dsp_init.c b/libavcodec/x86/h264dsp_init.c index 51082e8..0643b37 100644 --- a/libavcodec/x86/h264dsp_init.c +++ b/libavcodec/x86/h264dsp_init.c @@ -304,6 +304,16 @@ av_cold void ff_h264dsp_init_x86(H264DSPContext *c, const int bit_depth, #if ARCH_X86_64 c->h264_h_loop_filter_luma_mbaff = ff_deblock_h_luma_mbaff_8_sse2; #endif + + c->h264_v_loop_filter_chroma = ff_deblock_v_chroma_8_sse2; + c->h264_v_loop_filter_chroma_intra = ff_deblock_v_chroma_intra_8_sse2; + if (chroma_format_idc <= 1) { + c->h264_h_loop_filter_chroma = ff_deblock_h_chroma_8_sse2; + c->h264_h_loop_filter_chroma_intra = ff_deblock_h_chroma_intra_8_sse2; + } else { + c->h264_h_loop_filter_chroma = ff_deblock_h_chroma422_8_sse2; + c->h264_h_loop_filter_chroma_intra = ff_deblock_h_chroma422_intra_8_sse2; + } } if (EXTERNAL_SSSE3(cpu_flags)) { c->biweight_h264_pixels_tab[0] = ff_h264_biweight_16_ssse3;