From patchwork Fri Jun 2 02:52:00 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 3788 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.10.2 with SMTP id 2csp1084205vsk; Thu, 1 Jun 2017 19:52:35 -0700 (PDT) X-Received: by 10.223.128.80 with SMTP id 74mr4125372wrk.30.1496371955457; Thu, 01 Jun 2017 19:52:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1496371955; cv=none; d=google.com; s=arc-20160816; b=O9mGDQA5znCp+7QBHM+8i/FwqzjC5VSVruEDTyRFfXB89q/tl3OSK6ZJtX1md5eP6q kwljBNYbRCiVw1eska2X/yAAIof0p0sAq0pkb4WnOJBmtdOy1m0lQMl/E61UyfM3ORlC YeDXowovnNuxX03lfur3871m3N4RrKXFtRu4dsZPQfNX9Q4zP9oV90Bo2rSEIb1LoMgO w/pdjG1nSftNoJgR2BmUqu5MqSxWLL0YrHsnsOPoUBuDR90M7S8QUUD0m3Bk2KxE/Lpb O7HK3EAz3K4VYOY/g9761yR2Tsm+2jK8OiL5lPEOosHuZ6SqmM996FUoDtImJa1gH41c cpUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=n9woMvDuLYj6GUUxklxt6TRLJ2u+Keupu8+Ol+xtxQY=; b=pF6U7XUXlLbZVSwEMOpVKY6vAaHyU13Kkum7/gKa9002RtS66nxds5KNf5lbfVkDvK cdJdnKvsM4VQTN/vJ8lpvPphmhUAz74+rDMKcTQcB/LqAyra7Un8UF98t3ae5404q0YP Qovq+5DQrp8iImAspiq92KUfgHuBVH/ffIyItGnNi+5NZanPrKRGzt1RLtTai3A7E0PO 7vP+bxjErtG9gzH9PUgF6+Bn9ZuzNR7ar63JYOyrz3iO0u2GASAiTM1G9/jvrQjlezMn NJCtaAvkYt+7MyAhD3sWtvpkYhQ87LQhgGM9sgsfJO0UNYqq8Nx66uAnHKtYV31aBoqS UvdQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com; 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 i12si1153908wmg.103.2017.06.01.19.52.35; Thu, 01 Jun 2017 19:52:35 -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; 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 78B66689BA7; Fri, 2 Jun 2017 05:52:19 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qk0-f194.google.com (mail-qk0-f194.google.com [209.85.220.194]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 152C2689B8E for ; Fri, 2 Jun 2017 05:52:13 +0300 (EEST) Received: by mail-qk0-f194.google.com with SMTP id d14so4952215qkb.1 for ; Thu, 01 Jun 2017 19:52:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references; bh=j2E+Eyc5Vn7Eio5lg5ZMyEEzja5UfVf0mdiO2dUWIfc=; b=NJeVZnaz8Uc3dnUPGlrKFmeXWhuog0OtWTmHa2EOLlk0STI7YCWmbNlfuvHCADNOi+ o65bsnM4LNaUV5lwx2LeP50qewRuMHg74QyAvZKd9WAioreCRafohghPF9qi3kcQHhH5 DrS2nnVrAPxqQ/i9hNVxErjgbUy13S8cT3XEzcF/dFs/izT05hZcVdPMR6HLO2utusD4 YT23KfqvEmB6MFAO08xFw+Aym0XSz+UhyM/0qq006xrMVos84R5aBBVjDSdvDmEzUOuP 4hpAnqaH1/zzi4HzzfBH0QKUANRDOm+oCDWDOweDgw6PlJ2MREassWLSlb/v5wrOE7/x E/KQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=j2E+Eyc5Vn7Eio5lg5ZMyEEzja5UfVf0mdiO2dUWIfc=; b=b6zb34boXr62rUcWXxIfH7vqjKdV2J9qg9VdBjdwzTVeTVrg2BO59vWK0+x9yvSTPl FVxpgw7Ft8TJFI8gJUZCKKAznfw9aOtcQH//dRoCBMyWdIMdcJZai1KhgeRSIwbFWnck dJfG+6Q+L+itry0tsmwxSldI92g++fPM/ZMZA8fHvVPbTv1JRt8mIaqNG6W8+IkidUl/ /n2Zf1lKsZX7ZpSxMXeHLj373fwaVdcIe+fBv0/shskPJhtbXnbtnqhd5FNsG5TlBc0b xtr6TmiCdJX0YscRUWlEPRt9W+YBCOKJqAu1toN5bE6lECxf/09dO+viS+jwBkKEPyHd KWFg== X-Gm-Message-State: AKS2vOwldITARl3aN+5PmnMiwbKUj5IBZeRhsP/oI5O2KcPlprH8Y+v5 pwhnUJXsbb2Tx2rG X-Received: by 10.55.27.206 with SMTP id m75mr5857927qkh.166.1496371937538; Thu, 01 Jun 2017 19:52:17 -0700 (PDT) Received: from localhost.localdomain ([181.231.116.134]) by smtp.gmail.com with ESMTPSA id u129sm13760353qkf.59.2017.06.01.19.52.16 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 01 Jun 2017 19:52:17 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 1 Jun 2017 23:52:00 -0300 Message-Id: <20170602025200.6780-2-jamrial@gmail.com> X-Mailer: git-send-email 2.12.1 In-Reply-To: <20170602025200.6780-1-jamrial@gmail.com> References: <20170602025200.6780-1-jamrial@gmail.com> Subject: [FFmpeg-devel] [PATCH 2/2] avformat/matroskaenc: also write tags when output is WebM 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" WebM supports a subset of elements from the Tags master. See https://www.webmproject.org/docs/container/#tagging Signed-off-by: James Almer --- libavformat/matroskaenc.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 24114d6755..80c1a0f38e 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -1681,14 +1681,17 @@ static int mkv_write_tags(AVFormatContext *s) } } - for (i = 0; i < s->nb_chapters; i++) { - AVChapter *ch = s->chapters[i]; + if (mkv->mode != MODE_WEBM) { + for (i = 0; i < s->nb_chapters; i++) { + AVChapter *ch = s->chapters[i]; - if (!mkv_check_tag(ch->metadata, MATROSKA_ID_TAGTARGETS_CHAPTERUID)) - continue; + if (!mkv_check_tag(ch->metadata, MATROSKA_ID_TAGTARGETS_CHAPTERUID)) + continue; - ret = mkv_write_tag(s, ch->metadata, MATROSKA_ID_TAGTARGETS_CHAPTERUID, ch->id + mkv->chapter_id_offset, &mkv->tags); - if (ret < 0) return ret; + ret = mkv_write_tag(s, ch->metadata, MATROSKA_ID_TAGTARGETS_CHAPTERUID, ch->id + mkv->chapter_id_offset, &mkv->tags); + if (ret < 0) + return ret; + } } if (mkv->have_attachments) { @@ -1988,12 +1991,12 @@ static int mkv_write_header(AVFormatContext *s) ret = mkv_write_attachments(s); if (ret < 0) goto fail; - - ret = mkv_write_tags(s); - if (ret < 0) - goto fail; } + ret = mkv_write_tags(s); + if (ret < 0) + goto fail; + if (!(s->pb->seekable & AVIO_SEEKABLE_NORMAL) && !mkv->is_live) mkv_write_seekhead(pb, mkv);