From patchwork Wed Aug 22 23:44:36 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Thompson X-Patchwork-Id: 10062 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:12c4:0:0:0:0:0 with SMTP id 65-v6csp1440742jap; Wed, 22 Aug 2018 16:45:49 -0700 (PDT) X-Google-Smtp-Source: ANB0Vdac2MqY4B/jmDGUEyc9nxqZkat97B79Q4u1XOEM+gmRpOsEKmk4jfA04qUk6q4yDJ3TcOuS X-Received: by 2002:adf:d20a:: with SMTP id g10-v6mr2730203wri.66.1534981549593; Wed, 22 Aug 2018 16:45:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1534981549; cv=none; d=google.com; s=arc-20160816; b=TrpGx+R1KUTfEOVNhBF2HLzmLvJ9tbOLH7pSJDSKaVYYtY9MPuXhMso9o0Jqa1Zdpy jRN4OWMX2OOpCwnep0UtneC3myXGa2Twz4+b/zhcVzAOm6uvfeZFrG77sO7hoKuJj4oQ Fh8xlQmt8Vi3g3zY5f5gVoJdxhG5cVdkeeZrys3pXzRorwbPnYe7aozVFU4hVHkGEtNo jojUw4o8nFVlAAMpzbT789+givcV7CiRcE8MSh89sflMM4Ct1kUpslgeu7Ok1jWJr4QK c0JNU6IzVVxJjAJoJVMqopSgh2oJRu63EEwjMQrLhAP1SfI1fLYDlbz+mkvBlvgN3RbK s/3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=QDP3Dq1gZsmOk1XpbcShcgSyYB18OFog7hfBbtyJkV4=; b=f3IxuRAFKfHeXJxbMSg0NqC4LMeySg9eq/aBxuluGZX/26q4rPFuhCl+Tu25mOtTKx qin6fW+prYUi6X2b4OkYjrUCefWv3ABMx9pL/Nd0NF/p1YKi6xxykXUVdTF9cMWzj4Xz QajzOiZG8x3yCvpN3hvvr2ve0eZYAoE50hu7Ku6vkodNzkTYGilMQv7QPB2x2smr8jEU rChEByNB/xlc7U71E74ZnK/egz3vaxJE4EmTryi9pRaIDnahDQfFza1r0/s2Wo6HYMWU Y9f6m07UW4Kg8/NECFCQwPBunWDXfQDCCOz9edtdtyVJ682E5WDXq0Ibfkzi2EUJeTxU kVNw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@jkqxz-net.20150623.gappssmtp.com header.s=20150623 header.b=agtu+IMV; 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 t1-v6si2277248wrw.426.2018.08.22.16.45.49; Wed, 22 Aug 2018 16:45:49 -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; dkim=neutral (body hash did not verify) header.i=@jkqxz-net.20150623.gappssmtp.com header.s=20150623 header.b=agtu+IMV; 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 D08BA689BF3; Thu, 23 Aug 2018 02:45:28 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F29F2689ABA for ; Thu, 23 Aug 2018 02:45:21 +0300 (EEST) Received: by mail-wr1-f50.google.com with SMTP id v16-v6so2976473wro.11 for ; Wed, 22 Aug 2018 16:45:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jkqxz-net.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=U0RALw81zC/998YLytqtYiguenZ4Bqfr7VG0nShTNis=; b=agtu+IMVZ6wPlaQ+GizyFkQ6GYEifNlewSI8maZOTTvgwo0FAlBgK1F3LlgDDQQnEy MctgDZ5rvHZlVi08mM/qoT0W/ursKs7PnJoOE5kn2FMdP3FVqoNkgJ2N9k3iXhTF4GnE L6kAdYigfOPWu4BlhZkVzERMv/qLbghEg9xFwN7usNsC/2dhYYVxZFVpROWdSta3nW6g hencmd6eLcnHa2f35EyGb6ybvFMnFFxwwYIwq7KdSVHgYV7adYPz3lbAGef2KcNYvHRR cFJQ/aLHV/jLhPDBZmunvqQc5soPY5pR3EvEh6cJQG9bLVJkt9YDb2QvZXY9yDA2dqXn bcEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=U0RALw81zC/998YLytqtYiguenZ4Bqfr7VG0nShTNis=; b=dsU5lFXsqQgg2Cg3aVoUtn1fsJThwmPJfJNXDCA8FXVvDWgMQwqyqN7ulfsLBWwbFX iSwUltz/kEH/hItUx8VX8aSe4/KYtxJjQ61XDy4bdtKl8YId+mHhNOQz4G5gon76AedN s5VFZSR2HMEIj3JRmYmMlkmrrgsMvTKxrqMgIsf5jaZqzZangbqJLsM4R29ZxFPE27Ei BgPp7ivhDkvmdDhq+rgP1SJxpF4Cbm/Dmg4Cn8xzRmn4KlHebq/J4IuDgM/GmtI/Q4fI rerVVH7igW6ftfPtsxsKz/iYbrLp9M/EmIt2IKf+lnBlcHgLxgW2zHUWzq4aJWGFMJ0f 55Ew== X-Gm-Message-State: AOUpUlE5sX0YqF80PA3fiCc8d+nT16qxp0aIovNP3QLeAaB70wOwk+2e PCHIinbDt/IMI+KtrPUqWJKFD3vXc20= X-Received: by 2002:adf:ae5a:: with SMTP id u26-v6mr37930440wrd.246.1534981522688; Wed, 22 Aug 2018 16:45:22 -0700 (PDT) Received: from rywe.jkqxz.net (cpc91242-cmbg18-2-0-cust650.5-4.cable.virginm.net. [82.8.130.139]) by smtp.gmail.com with ESMTPSA id x82-v6sm8184537wmd.11.2018.08.22.16.45.21 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 22 Aug 2018 16:45:22 -0700 (PDT) From: Mark Thompson To: ffmpeg-devel@ffmpeg.org Date: Thu, 23 Aug 2018 00:44:36 +0100 Message-Id: <20180822234514.10571-4-sw@jkqxz.net> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180822234514.10571-1-sw@jkqxz.net> References: <20180822234514.10571-1-sw@jkqxz.net> Subject: [FFmpeg-devel] [PATCH v3 03/41] vaapi_encode_mjpeg: Move common structure into context 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/vaapi_encode_mjpeg.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/libavcodec/vaapi_encode_mjpeg.c b/libavcodec/vaapi_encode_mjpeg.c index c949e89646..983c77d194 100644 --- a/libavcodec/vaapi_encode_mjpeg.c +++ b/libavcodec/vaapi_encode_mjpeg.c @@ -56,6 +56,8 @@ static const unsigned char vaapi_encode_mjpeg_quant_chrominance[64] = { }; typedef struct VAAPIEncodeMJPEGContext { + VAAPIEncodeContext common; + int quality; int component_subsample_h[3]; int component_subsample_v[3]; @@ -83,8 +85,7 @@ static av_cold void vaapi_encode_mjpeg_copy_huffman(unsigned char *dst_lengths, static av_cold void vaapi_encode_mjpeg_init_tables(AVCodecContext *avctx) { - VAAPIEncodeContext *ctx = avctx->priv_data; - VAAPIEncodeMJPEGContext *priv = ctx->priv_data; + VAAPIEncodeMJPEGContext *priv = avctx->priv_data; VAQMatrixBufferJPEG *quant = &priv->quant_tables; VAHuffmanTableBufferJPEGBaseline *huff = &priv->huffman_tables; int i; @@ -133,10 +134,9 @@ static int vaapi_encode_mjpeg_write_image_header(AVCodecContext *avctx, VAAPIEncodeSlice *slice, char *data, size_t *data_len) { - VAAPIEncodeContext *ctx = avctx->priv_data; + VAAPIEncodeMJPEGContext *priv = avctx->priv_data; VAEncPictureParameterBufferJPEG *vpic = pic->codec_picture_params; VAEncSliceParameterBufferJPEG *vslice = slice->codec_slice_params; - VAAPIEncodeMJPEGContext *priv = ctx->priv_data; PutBitContext pbc; int t, i, quant_scale; @@ -242,8 +242,7 @@ static int vaapi_encode_mjpeg_write_extra_buffer(AVCodecContext *avctx, int index, int *type, char *data, size_t *data_len) { - VAAPIEncodeContext *ctx = avctx->priv_data; - VAAPIEncodeMJPEGContext *priv = ctx->priv_data; + VAAPIEncodeMJPEGContext *priv = avctx->priv_data; if (index == 0) { // Write quantisation tables. @@ -270,9 +269,8 @@ static int vaapi_encode_mjpeg_write_extra_buffer(AVCodecContext *avctx, static int vaapi_encode_mjpeg_init_picture_params(AVCodecContext *avctx, VAAPIEncodePicture *pic) { - VAAPIEncodeContext *ctx = avctx->priv_data; + VAAPIEncodeMJPEGContext *priv = avctx->priv_data; VAEncPictureParameterBufferJPEG *vpic = pic->codec_picture_params; - VAAPIEncodeMJPEGContext *priv = ctx->priv_data; vpic->reconstructed_picture = pic->recon_surface; vpic->coded_buf = pic->output_buffer; @@ -336,7 +334,7 @@ static int vaapi_encode_mjpeg_init_slice_params(AVCodecContext *avctx, static av_cold int vaapi_encode_mjpeg_configure(AVCodecContext *avctx) { VAAPIEncodeContext *ctx = avctx->priv_data; - VAAPIEncodeMJPEGContext *priv = ctx->priv_data; + VAAPIEncodeMJPEGContext *priv = avctx->priv_data; priv->quality = avctx->global_quality; if (priv->quality < 1 || priv->quality > 100) { @@ -417,7 +415,7 @@ AVCodec ff_mjpeg_vaapi_encoder = { .long_name = NULL_IF_CONFIG_SMALL("MJPEG (VAAPI)"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_MJPEG, - .priv_data_size = sizeof(VAAPIEncodeContext), + .priv_data_size = sizeof(VAAPIEncodeMJPEGContext), .init = &vaapi_encode_mjpeg_init, .encode2 = &ff_vaapi_encode2, .close = &ff_vaapi_encode_close,