From patchwork Sun Dec 10 16:37:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Oneric X-Patchwork-Id: 45024 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp2468525pzf; Sun, 10 Dec 2023 08:37:54 -0800 (PST) X-Google-Smtp-Source: AGHT+IE0RRy9ZB5DYjqoP+0D3XqmBmtB437JK10KX0sYecv8IzRrEcLeNVewDwYLCUWKv8qcT8zS X-Received: by 2002:a17:907:1602:b0:a01:ee03:37ec with SMTP id cw2-20020a170907160200b00a01ee0337ecmr2917303ejd.3.1702226274586; Sun, 10 Dec 2023 08:37:54 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id dk24-20020a170906f0d800b00a1db8d8e75csi2937573ejb.31.2023.12.10.08.37.54; Sun, 10 Dec 2023 08:37:54 -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=@oneric.de header.s=strato-dkim-0002 header.b=mY+pIBEN; dkim=neutral (no key) header.i=@ffmpeg.org header.s=strato-dkim-0003 header.b=qe7qvWNj; arc=fail (body hash mismatch); 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 BD28168D0A9; Sun, 10 Dec 2023 18:37:42 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.22]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E338A68D048 for ; Sun, 10 Dec 2023 18:37:34 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; t=1702226254; cv=none; d=strato.com; s=strato-dkim-0002; b=bF1VHX10JDGPhcAHkMjWJD9ZUc0HV4Tn+pPaZJhNsHrZ+8KEKgw16j2vrTu89XehVK uelWgjKu3XqF8DljwpdrC9ItC4HIxXZwXpaXUbikkcce2Lx6R6AphYguJIHssVGf8vhW x33YKHQANmLuJ+4v7SlOeqQ5X4AKiZkPC5StzT0EN1F2QxlhIbVpqhdwmqVhajh4wKE6 UogJ+jYN2vfxi26y1WdvNGpT2e4WtXNBRKNW1AJ+Tra/+Yz0DwniV6z3zMeFMLVN+giN C8fIqFiV42ZUtAMBDMdAOfdUC6DOVE49Zzwe39c6hFq5dMhhPQhZ1Kb4VL6tLo3oZfuG xaQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1702226254; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:To:From:Cc:Date:From: Subject:Sender; bh=V3BflC+g4Ay2sUArV3tt2vBnlfa8LIxVWX58xd1WzwM=; b=flfL4A4D/NRctsf1YRarBSfJmAsQ+LoRe1xxOG3GeRb3pR7hMb/E43Gc3wVGyHouF0 5bu3G6UcnzTWFbZN7FQBHRybA/hl9aTsUZJod6W2P0Y2id24sHvawnovWwTib+xhibpS abcY1z3N3RJVJqOZrjFZz6tpCmjuntocNNJUuk07UD6HhcUBNpBGN1YqnnfgLaG4RfM7 V0382XSTjKTfu/ist6gjPfezCAEarlrBVt71ORjv8dx2Ia4t0nRNPSzhp+CpJ4YlEZ/p et0ePVql8IcEpc1QWX0wRP892/wUlcCfafAk7aRrzVY1DAtwSgyMsSkcdKasKDdFn0Qu UrMA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1702226254; s=strato-dkim-0002; d=oneric.de; h=References:In-Reply-To:Message-Id:Date:Subject:To:From:Cc:Date:From: Subject:Sender; bh=V3BflC+g4Ay2sUArV3tt2vBnlfa8LIxVWX58xd1WzwM=; b=mY+pIBENeLRlyfG4oFJBEStF9YebADsd3fj8fD8UJKhFPlsDUgu9kOyMBWf0dpqVuK EG4c8VguIFkBuHU6rr5SfoKbNOAjLzNlww/0l7HxpK5gHIrvhd0xCv01jiNhsAARTjCm mIudJwUjtVatwO3z8qoRRsOHIvn3kMMOdR3vaR159COLjM9pZ2wyhFZTlWaks6jUBwBy KMD+jqJWIY7+E+Y8EODakKYTXr/VASWFGRtIrV+RYt8iECQfEBuxXDXTnKwkX7Cf+9Zm MwgaKbf6p8OaT9sK2DetrItJ98mk9EtlvRfGr71WD57exG95B8x3h8THKbke9jT/RoDN NTtA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1702226254; s=strato-dkim-0003; d=oneric.de; h=References:In-Reply-To:Message-Id:Date:Subject:To:From:Cc:Date:From: Subject:Sender; bh=V3BflC+g4Ay2sUArV3tt2vBnlfa8LIxVWX58xd1WzwM=; b=qe7qvWNjHhueFg8WJFVH/muvYudAhR4MA4FKHkQV1NHnFJ2qZdg0nPBE8diEbOqa91 rjZVSCYNs5pxj5mSWWDA== X-RZG-AUTH: ":I2IBZ0mrW/AWQXwgB4oxKM1YsW1lFUznrLvi/XReWqAAlWwZ8wlvfXmGs4jUQ0oz8ZbhHexs8fhgUyAHJ90htHJwb5tQKk/WXOwm3hdv" Received: from abhoth.workgroup by smtp.strato.de (RZmta 49.10.0 AUTH) with ESMTPSA id g26a92zBAGbYWJj (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Sun, 10 Dec 2023 17:37:34 +0100 (CET) From: Oneric To: ffmpeg-devel@ffmpeg.org Date: Sun, 10 Dec 2023 17:37:13 +0100 Message-Id: <20231210163715.4016-2-oneric@oneric.de> In-Reply-To: <20231210163715.4016-1-oneric@oneric.de> References: <20231210163715.4016-1-oneric@oneric.de> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 1/3] avcodec/webvttdec: honour bidi marks 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: mFo0d5QRBgCO --- “” --- libavcodec/webvttdec.c | 2 +- tests/ref/fate/sub-webvtt2 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/webvttdec.c b/libavcodec/webvttdec.c index 690f00dc47..990d150f16 100644 --- a/libavcodec/webvttdec.c +++ b/libavcodec/webvttdec.c @@ -39,7 +39,7 @@ static const struct { {"", "{\\u1}"}, {"", "{\\u0}"}, {"{", "\\{"}, {"}", "\\}"}, // escape to avoid ASS markup conflicts {">", ">"}, {"<", "<"}, - {"‎", ""}, {"‏", ""}, // FIXME: properly honor bidi marks + {"‎", "\xe2\x80\x8e"}, {"‏", "\xe2\x80\x8f"}, {"&", "&"}, {" ", "\\h"}, }; diff --git a/tests/ref/fate/sub-webvtt2 b/tests/ref/fate/sub-webvtt2 index 1d236eabdc..31fb5f83a7 100644 --- a/tests/ref/fate/sub-webvtt2 +++ b/tests/ref/fate/sub-webvtt2 @@ -21,6 +21,6 @@ Dialogue: 0,0:00:12.50,0:00:32.50,Default,,0,0,0,,OK, let’s go. Dialogue: 0,0:00:38.00,0:00:43.00,Default,,0,0,0,,I want to 愛あい love you\NThat's not proper English! Dialogue: 0,0:00:43.00,0:00:46.00,Default,,0,0,0,,{\i1}キツネ{\i0}じゃない キツネじゃない\N乙女おとめは Dialogue: 0,0:00:50.00,0:00:55.00,Default,,0,0,0,,Some time ago in a rather distant place.... -Dialogue: 0,0:00:55.00,0:01:00.00,Default,,0,0,0,,Descending: 123456\NAscending: 123456 +Dialogue: 0,0:00:55.00,0:01:00.00,Default,,0,0,0,,Descending: ‏123456‎\NAscending: 123456 Dialogue: 0,0:01:00.00,0:01:05.00,Default,,0,0,0,,>> Never gonna give you up Never gonna let you down\NNever\hgonna\hrun\haround & desert\hyou Dialogue: 0,0:55:00.00,1:00:00.00,Default,,0,0,0,,Transcrit par Célestes™