From patchwork Thu Nov 21 15:02:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Gonzalo_Garramu=C3=B1o?= X-Patchwork-Id: 16367 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 E4DAA443FB3 for ; Thu, 21 Nov 2019 17:03:04 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BEB2168AD0B; Thu, 21 Nov 2019 17:03:04 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qt1-f193.google.com (mail-qt1-f193.google.com [209.85.160.193]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EE3BE68A77A for ; Thu, 21 Nov 2019 17:02:57 +0200 (EET) Received: by mail-qt1-f193.google.com with SMTP id y10so4015539qto.3 for ; Thu, 21 Nov 2019 07:02:57 -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=eiyjBap1QFJSukK3JeGdSbvc3gBXW9DFFUkU6lAUTwM=; b=SsIxGkqrYKM1GbeXGfSyUuVJcsXa4BtwwqwTU6PhkiO7dP7Fqe4KmK5Y0zAEuOMjjo vQOyO+PZSh763m3Dv5XBimnXo8PQ3JXhF7tIinSJqImqD//7jbJ2IoiFcSAHYarE60B8 dZgnpNInjURzTc6AYjQTeHusk6KHG+2h/3PKFRRYSaj+ujm0ClTfQgMLrC8Mkdubl6Df M8ExHWDBYwJWpLKM3EXD/O9jSFUIy3teCgBP8Fe3U1jNQCujPsJN2Ns8sovkloc85DdQ CLByZqPMRy8vU57l9TrLoni2VB9BQDerMi6ptxtuZs3YCnANXg+w7A8gedcg7q0TW19c OtsQ== 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=eiyjBap1QFJSukK3JeGdSbvc3gBXW9DFFUkU6lAUTwM=; b=s4aXevf6tQNwxasE76/PDMnzXGCVNTVm4ypQYHn/pZ6k4O7OHMbmg7I68xI879wdgx CydsJATWl0aEdJ06rfWMzDAVxnSuEambAkwl5HWr3bmVkrcrhSAGbQwLqCaHGfm0vOYl Dp98st2qSt0kKlbVHRdqy+HulgB8zublr8HW1y+DTa21LWaB6mfj0ukfONV9KfkSIaBf QZQh5kgOWrw7klNcBfb1NbhUiNpnrFlndI+v7gdJySFo5Nokm0GURYRlOl0JCTH/OmAT WBtoBSNI4G+FsRE0+iniIXC652sP2SndaIw4n/Ombfj0l64KJK4/jP09ff0EMUfXbCY6 BUww== X-Gm-Message-State: APjAAAXxUT3PlSWXSShDf3C+1xE0sTx1rzL3WuqisNMsnzF4uglTS9oH ne7UETnBsi6lJzHm8vGrWkYKenQpPG4= X-Google-Smtp-Source: APXvYqzSjkQmKkOq1yr/pA9K4TkUGVDPie26fqeLoWL2qRWt88kJQEvco9qLJ2vdityuPAawh++sIw== X-Received: by 2002:ac8:60cc:: with SMTP id i12mr2058523qtm.103.1574348576575; Thu, 21 Nov 2019 07:02:56 -0800 (PST) Received: from localhost.localdomain ([181.167.72.151]) by smtp.gmail.com with ESMTPSA id a3sm1450211qkf.76.2019.11.21.07.02.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 Nov 2019 07:02:56 -0800 (PST) From: ggarra13@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 21 Nov 2019 12:02:45 -0300 Message-Id: <20191121150245.2750-1-ggarra13@gmail.com> X-Mailer: git-send-email 2.17.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] Added interrupt to av_read_frame() in avformat/utils.c 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: =?UTF-8?q?Gonzalo=20Garramu=C3=B1o?= Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Gonzalo Garramuño This patch is based on a patch by bsenftner at earthlink.net. It allows av_read_frame to return after a timeout period. --- libavformat/utils.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavformat/utils.c b/libavformat/utils.c index 8196442dd1..c3c2c77c0c 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -1838,6 +1838,11 @@ int av_read_frame(AVFormatContext *s, AVPacket *pkt) } } + if (ff_check_interrupt(&s->interrupt_callback)) { + av_log(s, AV_LOG_DEBUG, "interrupted\n"); + return AVERROR_EXIT; + } + ret = read_frame_internal(s, pkt); if (ret < 0) { if (pktl && ret != AVERROR(EAGAIN)) {