From patchwork Thu May 24 16:57:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Carl Eugen Hoyos X-Patchwork-Id: 9073 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:155:0:0:0:0:0 with SMTP id c82-v6csp266405jad; Thu, 24 May 2018 09:57:34 -0700 (PDT) X-Google-Smtp-Source: AB8JxZo2Tan1y7qbu9HbaNEA52m7w7CpKNPY+r8lyNLAmnU3QdQnrqMbVXo4er+lKprFJ8M7taU3 X-Received: by 2002:a1c:b45:: with SMTP id 66-v6mr7221479wml.155.1527181054369; Thu, 24 May 2018 09:57:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527181054; cv=none; d=google.com; s=arc-20160816; b=bWL6DCZFMnMxG7oXac2dU2ypFiDg+rCQE8wksy+1F8fKiT8EIbeldhb4TxJZIskPbI +jptUTxs2gGltl+HaJGgbFlGgWwToJ/pVvCqqWCrTkzrqRNsPORO/2H8d1Xj2DX/Xp+P ycdIIOF6eKgLpK0ZwmZReGyLkWVmKrlPdpmsW7s5i1725HDP2W8G5ypkMcr7BWTz+XHl zOw/YWUjEugpkhWUhGFSxMPVLyaGf5sGpAkIpgrrSpSiKoGunC7TXOA3VvBTAExE2ads k6cl38A4WVqwSdRuAYMr48WsS88Rm/sSNb80lWlFvP1CUxPMKYLZ0tWxtYljz4XaXeUT 5MpQ== 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:to :message-id:date:from:mime-version:dkim-signature:delivered-to :arc-authentication-results; bh=+jH1vqN7b0yTq4dZQeyxpih85rRGyDO1jhsmzH0ZPfE=; b=pdnR6w6cXpFMbhhCxcAlj4f1E/M/a/MKuRpnSclxZPCY2HPQOngss2Crg5PYnvhgEa ihZUcn5jYc/kdAMgQ/kEgO/+IX1crNVZGsL0DIUXEfeQbeKoxlHTzIHcgkeZ7vQ+TFkk VlIi+BxNLAIOK1TjkAxKzC5hOp0Zcm8KwEI40dMPGVgmxxj6BBMNMOwru3z2oFRVmdM+ ILY9DgZm/yzpfQojzCfm54bZzMZONIT6WulkHHkzaPMhjJTJlKRwljRPIEOQajIyoJtG l8I1wjRliecX77ghQHStNr8ptOIra/FUf9/KVzxc1bf+ciJlB9kbik/vqnHTZoQiGZXM hw+w== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=sj3sLsvY; 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 a94-v6si2200704wrc.222.2018.05.24.09.57.33; Thu, 24 May 2018 09:57:34 -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=@gmail.com header.s=20161025 header.b=sj3sLsvY; 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 1556068A35F; Thu, 24 May 2018 19:56:50 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-it0-f41.google.com (mail-it0-f41.google.com [209.85.214.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0545A689BBB for ; Thu, 24 May 2018 19:56:43 +0300 (EEST) Received: by mail-it0-f41.google.com with SMTP id 70-v6so3285048ity.2 for ; Thu, 24 May 2018 09:57:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=kwh3q/Xi4WJ+TqpWe0tjwIyqP2EXh/oje9+ddHLTCtk=; b=sj3sLsvYppbpRILY8iwddnZaOS3gi+KkiOcZSFIy13+tHbaIV8wP6a2dULYS60S4K1 yoAbg6cUsl3bXKEZX8UWLXJAHq+C++qDr+/zf4qWhRUTvBbdpPPHLSi8e1DW6mR7FO9G 7flPNu7WT28Zvd7T4YpqgbUM3kbB4TNNLciMaHhkLIKQERDMIW4ySwSt2QQShGT/puRO /7ic/pfxpOvHgOe90Qfv783nHmJQ5vEqVAAn7XoAe2PXw6tihzhXqS+wjsePyw0FJwQn oO5JK1Ny9oluMW6SeFGGM8OmjL5NXbcLy2QJGV+CKegHoReTJtCc5kP6qV3P3OqK9lyt zy+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=kwh3q/Xi4WJ+TqpWe0tjwIyqP2EXh/oje9+ddHLTCtk=; b=AYZM2QkUUjviNTcz14NYgSKQvP947vCZbL1g19p7hqY2hir8P1oDgu0w9xAt8HH2Al OKWKYwNXI9k+GgmdknT+7FYs47BzTjAeh5ziMYqlDtrfdonxf2JThoJ5HzHMWNqZIJmV tTWnwh21uSOJbTkFIYOBxFTFQ4ekbd4SU04DQEiaBeRMrnl7oCDWTKfP/ElBlkL8mxjp IVd1AhnnH1JMcVxwRa3ODQaaVuXE/izlNUdQBOc5WntUUIGNHr6RjJecCPPxyBLPb7fF Pg5CmHJ7RqATVm4ejm4cc8p8C/yvcYSXk+kL/b7YCTCQNpQWagQIuAN0MWx/pyrIJVOt L+5g== X-Gm-Message-State: ALKqPweisjSXw3E/e2b56h8dTQ4qwUFf3tyw+YN2ng2ClP20Ic9F2qUU BiR1X/A2v0eT7jkHmHqVJQoYAxNL8OhOxYc5Oz8= X-Received: by 2002:a24:7f0d:: with SMTP id r13-v6mr10508986itc.39.1527181043725; Thu, 24 May 2018 09:57:23 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a02:81c6:0:0:0:0:0 with HTTP; Thu, 24 May 2018 09:57:22 -0700 (PDT) From: Carl Eugen Hoyos Date: Thu, 24 May 2018 18:57:22 +0200 Message-ID: To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH]lavc/hevcdec: Treat clean random access nals as keyframes for -skip_frame 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" Hi! Attached patch fixes ticket #7227 here, -skip_frame nokey shows no warnings on decoding with this change and still decodes less frames than -skip_frame nointra (which shows many warnings). Please comment, Carl Eugen From ea5cf5aab2a9360971f5291fce19e5daae833de0 Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Thu, 24 May 2018 18:53:16 +0200 Subject: [PATCH] lavc/hevcdec: Treat clean random access nals as keyframes for -skip_frame. Fixes ticket #7227. --- libavcodec/hevcdec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/hevcdec.c b/libavcodec/hevcdec.c index c887762..dd7675a 100644 --- a/libavcodec/hevcdec.c +++ b/libavcodec/hevcdec.c @@ -2919,7 +2919,7 @@ static int decode_nal_unit(HEVCContext *s, const H2645NAL *nal) if ( (s->avctx->skip_frame >= AVDISCARD_BIDIR && s->sh.slice_type == HEVC_SLICE_B) || (s->avctx->skip_frame >= AVDISCARD_NONINTRA && s->sh.slice_type != HEVC_SLICE_I) || - (s->avctx->skip_frame >= AVDISCARD_NONKEY && !IS_IDR(s))) { + (s->avctx->skip_frame >= AVDISCARD_NONKEY && !IS_IDR(s) && s->nal_unit_type != HEVC_NAL_CRA_NUT)) { break; } -- 1.7.10.4