From patchwork Thu Jun 27 01:34:35 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marth64 X-Patchwork-Id: 50186 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:bc92:0:b0:482:c625:d099 with SMTP id p18csp176768vqy; Wed, 26 Jun 2024 18:35:30 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXFjttUr1EE3Cl1N/dlr+uVfwUuK0Txfrl3lDmY4MIqyuRbHTvAPqCFmFv5i3uOB8810MBanhHNh3cUDepZYZVloOcX4Csj+St/IQ== X-Google-Smtp-Source: AGHT+IHQohp5xkZDcyU5nvUBFey4X8PzvKe9l12BEyZhlesXZsitp2po/Wy6KkmIW5DFUEtFUjmn X-Received: by 2002:a50:d601:0:b0:57c:758d:86f8 with SMTP id 4fb4d7f45d1cf-57d4bd79e50mr11388022a12.23.1719452130182; Wed, 26 Jun 2024 18:35:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1719452130; cv=none; d=google.com; s=arc-20160816; b=0p3xjAK/W4sM6MxWSdouiUKnoKkjWAujg1QC3UOH1sa4Tfct/uqSXyQnSXVaFZwDCw c4JFHFXpqg7DTA7/MTCniIue7eWWuPxLJ0jGMZXMc5IvaYREqrY3HaYq9UIMLJnVwnJB f/KqZjreGrIGD2TOYYb82QlbGynrBSs26C0uZkeXc2gu1mgg5QLTPYIsjMurx5XhZMbr hXwoQ+U/Otpb5CwgFEnhmPR9f5er27at1gXamzdvKJ4DgX1ykbc3ry+Qhub5/oRKLdfL kc7l9KozGryx5vPYCNXYQheE57an1W448z2aS0vVdfVcaL5WG9lxnt4Q0kNlmzIHjRqU eBig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to:from :dkim-signature:delivered-to; bh=Hl1H7Joz0bIzB6LUVs3SVveRE1rn+oIG/FKvwOeSLSw=; fh=PlWMzmI9LD2qGS7ipLrQl8z0iaQTLQLHzoGuXcBzpCg=; b=YKbqlyxu3OpNBnIn0NTkH0gPY2Diu6IJKGU6Rz8UWS7ILQiZhnpI0g5fYvruYCto8J EdQrlezIUqUoj4pj0RbZTEzdXqROMAH+oCiKK6OnM5qyRtG+xy+9qZseJ265LTAdErAa VU9OwfJxyWQTjcvsOQHdYSZLeyM6PQEAEUb76N2BdB4Eh4bi+V+TIr/LqlLn99olM0wD 8q1ViN160LBriAIpLdbIfcRghneO2OLq65tlEGLN5xebexqDWGsseoB53IXZlir4dfSs 8dh+KKXF+1VBevqWoN7LuvKxiL8zqHnyD2BPgTKCfVesfp8ciwwhzAORjZ4dawXHNbPw mIqQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@proxyid.net header.s=google header.b=DArMOwzh; 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 4fb4d7f45d1cf-584d0ba5946si172750a12.95.2024.06.26.18.35.29; Wed, 26 Jun 2024 18:35:30 -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=@proxyid.net header.s=google header.b=DArMOwzh; 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 6C56F68D716; Thu, 27 Jun 2024 04:35:26 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-io1-f99.google.com (mail-io1-f99.google.com [209.85.166.99]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0CBFB68D6DC for ; Thu, 27 Jun 2024 04:35:20 +0300 (EEST) Received: by mail-io1-f99.google.com with SMTP id ca18e2360f4ac-7f3b36cc47bso176651139f.0 for ; Wed, 26 Jun 2024 18:35:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proxyid.net; s=google; t=1719452118; x=1720056918; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=AHIScN+bDWc4oR4Z+iHnam/EZfBqs0V3kz7KT40a7qY=; b=DArMOwzh8dOxDFfFwGQYK8mEoKx+fJ3ZVoVj7uVjm+hCSpp8zPSrU1jhCP+OU5lIRS MkyBkbrtbqATj0xxxA4mENXtgAdUqUHMPAqW56sOuMrFpe7pE8IuDcDF02U7Yt7jmCLm iI2scFJ+n6/2EBa+T0FEwO6iWPb+3+m3qTLH65/335dBEQ5NXZ0bLWXhxS4bh2HsEJPM A/MP0719WG9qQ/CE3LkEtvVI/B1BA2bhcKKOPPAZwi8jvtFd8F10u9qDQNoxsqdf/+rs 5UKNM/9EA4kTjLVVbt1d5kji09P3m6LIU5OTdDP/9p1mzaBga69gCqmH0VQ04PLH6xro wrbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719452118; x=1720056918; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=AHIScN+bDWc4oR4Z+iHnam/EZfBqs0V3kz7KT40a7qY=; b=vWMlNVwTrAy01XesizQ7HsgC23CCJBw+30I3fxk2pQElCOhuBe1Lx4aDcoSgP8QxT8 hUniYoR92UACwI16iECAKu1JjtUo5TKJHN1zC3Yq9jV2cuv9fTKx5S8zwqLROS0DCHfL La2B2GTODL+pb4IuUrez54pGtrku2NP9GriQnURMCiYfYloLAS+lyQMJqVNgcj0Hd2In b5XF6JckkmjYv+dODb94Ae2xFamr3wrLGSzeZj0cwBeayYG6Xt0WOm81CXn+in9oBYx1 Xizh2sEvIdFECdOSDKqTYClan0iKy1x2Jm6t4gozxUf/CXY5nZp3cfZ7n5H17aVpBwhx 1BtQ== X-Gm-Message-State: AOJu0Ywi/H1RHxFGEpGC1L8tTQ2tYfS9CgGwEYVmwNlBjAT/VwJfsOS8 Kc9qVcmu1EOuhQPK+PAPpGJDIa3+yGsJzatm3MIoyg57wFazlj1KTICMXHehxqI17X4X71eVeuy 01wgkrd4ngpEyNUgJsPgm5CoOVCV8sCIpfevqykxW X-Received: by 2002:a05:6602:6c04:b0:7eb:81d6:c914 with SMTP id ca18e2360f4ac-7f3a7471000mr1673172839f.4.1719452118281; Wed, 26 Jun 2024 18:35:18 -0700 (PDT) Received: from wsx-cc1-001.. (c-76-136-218-80.hsd1.il.comcast.net. [76.136.218.80]) by smtp-relay.gmail.com with ESMTPS id 8926c6da1cb9f-4bb664cd675sm10778173.45.2024.06.26.18.35.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Jun 2024 18:35:18 -0700 (PDT) X-Relaying-Domain: proxyid.net From: Marth64 To: ffmpeg-devel@ffmpeg.org Date: Wed, 26 Jun 2024 20:34:35 -0500 Message-Id: <20240627013435.132698-1-marth64@proxyid.net> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avformat/dvdvideodec: Do not EOF on WAIT events X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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: Marth64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: K9uk0rvS32Au A DVDNAV_WAIT event by itself should not warrant an EOF when navigating the program stream. Some discs have WAIT events in the middle of a title, causing playback to end prematurely prior to this fix. Signed-off-by: Marth64 --- libavformat/dvdvideodec.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/libavformat/dvdvideodec.c b/libavformat/dvdvideodec.c index c94e7f7fe6..8326595e1b 100644 --- a/libavformat/dvdvideodec.c +++ b/libavformat/dvdvideodec.c @@ -814,8 +814,15 @@ static int dvdvideo_play_next_ps_block(AVFormatContext *s, DVDVideoPlaybackState (*p_nav_event) = nav_event; return nav_len; - case DVDNAV_STILL_FRAME: case DVDNAV_WAIT: + if (dvdnav_wait_skip(state->dvdnav) != DVDNAV_STATUS_OK) { + av_log(s, AV_LOG_ERROR, "Unable to skip WAIT event\n"); + + goto end_dvdnav_error; + } + + continue; + case DVDNAV_STILL_FRAME: case DVDNAV_HOP_CHANNEL: case DVDNAV_HIGHLIGHT: if (state->in_ps) @@ -829,14 +836,6 @@ static int dvdvideo_play_next_ps_block(AVFormatContext *s, DVDVideoPlaybackState } } - if (nav_event == DVDNAV_WAIT) { - if (dvdnav_wait_skip(state->dvdnav) != DVDNAV_STATUS_OK) { - av_log(s, AV_LOG_ERROR, "Unable to skip WAIT event\n"); - - goto end_dvdnav_error; - } - } - continue; default: continue;