From patchwork Tue Nov 12 05:37:02 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andriy Gelman X-Patchwork-Id: 16214 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 4BCB844866F for ; Tue, 12 Nov 2019 07:44:26 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2BE4C68AB67; Tue, 12 Nov 2019 07:44:26 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qt1-f194.google.com (mail-qt1-f194.google.com [209.85.160.194]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4936A68A927 for ; Tue, 12 Nov 2019 07:44:19 +0200 (EET) Received: by mail-qt1-f194.google.com with SMTP id p20so18523200qtq.5 for ; Mon, 11 Nov 2019 21:44:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=j+tXLR12L2wP0J+nVbbVHeayLNi9D3bBwPr7gXzfxWA=; b=naM18EiBM1iClnYJM8Pce7pSRbdIh1Mw0Cp0p+2U151+8fSkB6FnUosnTaHJeXu6A5 SO4yx/hV+9nHQ7jMwRDfncYz29egtUFMLihZVqGnEs1oRn8TzIJt9bM/VFBmVtYdgfgR cd+ClzFntnbLHNcwpxZJbs2nz4SbdlJZQt+hXNugNaViGIRkYHK3h+E2gDLkFjtaVRg2 PZgIj5sC5dE8N6UBcz1AufX86j53Zu2j5RFH4nL3dSZ8BRE4YrsMsGjNmS5KK7oMtZ7d kwSh1kaMZAYoNa+oqlQNASoVKt/AWM40NnAyhgT5ToCbQDlviJHP1UjtErd68MH/5S5J qDeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=j+tXLR12L2wP0J+nVbbVHeayLNi9D3bBwPr7gXzfxWA=; b=XXxaONFwB2F7QztLGIWcjcaVC00+92GvPsf93Jof6gB0QvDDJzFvbJgKP++Z0mtIS/ LkK6q81+IgMcUdGkJxYGhsgr9qpDImYF8frJA/MsP3W/43jB4syEpa9r5XR7Tu9IJtMn V0O3rjCfsgf9xZc3RiBxbyMuLEDCZUpyF3wo7/dNzkQMJPwPX0xF52S3ftcecSX8nDFs +1JTfthXA8utMkb8+EMAb/ifpcQbJ1ZulTIEXlzXvpz0kRTiGCk+vayHrgHh0bORS/pt 0hB/isPvqHhuIyZmAFbSv77hiJP5OYo9STQ4pBmt8uYh8K4Gx9e6K0bTb/39u628ViC0 LDlQ== X-Gm-Message-State: APjAAAWo/iDa+9FJsojjjOVn1XoUq9vKwFr71zxKyhd3QqrXNkfIZAn2 pUij5+MQCFfyldb2VuZc4Wqr81c3 X-Google-Smtp-Source: APXvYqzXikBc4fJqjmz9CjLD7WoqsHu5GKyWL7nUMTUDEQVT7kwoT2KhUEhhLOgwq4GR5qtSsCgA6g== X-Received: by 2002:ae9:de05:: with SMTP id s5mr13835804qkf.175.1573537033787; Mon, 11 Nov 2019 21:37:13 -0800 (PST) Received: from localhost.localdomain (c-71-232-27-28.hsd1.ma.comcast.net. [71.232.27.28]) by smtp.gmail.com with ESMTPSA id d39sm9382647qtc.23.2019.11.11.21.37.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 Nov 2019 21:37:12 -0800 (PST) From: Andriy Gelman X-Google-Original-From: Andriy Gelman To: ffmpeg-devel@ffmpeg.org Date: Tue, 12 Nov 2019 00:37:02 -0500 Message-Id: <20191112053703.22782-1-andriy.gelman@gmail.com> X-Mailer: git-send-email 2.23.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] avcodec/v4l2_m2m_dec: Fix decoding on Odroid XU4 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 Cc: Andriy Gelman Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Andriy Gelman c0c79461967 unintentianally changed the initialization flow of the decoder: It caused the capture buffers to be initialized on v4l2_m2m.c:180 in v4l2_configure_contexts(). This breaks h264 decoding on the Odroid XU4 (RPI4 was not affected). This commit postpones capture buffer initialization as before c0c79461967 to fix the issue. Signed-off-by: Andriy Gelman --- libavcodec/v4l2_m2m_dec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/v4l2_m2m_dec.c b/libavcodec/v4l2_m2m_dec.c index 4712aca34c2..83d506b6b09 100644 --- a/libavcodec/v4l2_m2m_dec.c +++ b/libavcodec/v4l2_m2m_dec.c @@ -201,6 +201,7 @@ static av_cold int v4l2_decode_init(AVCodecContext *avctx) capture->av_codec_id = AV_CODEC_ID_RAWVIDEO; capture->av_pix_fmt = avctx->pix_fmt; + s->avctx = avctx; ret = ff_v4l2_m2m_codec_init(priv); if (ret) { av_log(avctx, AV_LOG_ERROR, "can't configure decoder\n"); @@ -209,7 +210,6 @@ static av_cold int v4l2_decode_init(AVCodecContext *avctx) return ret; } - s->avctx = avctx; return v4l2_prepare_decoder(s); }