From patchwork Fri Dec 1 23:55:28 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Colin NG X-Patchwork-Id: 6501 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp1771070jah; Fri, 1 Dec 2017 15:55:38 -0800 (PST) X-Google-Smtp-Source: AGs4zMbyWx0yRVzBFOJAklVKi9KdsZjtgjhqq0cpegz6/IuvnQznO3ympowL4PF/O+3J+hfQ/XAC X-Received: by 10.223.154.244 with SMTP id a107mr7222659wrc.8.1512172538410; Fri, 01 Dec 2017 15:55:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1512172538; cv=none; d=google.com; s=arc-20160816; b=cZUS4SiNnJ+mlH2Jak7cDPkx3U9lj+35B2hi0sck8JaQPa4let1pvICdTNriePAk4k EA8CTanyLw+5W9b3ethxtQpU2fwuL26HhcGQ6LCv4jph4JMCctu6MbxYHtTMAwJX3UfZ 9JMZCo4jw8kdazUuIUm0baE5kt8YmZuVdajWIiCOHebTxwE84wB2RztIxG9lQxZTQWbi o50IC403w8A2gL3tF/0ougrWgmSsvHcDXKT0ZD1N51HU2fe5m3msrt+3sp59/bp0RasX QU72o0YAPty7TdkfucoUAI1yp5pFWDGwIX38C4dpAES3llbe+TpmHDtdxWnr4MgNBdhE EFRA== 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:spamdiagnosticmetadata :spamdiagnosticoutput:content-language:accept-language:message-id :date:thread-index:thread-topic:to:from:dkim-signature:delivered-to :arc-authentication-results; bh=KAy6PDQoP7CjWwjtgxgWGSGhKQOZlGAka0rC8YCzX1k=; b=qo1emebtcfTBQUjcexJmvOIGSSLTNDkT8v4DKRE2y98N4Lgd8zyhx4OPC5wYTfcUOw PqjqidEFKCdhpSoznLwvGXLq6mJaYPyY8o4cajN5N65CzGfbm2okMtSJeTGWA9dUPWQL u4U9knF0IxdB2jhnKCPUiaSva7wqTRJWoXNNrJqCl9eUUway2sasFAEgKpJCTdvNYD3Z jAwqEADc2uR+XgfJ1i0/QUV+qCb7kkUL4u3sjZARbytpaq11HqOLqAhlOr3/S/kXJodN tprqx2+srjMFlHpONc5c9KXGyhY3Hv+/phjykHIBVR3vyW5nRNcHCO78EiX7RrGzKjB0 Tavw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@hotmail.com header.s=selector1 header.b=DBB2FCSu; 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=hotmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id o1si1394761wmf.212.2017.12.01.15.55.37; Fri, 01 Dec 2017 15:55:38 -0800 (PST) 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=@hotmail.com header.s=selector1 header.b=DBB2FCSu; 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=hotmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 18FB968A267; Sat, 2 Dec 2017 01:55:33 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-oln040092002037.outbound.protection.outlook.com [40.92.2.37]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8E4F468A0BF for ; Sat, 2 Dec 2017 01:55:26 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=SEYuQcJ2ug35OKp1PKZ8NaRjrceofV3vbLNOoDPs85s=; b=DBB2FCSu/tfNH4fmQKEdoXgP6yTuQcQfnOh6vkRgNoLPyJhmuqyo4W+r9lTQIwRcfEiPmm2x2MrFojN+HvQjVx6WWwe8Zq+6iJmb/ayx14JA8o/x0dgcS/C6PkS0xQwbt4CMweixtuu506cIOgedVuBLi34xJrecRR8Xu1CXgfyH2CkCAhLuFo5nBO3OFws+SBKiNNSFIcTNjf9B+hOZ8tKNyMnWoFiGQWYZ2a0wB8TarY8QdGgkW5zeGTxgbcZSWN4qKjgO9Wl5glhTHJIzuyQQ25t72TApt6PU88ecBlQitnXwetD9Kz3QmzZ7Z2GWNPnZ0WBm4G3trYBJnIaoDA== Received: from SN1NAM01FT017.eop-nam01.prod.protection.outlook.com (10.152.64.60) by SN1NAM01HT033.eop-nam01.prod.protection.outlook.com (10.152.65.93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.20.239.4; Fri, 1 Dec 2017 23:55:28 +0000 Received: from DM5PR22MB0681.namprd22.prod.outlook.com (10.152.64.56) by SN1NAM01FT017.mail.protection.outlook.com (10.152.65.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.20.239.4 via Frontend Transport; Fri, 1 Dec 2017 23:55:28 +0000 Received: from DM5PR22MB0681.namprd22.prod.outlook.com ([10.172.189.151]) by DM5PR22MB0681.namprd22.prod.outlook.com ([10.172.189.151]) with mapi id 15.20.0282.007; Fri, 1 Dec 2017 23:55:28 +0000 From: Colin NG To: "ffmpeg-devel@ffmpeg.org" Thread-Topic: [PATCH] Fix for ticket 6796 (ffprobe show_frames ts dvbsubs infinate loop) Thread-Index: AQHTav/d3XHGpSPSmkuUE6plLGS75g== Date: Fri, 1 Dec 2017 23:55:28 +0000 Message-ID: Accept-Language: en-CA, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-incomingtopheadermarker: OriginalChecksum:7F2D79D5600093D8A14D1926186C7A81D46601C17314992231725DB1518A20B2; UpperCasedChecksum:B76E57C5A428F4FE65463841F2C95CA8999515FFB369983083AD79B41249A067; SizeAsReceived:6954; Count:45 x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [tT7CJ4Bzr3Y6v4vIqrO+OP7L6dPQkkmh] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; SN1NAM01HT033; 6:2PEBWCTVy/+MXsFb5V3tursMyKlCY3LmV4MKJbQTFRUBriTYGajKmDPYk0Ovhpr5dVhqGqN1ooKg+jpWW+GYIJMwRKuQ/F3uBMcxvYibf0R+e3XtTEqOpW36QAm2D7TTIG29Sf1rQ3Y50nq+pQst4FRDAHcE78SR31w3H3/T0HU4jbn0sg7Cl2hBAXMDoKUW9jtQesep1x1hWj78bbnpr1azIdf+2acFUGMkutoI7W+E6KyhLLUQMGCCU37ROKAE5CEji+QFl6kN8gnpqqwSEUrDV/kOKdoASo6UFliVv5cjhUJnzRX/OZk5vY2d1YEwPfj8JzwdgbNeLudjIlwrW+Qf82m7zdBKzo4WWj+m0Zc=; 5:OXLZhXRpy3wyGiOq8kbWKNsen6jIxpWScV1BZKtGaL9C9ZlWVpKexN6cLALOnXduwWtJuxWz0p+YriwLjlBRPf67sKh7WS/XLmz4vn2GOgf4SIiON75rqcVapcyLB2W57o8dZJRncTH9EaaDPVLyy7Q9BHj11239KvbWJdwg59k=; 24:EHyRKlDzCEo5BMkyxXCXmAP6Lf5Y6RVeUt0V0eYszsX1mE3vY/aY14h7C1aFTu1VulzGVcsbB725i2d9p43icHOYVFLdbQuQySih7M9gHfE=; 7:0w1Ujzy+z0+JPsXxWkRaPkqhxZMeqnoTLdOVh8u1wX9qHVtXy3imGpLqkTYFT52xLKBFYRFxxamgePlb0/o+mi5kcOM2//j1qV2vYJJXG8ddt5H70IPb509Y1Dh5vsSJStS1xRFDVSysdd/hNfKY9pc99Ll+xR/Qkl3gVzWokCe3VwuS3waz0WBrFfFdOhpeVNU4g+89UdZPyb5gXX3lKX01khIc5+XivRpYrDXDShTjSh4c2VVNH25904NqhNCy x-incomingheadercount: 45 x-eopattributedmessage: 0 x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(201702061074)(5061506573)(5061507331)(1603103135)(2017031320274)(2017031324274)(2017031323274)(201702181274)(2017031322404)(1603101448)(1601125374)(1701031045); SRVR:SN1NAM01HT033; x-ms-exchange-slblob-mailprops: pxu8rxgqUggKfJJQWEhL9kMny3ytcH0t3RmVHoHe1oc4d2EKx8ee1tW+G5riO9r7ZHtWMjc55Y01GQSY5BiMHsUCktXsvnxeV/0aMXhNj8HC5edJxGz+dNfenZf/aW5YWPop07TX+dQRSrSXyo2OuL2LeF34/1HSk5/K+PY3Ht8Fm4lEJL+2ju1VzWDKt/PxBtB6THMhchNeRlofVWOVfgk9diauRPQ4SYDL+byZDOL1vD3HTJ18w6BCeT6EmXQwfsU0zV8XxuiSe3+8Rujod35CSlbnZB6FDTCJX80ad4wT66H3GRd7sR67mqsixALTBBalQ+ams2FDWWqI9xzqCiOnQK8qvi0TCQte5KxySC2zOht/2j8pul/pCs4Tg07VZEAeia3demrejMITsKEuLYzIU9/TfTf5MSEUgbfNC5I8WWK7I/Z3XMHt+ZnmrPHjbIE8bZgzfTwb2whWn7w2bdUpByvywNBOY9kYW9CD8Olem0zy2RwSwiJ2mGM64UEmG/fAsvVYEiMpO3nDqRDQUp7FxdsNB5W9LkYvtp6okfJZkkzzYnTqM2/a/mRCdY2/KeNZHJe01qbfqCV1/bz0VbFD0HAuYp69//1TBHoSxwVUUnXSgod+rnsyVAbFTcbHinkKLsandmmFu9RH7AEfKRmpUfjLRwgzOVPW71+E99JT6YUdq76wsxB0YZQ3m+WCh0M/eeHMTcXFsFRT5u6rdw== x-ms-traffictypediagnostic: SN1NAM01HT033: x-ms-office365-filtering-correlation-id: 6aca349c-46ac-4db0-7ef4-08d53916ff33 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(444000031); SRVR:SN1NAM01HT033; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:SN1NAM01HT033; x-forefront-prvs: 05087F0C24 x-forefront-antispam-report: SFV:NSPM; SFS:(7070007)(98901004); DIR:OUT; SFP:1901; SCL:1; SRVR:SN1NAM01HT033; H:DM5PR22MB0681.namprd22.prod.outlook.com; FPR:; SPF:None; LANG:; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: hotmail.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6aca349c-46ac-4db0-7ef4-08d53916ff33 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Dec 2017 23:55:28.4702 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1NAM01HT033 Subject: [FFmpeg-devel] [PATCH] Fix for ticket 6796 (ffprobe show_frames ts dvbsubs infinate loop) 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: Colin NG Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" --- fftools/ffprobe.c | 5 +++++ libavcodec/decode.c | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index 0e7a771..20b64ef 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -2276,10 +2276,14 @@ static av_always_inline int process_frame(WriterContext *w, case AVMEDIA_TYPE_SUBTITLE: ret = avcodec_decode_subtitle2(dec_ctx, &sub, &got_frame, pkt); + if (ret == AVERROR(EINVAL) || ret == AVERROR_INVALIDDATA) { + ret = 0; + } *packet_new = 0; break; default: *packet_new = 0; + break; } } else { *packet_new = 0; @@ -2290,6 +2294,7 @@ static av_always_inline int process_frame(WriterContext *w, if (got_frame) { int is_sub = (par->codec_type == AVMEDIA_TYPE_SUBTITLE); nb_streams_frames[pkt->stream_index]++; + got_frame = 0; if (do_show_frames) if (is_sub) show_subtitle(w, &sub, ifile->streams[pkt->stream_index].st, fmt_ctx); diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 3f5b086..d6cc671 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -1024,7 +1024,10 @@ int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, if (avctx->pkt_timebase.num && avpkt->pts != AV_NOPTS_VALUE) sub->pts = av_rescale_q(avpkt->pts, avctx->pkt_timebase, AV_TIME_BASE_Q); - ret = avctx->codec->decode(avctx, sub, got_sub_ptr, &pkt_recoded); + ret = avctx->codec->decode(avctx, sub, &pkt_recoded.size, &pkt_recoded); + if (ret == avpkt->size) { + *got_sub_ptr = 1; + } av_assert1((ret >= 0) >= !!*got_sub_ptr && !!*got_sub_ptr >= !!sub->num_rects);