From patchwork Sun Nov 12 02:12:12 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Carl Eugen Hoyos X-Patchwork-Id: 6004 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp661008jah; Sat, 11 Nov 2017 18:12:38 -0800 (PST) X-Google-Smtp-Source: AGs4zMasj6hEEt2Ch2XLEFY7wZAgpQr5emvasEqEFAYeJfLezNxrhT/G7jn4zQLkxbx9wtC4Zzix X-Received: by 10.28.22.204 with SMTP id 195mr3422427wmw.11.1510452758018; Sat, 11 Nov 2017 18:12:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510452757; cv=none; d=google.com; s=arc-20160816; b=jaReKFXSCO+rayG8OB8HANZL0/bs3Sw0FKA2yluGzL+eOil1ink8zyCD3tA+Ah72DR qyM86qWneKjfj+qDrzyK2EpZdfcwh9W/pesxB3a3KrZ2XV2p4gUqK83rz6CyTNomyMur DRpNiAj1cbJeojKCVc71dKndLIFJHB+YPUwLp/23ruI20tM3NHnVAG+V0O/JzLr/pAB3 AMRpygjFVimBSiVOHgCK1GdzkpFtQx38P5Z+wBifzOitLtFJO2i2inQ6mW9k1crLky8W XkAriVCYFzA5bpc3qmznZqG6MhZvJ06HEKkpEg3m9WUjDHyefgu3R8pmzFBGawlHARvB SuRw== 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=/seuJyxUTOsREDWMXET1qicQf+Szukkn0/w6R4ZsIRQ=; b=lCPM+SnVifdqji3jBKtzeN/r9uU73MMfG7hgUZRlvoK7f6KT9FAIT6S76TstMYROHY k/uFRZs2GWS4eejGDGu8ghXgTs9mc7vl8P01w6xePDujUuodXL6z5OU2qyMnpdes1NTJ N7RW4BEwlyenZfV92ZsqSUOFwQTmgvV2MbWCv8kExX97HGSHPotyrb6nU3Jin6/DjpUE dXuW1dbASke3voDwagHDq7pRrZ/s9s/pMG9bK+ApEX1nPK9nyTxACtvGuxiaXYINvR3T qbpUMC+3sdoudS7tQeUh2wKNUZtffP+hrZ6dP7qEl1kqGdM9wWcVDOpAM3FQD3AlWEN+ /HQw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=fAZgL6rT; 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=NONE 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 a27si10016486wra.252.2017.11.11.18.12.37; Sat, 11 Nov 2017 18:12:37 -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=@gmail.com header.s=20161025 header.b=fAZgL6rT; 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=NONE 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 E014D68A277; Sun, 12 Nov 2017 04:12:21 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-it0-f52.google.com (mail-it0-f52.google.com [209.85.214.52]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1471E68A23C for ; Sun, 12 Nov 2017 04:12:19 +0200 (EET) Received: by mail-it0-f52.google.com with SMTP id r127so5695584itb.5 for ; Sat, 11 Nov 2017 18:12:34 -0800 (PST) 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=j9wWxd1zvoV3QV8ZGs1eVKIr7VlS9MJq0EeklVEgGYA=; b=fAZgL6rTlZIaM2ZFxj+C7nfjG7Xwr0r2PAnWdOU6Zan94Pkc15a8oKDjB36+/EtwwA zAQU99UhGBWO0u1ulqsXche7RhNep4o4yKnKJyQPpIcg+U7NbXdOtjsAzoGDCSFeaFKj 75DT4Yu3FqBlDg+1B0bKQDJkzZOXL41n9ObkUWZmz/fp7GcpSo1qVyww1Ejz/XIg/jcT A7IAWCrQzoVzDgTzs1GE0viI663jGA9wXiBlcCTNfS1iSQ99aRGE6Hy0YDMJ2sCXZt/J UAv2QD31ug/DRqFkJ1xTrM/wf4r+8iwCsCo6cRwBkm926De50B8Qe6GBB0d8V4D7222Z IdIg== 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=j9wWxd1zvoV3QV8ZGs1eVKIr7VlS9MJq0EeklVEgGYA=; b=G0qZ9nNBLF2XWUkvejAwhyuAM273eAm/4p12CwbHAnRyMh2EqJnFdKm9wXBwKHrDyd 0JvZ/TYCzkKeUAiUBDAf/FsgvxpIylomKN8/wFDBCWDfv8sipYO36oVtuVpT09GsUjN8 VnO1Wk2g9jxL9oBFelJ0UlhjrUwmb9hPHziWYIqOUpQsfykDJSeKtNjwDoiTaOzsjS3U A5DUxfud+ymnvmo6t+utqSY2RejG0HwMBEUKZ6dvZB1NA9kgOj+Imc9o9YjO2QQ+tc2r neblGydFaUzf0tZ/cqmOvWzfA5T456/wP+b/BmWT9vfMsIHR3jS12hIcTgeWKzTAiqxr ptxQ== X-Gm-Message-State: AJaThX4wKz/nP6kiNfKigEraODBs8/CTyJgwXJIfiKOxhL6T8U/+mL4V UruXO7hC8NfiTngBh+MOyrJsYn9oQm/nDyrcr78= X-Received: by 10.36.76.7 with SMTP id a7mr1090409itb.35.1510452752480; Sat, 11 Nov 2017 18:12:32 -0800 (PST) MIME-Version: 1.0 Received: by 10.2.63.101 with HTTP; Sat, 11 Nov 2017 18:12:12 -0800 (PST) From: Carl Eugen Hoyos Date: Sun, 12 Nov 2017 03:12:12 +0100 Message-ID: To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH]lavf/matroskaenc: Do not write 0 duration for subtitles 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 by John Stebbins fixes a warning with mkvalidator here. Please comment, Carl Eugen From dab79ea5cd01187567b1761aaf1c329926483786 Wed Oct 29 00:00:00 2014 From: John Stebbins Date: Wed, 29 Oct 2014 10:54:44 -0700 Subject: [PATCH] lavf/matroskaenc: Fix writing zero duration subtitles The matroska spec says blockduration == 0 means the frame is not a keyframe. Since all subtitles are "keyframes", 0 blockduration should not be written. Fixes mkvalidator error messages for PGS subtitles. --- libavformat/matroskaenc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index dad6d6c..61ce0f7 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -2396,7 +2396,8 @@ FF_ENABLE_DEPRECATION_WARNINGS #endif /* All subtitle blocks are considered to be keyframes. */ mkv_write_block(s, pb, MATROSKA_ID_BLOCK, pkt, 1); - put_ebml_uint(pb, MATROSKA_ID_BLOCKDURATION, duration); + if (duration > 0) + put_ebml_uint(pb, MATROSKA_ID_BLOCKDURATION, duration); end_ebml_master(pb, blockgroup); }