From patchwork Sun Mar 24 02:39:49 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Marth64 X-Patchwork-Id: 47399 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:c889:b0:1a3:b6bb:3029 with SMTP id hb9csp486386pzb; Sat, 23 Mar 2024 19:40:14 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUAYjdyuLCEkl0bqhtT6p1uR/0NqwsM594riOPoEbQrMsOTZP/Ygn8LZhIIVN8XA4WK+KRBVib56m65nojMmQnLXzdVQocwZNxCSQ== X-Google-Smtp-Source: AGHT+IGUTv1fyiLqq0vnLm6hG17QYBLBRWsJdoRrC0xe0jIR/d0ZphrPAG3oeA6DixcRtScOGkVo X-Received: by 2002:a17:907:7d8b:b0:a47:5317:64fb with SMTP id oz11-20020a1709077d8b00b00a47531764fbmr166733ejc.33.1711248014026; Sat, 23 Mar 2024 19:40:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1711248014; cv=none; d=google.com; s=arc-20160816; b=hFAbVmqoAJ9ts7ryMvA7zFeqywOEik0HXnuE9RZkANQ0x3jiUF+DuXuEEQyCWta7+n sEzqvcoJfJ0jnvVphRKSwwOD7FA8LuiwqmxKch02oXjbS/yptI3elNzj01xIi1xml5w8 85i+kak8OrdUrdvVLMnggrSXOUNXK5E3GCG6tnrWdI7UXvwhov/qWuQ7vg8LMNlnG8kn rWjSk250gu4Ti45eTLotcJ0vuWWIRp+opg8XpPBDx7ZqAg5tI5ofmRsDPY+Qtd65LMwJ xu8pe4l6jsyr3Qf/1XvRahVIyiSuUBPDnMeJPx/ti5qVAV1ClFXVe1YneGM4kg7Sxh+J APZQ== 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:references:in-reply-to :message-id:date:to:from:dkim-signature:delivered-to; bh=zXgi9ANFVttEKEyuidYVSKF3fFF0GE+NdI0r4LXWBFU=; fh=PlWMzmI9LD2qGS7ipLrQl8z0iaQTLQLHzoGuXcBzpCg=; b=FpkLesTdCISeKRXzZFEok6sJtP4JaL0hlAu7JWzw4Q7hEWpzhjZSJ3L3NMz5DKe32d oVH5ghb3eGGT0HHj16PvRpeYB/QGjOqlF0JaFuLc/kd97FsQvHydfQHlR1tMDAyz9SuT f8L8jXLe9yqyAFxP5v7DzNbsP4RGb6cNC7uPIzFnGumAtevVEST64LtYOLH4tkfz+PJP e6ZlCoGzsMzsXXc/skqPFOp7a1YuVF2NzsxjF09j2121Bw3JD22Urynie1e850E53XBe uPFk6LYiXhfGEBCDZcWaOsEsqS7g0vZEBaCB7h2zHDtqDRg7JIxNfhVaqacHUfUrjJGY 98Sg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@proxyid.net header.s=google header.b=NtYTdC+P; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ky20-20020a170907779400b00a46660508cdsi1274314ejc.274.2024.03.23.19.40.13; Sat, 23 Mar 2024 19:40:14 -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=@proxyid.net header.s=google header.b=NtYTdC+P; 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 7D44C68D3F9; Sun, 24 Mar 2024 04:40:02 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-yw1-f225.google.com (mail-yw1-f225.google.com [209.85.128.225]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5D5E968D287 for ; Sun, 24 Mar 2024 04:39:54 +0200 (EET) Received: by mail-yw1-f225.google.com with SMTP id 00721157ae682-60a0a54869bso27146757b3.1 for ; Sat, 23 Mar 2024 19:39:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proxyid.net; s=google; t=1711247993; x=1711852793; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PxjBITOal+lKcM2pE1gXg2Nt9ddFF4QU/pBGXGM0VHc=; b=NtYTdC+PmPOLUzeuB0wdix3KW/YOCPFODYC/UImb6ee3PsDy23kjJPTe3I1A0lbKv6 8RzUer6cBytr0jHc8b1Jd5uqOTsvLHcJYfJzjfBduhXNZqIwQNpnkfOH4u67J3RjcE9s uNWSMq0NosAlf1C8r90B7O7iSYdbQdGCcVXqL2cC7gQFE5UNAzIMdPubyI9nDlN5tEZ5 +nCUxZw6lE9WyqbW3KW3p/G3ZmWzOUdqpw7kzbVF+n+ND3gnzeCBtxeRVq5UIeUWBnB5 85OiUs8V5A7h2sfuv8f+Vpx9z66+FFYdaghGKDtlOmmwF6i9/hoNJmcvuUC+V33pXC2K mzOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711247993; x=1711852793; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PxjBITOal+lKcM2pE1gXg2Nt9ddFF4QU/pBGXGM0VHc=; b=Kfw4an3sk+L/lUvsaapATglhc/iYgZXbokhJ/QN/QU0rXBapRN+PoQ+DBljIWUFXRh 8xKUlh+9LJvItlAW7Xl+FWY/9pjX+kwTgXag2H1QOLN9pBDUY8CiZ0/u4bvhh3AfdFng cCPPq9IbOZPapiA56g9F548r2IMt52rnz2JSUrILi5ZmvnlCIVe/DVCP8Tu188/xYo4W 8y/7BEQzcTBt6GfiQ3KaNi+q5CT6N0Snj5gmpTTLVXNKbHTXklGwpFqGj/LoRPXd3dp9 HZ0cMqGuYjbkoTglS93CsW0QhbeIOv50IEVkzaEvANo8GYmdzPCJOBZeeV57MwvoPTg1 gn8w== X-Gm-Message-State: AOJu0YwvHdiHWHh0a9vCzqOIZVG2dGrE2J5TL1HbasasyKEeNE05dOCw rUqLbhCIc0taG+06Dkpj56URBemtqv2vPWeetnEb+3X/ZIIM7yAJ7Tbi9FgYr9F/dmzmDrpA6gB Bw9EDG4u4T92FCNcNd9+7uVFpuew0pKMm+Tn+PgtR X-Received: by 2002:a0d:c203:0:b0:60c:d640:33b3 with SMTP id e3-20020a0dc203000000b0060cd64033b3mr1424619ywd.13.1711247993026; Sat, 23 Mar 2024 19:39:53 -0700 (PDT) Received: from wsx-cc1-001.. (c-76-141-249-38.hsd1.il.comcast.net. [76.141.249.38]) by smtp-relay.gmail.com with ESMTPS id m18-20020a819c12000000b0060aa4f76b47sm91676ywa.44.2024.03.23.19.39.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 Mar 2024 19:39:53 -0700 (PDT) X-Relaying-Domain: proxyid.net From: Marth64 To: ffmpeg-devel@ffmpeg.org Date: Sat, 23 Mar 2024 21:39:49 -0500 Message-Id: <20240324023950.1420321-2-marth64@proxyid.net> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240324023950.1420321-1-marth64@proxyid.net> References: <20240324023950.1420321-1-marth64@proxyid.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v4 1/2] avcodec/ccaption_dec: don't print multiple \an and \pos tags 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 Cc: Marth64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: vx49oUBE2GvT Closed Captions decoder prints multiple \pos ASS tags per cue, and preceding the \pos tag is a fixed \an7 that fixes rendering position from the top left corner and enforces justification. Printing multiple \an and \pos tags in this way is invalid behavior, because only the first \pos tag in a cue is honored by ASS anyway. Don't write multiple \an and \pos tags. Also, update tests accordingly. Note that when applying the patch, whitespace warnings may appear about the test data. The subtitle stream in this test data has intentional whitespace at the end of line for some cues, this is OK. Signed-off-by: Marth64 --- libavcodec/ccaption_dec.c | 13 ++- tests/ref/fate/sub-cc | 2 +- tests/ref/fate/sub-cc-realtime | 8 +- tests/ref/fate/sub-cc-scte20 | 4 +- tests/ref/fate/sub-scc | 146 ++++++++++++++++----------------- 5 files changed, 91 insertions(+), 82 deletions(-) diff --git a/libavcodec/ccaption_dec.c b/libavcodec/ccaption_dec.c index d8b992bb94..0b01765ccf 100644 --- a/libavcodec/ccaption_dec.c +++ b/libavcodec/ccaption_dec.c @@ -20,6 +20,8 @@ */ #include +#include + #include "avcodec.h" #include "ass.h" #include "codec_internal.h" @@ -457,7 +459,7 @@ static void roll_up(CCaptionSubContext *ctx) static int capture_screen(CCaptionSubContext *ctx) { - int i, j, tab = 0; + int i, j, tab = 0, seen_row = 0; struct Screen *screen = ctx->screen + ctx->active_screen; enum cc_font prev_font = CCFONT_REGULAR; enum cc_color_code prev_color = CCCOL_WHITE; @@ -497,7 +499,14 @@ static int capture_screen(CCaptionSubContext *ctx) x = ASS_DEFAULT_PLAYRESX * (0.1 + 0.0250 * j); y = ASS_DEFAULT_PLAYRESY * (0.1 + 0.0533 * i); - av_bprintf(&ctx->buffer[bidx], "{\\an7}{\\pos(%d,%d)}", x, y); + + if (!seen_row) { + av_bprintf(&ctx->buffer[bidx], "{\\an7}{\\pos(%d,%d)}", x, y); + seen_row = 1; + } + av_log(ctx, AV_LOG_TRACE, "rendering row: start_pts=%" PRId64 " end_pts=%" PRId64 " " + "x=%d y=%d\n", + ctx->buffer_time[0], ctx->buffer_time[1], x, y); for (; j < SCREEN_COLUMNS; j++) { const char *e_tag = "", *s_tag = "", *c_tag = "", *b_tag = ""; diff --git a/tests/ref/fate/sub-cc b/tests/ref/fate/sub-cc index f5216b3de2..d4ab974c2f 100644 --- a/tests/ref/fate/sub-cc +++ b/tests/ref/fate/sub-cc @@ -13,4 +13,4 @@ Style: Default,Monospace,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0, [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.83,0:00:02.97,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudible radio chatter{\i0} ) -Dialogue: 0,0:00:02.97,0:00:04.34,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N{\an7}{\pos(38,44)}>> Safety remains our number one +Dialogue: 0,0:00:02.97,0:00:04.34,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our number one diff --git a/tests/ref/fate/sub-cc-realtime b/tests/ref/fate/sub-cc-realtime index bda890bfe5..da06307221 100644 --- a/tests/ref/fate/sub-cc-realtime +++ b/tests/ref/fate/sub-cc-realtime @@ -16,7 +16,7 @@ Dialogue: 0,0:00:00.97,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}( Dialogue: 0,0:00:01.17,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudibl Dialogue: 0,0:00:01.37,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudible radio chat Dialogue: 0,0:00:01.57,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudible radio chatter{\i0} ) -Dialogue: 0,0:00:03.10,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N{\an7}{\pos(38,44)}>> -Dialogue: 0,0:00:03.30,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N{\an7}{\pos(38,44)}>> Safety rema -Dialogue: 0,0:00:03.50,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N{\an7}{\pos(38,44)}>> Safety remains our numb -Dialogue: 0,0:00:03.70,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N{\an7}{\pos(38,44)}>> Safety remains our number one +Dialogue: 0,0:00:03.10,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> +Dialogue: 0,0:00:03.30,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety rema +Dialogue: 0,0:00:03.50,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our numb +Dialogue: 0,0:00:03.70,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our number one diff --git a/tests/ref/fate/sub-cc-scte20 b/tests/ref/fate/sub-cc-scte20 index 49715301de..09fa3fb330 100644 --- a/tests/ref/fate/sub-cc-scte20 +++ b/tests/ref/fate/sub-cc-scte20 @@ -13,5 +13,5 @@ Style: Default,Monospace,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0, [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.00,0:00:01.44,Default,,0,0,0,,{\an7}{\pos(48,182)}BESIDES THE -Dialogue: 0,0:00:01.43,0:00:03.93,Default,,0,0,0,,{\an7}{\pos(38,166)}\hBESIDES THE \N{\an7}{\pos(38,197)}SPENDING AND THIS, IS THAT CAR -Dialogue: 0,0:00:03.94,0:00:06.31,Default,,0,0,0,,{\an7}{\pos(38,182)}SPENDING AND THIS, IS THAT CAR \N{\an7}{\pos(38,197)}MANUFACTURERS ARE ABOUT AS +Dialogue: 0,0:00:01.43,0:00:03.93,Default,,0,0,0,,{\an7}{\pos(38,166)}\hBESIDES THE \NSPENDING AND THIS, IS THAT CAR +Dialogue: 0,0:00:03.94,0:00:06.31,Default,,0,0,0,,{\an7}{\pos(38,182)}SPENDING AND THIS, IS THAT CAR \NMANUFACTURERS ARE ABOUT AS diff --git a/tests/ref/fate/sub-scc b/tests/ref/fate/sub-scc index a9ff3676be..d29d6ff485 100644 --- a/tests/ref/fate/sub-scc +++ b/tests/ref/fate/sub-scc @@ -12,95 +12,95 @@ Style: Default,Monospace,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0, [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text -Dialogue: 0,0:00:-2.-47,0:00:00.70,Default,,0,0,0,,{\an7}{\pos(76,228)}WE HAVE FOUND A WITCH !\N{\an7}{\pos(76,243)}MAY WE BURN HER ? -Dialogue: 0,0:00:00.69,0:00:03.29,Default,,0,0,0,,{\an7}{\pos(115,228)}[ Crowd ]\N{\an7}{\pos(115,243)}BURN HER ! BURN HER ! -Dialogue: 0,0:00:03.30,0:00:07.07,Default,,0,0,0,,{\an7}{\pos(38,197)}HOW DO YOU KNOW\N{\an7}{\pos(38,213)}SHE IS A WITCH ?\N{\an7}{\pos(153,243)}SHE LOOKS LIKE ONE ! -Dialogue: 0,0:00:07.07,0:00:09.27,Default,,0,0,0,,{\an7}{\pos(192,228)}[ Shouting\N{\an7}{\pos(192,243)}\h\hAffirmations ] +Dialogue: 0,0:00:-2.-47,0:00:00.70,Default,,0,0,0,,{\an7}{\pos(76,228)}WE HAVE FOUND A WITCH !\NMAY WE BURN HER ? +Dialogue: 0,0:00:00.69,0:00:03.29,Default,,0,0,0,,{\an7}{\pos(115,228)}[ Crowd ]\NBURN HER ! BURN HER ! +Dialogue: 0,0:00:03.30,0:00:07.07,Default,,0,0,0,,{\an7}{\pos(38,197)}HOW DO YOU KNOW\NSHE IS A WITCH ?\NSHE LOOKS LIKE ONE ! +Dialogue: 0,0:00:07.07,0:00:09.27,Default,,0,0,0,,{\an7}{\pos(192,228)}[ Shouting\N\h\hAffirmations ] Dialogue: 0,0:00:09.26,0:00:11.06,Default,,0,0,0,,{\an7}{\pos(38,243)}BRING HER FORWARD. -Dialogue: 0,0:00:11.07,0:00:14.27,Default,,0,0,0,,{\an7}{\pos(115,228)}I’M NOT A WITCH.\N{\an7}{\pos(115,243)}\hI’M{\i1} NOT{\i0} A WITCH. -Dialogue: 0,0:00:14.26,0:00:16.03,Default,,0,0,0,,{\an7}{\pos(38,228)}BUT YOU ARE DRESSED\N{\an7}{\pos(38,243)}AS ONE. -Dialogue: 0,0:00:16.03,0:00:19.03,Default,,0,0,0,,{\an7}{\pos(76,197)}THEY DRESSED ME UP\N{\an7}{\pos(76,213)}LIKE THIS.\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\hNO ! WE DIDN’T ! -Dialogue: 0,0:00:19.03,0:00:22.95,Default,,0,0,0,,{\an7}{\pos(115,228)}AND THIS ISN’T MY NOSE.\N{\an7}{\pos(115,243)}IT’S A FALSE ONE. -Dialogue: 0,0:00:25.30,0:00:28.43,Default,,0,0,0,,{\an7}{\pos(76,197)}WELL ?\N{\an7}{\pos(76,228)}\h\h\h\h\h\h\h\hWELL, WE DID\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\hDO THE NOSE. -Dialogue: 0,0:00:28.43,0:00:30.07,Default,,0,0,0,,{\an7}{\pos(76,197)}THE NOSE ?\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\hAND THE HAT. -Dialogue: 0,0:00:30.07,0:00:35.50,Default,,0,0,0,,{\an7}{\pos(115,197)}BUT SHE IS A WITCH.\N{\an7}{\pos(115,228)}YEAH ! BURN HER !\N{\an7}{\pos(115,243)}BURN HER ! BURN HER ! -Dialogue: 0,0:00:35.50,0:00:38.47,Default,,0,0,0,,{\an7}{\pos(76,213)}- DID YOU DRESS HER UP\N{\an7}{\pos(76,228)}\h\hLIKE THIS ?\N{\an7}{\pos(76,243)}- NO ! -Dialogue: 0,0:00:38.46,0:00:39.86,Default,,0,0,0,,{\an7}{\pos(192,197)}\h\h\h\h\h\h\h\hNO !\N{\an7}{\pos(192,213)}NO !\N{\an7}{\pos(192,243)}\h\h\h\hNO ! -Dialogue: 0,0:00:39.86,0:00:41.63,Default,,0,0,0,,{\an7}{\pos(153,228)}YES. YES.\N{\an7}{\pos(153,243)}YEAH, A BIT. -Dialogue: 0,0:00:41.63,0:00:44.83,Default,,0,0,0,,{\an7}{\pos(153,197)}\h\h\h\h\h\h\h\hA BIT.\N{\an7}{\pos(153,213)}\h\h\h\h\h\h\h\h\hA BIT.\N{\an7}{\pos(153,243)}SHE HAS GOT A WART. -Dialogue: 0,0:00:44.83,0:00:47.04,Default,,0,0,0,,{\an7}{\pos(38,228)}WHAT MAKES YOU THINK\N{\an7}{\pos(38,243)}SHE IS A WITCH ? -Dialogue: 0,0:00:47.03,0:00:49.53,Default,,0,0,0,,{\an7}{\pos(115,228)}WELL, SHE TURNED ME\N{\an7}{\pos(115,243)}INTO A NEWT ! +Dialogue: 0,0:00:11.07,0:00:14.27,Default,,0,0,0,,{\an7}{\pos(115,228)}I’M NOT A WITCH.\N\hI’M{\i1} NOT{\i0} A WITCH. +Dialogue: 0,0:00:14.26,0:00:16.03,Default,,0,0,0,,{\an7}{\pos(38,228)}BUT YOU ARE DRESSED\NAS ONE. +Dialogue: 0,0:00:16.03,0:00:19.03,Default,,0,0,0,,{\an7}{\pos(76,197)}THEY DRESSED ME UP\NLIKE THIS.\N\h\h\h\h\h\h\h\hNO ! WE DIDN’T ! +Dialogue: 0,0:00:19.03,0:00:22.95,Default,,0,0,0,,{\an7}{\pos(115,228)}AND THIS ISN’T MY NOSE.\NIT’S A FALSE ONE. +Dialogue: 0,0:00:25.30,0:00:28.43,Default,,0,0,0,,{\an7}{\pos(76,197)}WELL ?\N\h\h\h\h\h\h\h\hWELL, WE DID\N\h\h\h\h\h\h\h\hDO THE NOSE. +Dialogue: 0,0:00:28.43,0:00:30.07,Default,,0,0,0,,{\an7}{\pos(76,197)}THE NOSE ?\N\h\h\h\h\h\h\h\hAND THE HAT. +Dialogue: 0,0:00:30.07,0:00:35.50,Default,,0,0,0,,{\an7}{\pos(115,197)}BUT SHE IS A WITCH.\NYEAH ! BURN HER !\NBURN HER ! BURN HER ! +Dialogue: 0,0:00:35.50,0:00:38.47,Default,,0,0,0,,{\an7}{\pos(76,213)}- DID YOU DRESS HER UP\N\h\hLIKE THIS ?\N- NO ! +Dialogue: 0,0:00:38.46,0:00:39.86,Default,,0,0,0,,{\an7}{\pos(192,197)}\h\h\h\h\h\h\h\hNO !\NNO !\N\h\h\h\hNO ! +Dialogue: 0,0:00:39.86,0:00:41.63,Default,,0,0,0,,{\an7}{\pos(153,228)}YES. YES.\NYEAH, A BIT. +Dialogue: 0,0:00:41.63,0:00:44.83,Default,,0,0,0,,{\an7}{\pos(153,197)}\h\h\h\h\h\h\h\hA BIT.\N\h\h\h\h\h\h\h\h\hA BIT.\NSHE HAS GOT A WART. +Dialogue: 0,0:00:44.83,0:00:47.04,Default,,0,0,0,,{\an7}{\pos(38,228)}WHAT MAKES YOU THINK\NSHE IS A WITCH ? +Dialogue: 0,0:00:47.03,0:00:49.53,Default,,0,0,0,,{\an7}{\pos(115,228)}WELL, SHE TURNED ME\NINTO A NEWT ! Dialogue: 0,0:00:49.53,0:00:52.30,Default,,0,0,0,,{\an7}{\pos(76,243)}A NEWT ? Dialogue: 0,0:00:55.46,0:00:57.39,Default,,0,0,0,,{\an7}{\pos(115,243)}I GOT BETTER. Dialogue: 0,0:00:57.40,0:00:58.90,Default,,0,0,0,,{\an7}{\pos(153,243)}BURN HER ANYWAY ! -Dialogue: 0,0:00:58.89,0:01:01.03,Default,,0,0,0,,{\an7}{\pos(76,197)}BURN HER !\N{\an7}{\pos(76,228)}\h\h\h\h\h\h\h\hBURN HER !\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\hCRACKLE, CRACKLE ! -Dialogue: 0,0:01:01.03,0:01:04.00,Default,,0,0,0,,{\an7}{\pos(38,197)}\h\h\h\h[ Shouting\N{\an7}{\pos(38,213)}\h\h\h\h\h\hContinues ]\N{\an7}{\pos(38,243)}QUIET. QUIET. -Dialogue: 0,0:01:04.00,0:01:05.43,Default,,0,0,0,,{\an7}{\pos(38,228)}QUIET !\N{\an7}{\pos(48,243)}QUIET ! -Dialogue: 0,0:01:05.43,0:01:09.13,Default,,0,0,0,,{\an7}{\pos(38,228)}THERE ARE WAYS OF TELLING\N{\an7}{\pos(38,243)}WHETHER SHE IS A WITCH. -Dialogue: 0,0:01:09.13,0:01:10.96,Default,,0,0,0,,{\an7}{\pos(38,228)}ARE THERE ?\N{\an7}{\pos(38,243)}WHAT ARE THEY ? -Dialogue: 0,0:01:10.96,0:01:13.30,Default,,0,0,0,,{\an7}{\pos(38,197)}TELL US !\N{\an7}{\pos(153,213)}TELL US !\N{\an7}{\pos(153,243)}\h\h\h\hDO THEY HURT ? -Dialogue: 0,0:01:13.30,0:01:16.23,Default,,0,0,0,,{\an7}{\pos(38,228)}TELL ME,\N{\an7}{\pos(38,243)}WHAT DO YOU DO WITH WITCHES ? -Dialogue: 0,0:01:16.23,0:01:19.20,Default,,0,0,0,,{\an7}{\pos(76,213)}\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM !\N{\an7}{\pos(76,228)}\h\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM UP !\N{\an7}{\pos(76,243)}BURN ! -Dialogue: 0,0:01:19.20,0:01:22.33,Default,,0,0,0,,{\an7}{\pos(38,228)}AND WHAT DO YOU BURN,\N{\an7}{\pos(38,243)}APART FROM WITCHES ? -Dialogue: 0,0:01:22.33,0:01:24.59,Default,,0,0,0,,{\an7}{\pos(38,197)}MORE WITCHES !\N{\an7}{\pos(153,243)}SHH ! +Dialogue: 0,0:00:58.89,0:01:01.03,Default,,0,0,0,,{\an7}{\pos(76,197)}BURN HER !\N\h\h\h\h\h\h\h\hBURN HER !\N\h\h\h\h\h\h\h\hCRACKLE, CRACKLE ! +Dialogue: 0,0:01:01.03,0:01:04.00,Default,,0,0,0,,{\an7}{\pos(38,197)}\h\h\h\h[ Shouting\N\h\h\h\h\h\hContinues ]\NQUIET. QUIET. +Dialogue: 0,0:01:04.00,0:01:05.43,Default,,0,0,0,,{\an7}{\pos(38,228)}QUIET !\NQUIET ! +Dialogue: 0,0:01:05.43,0:01:09.13,Default,,0,0,0,,{\an7}{\pos(38,228)}THERE ARE WAYS OF TELLING\NWHETHER SHE IS A WITCH. +Dialogue: 0,0:01:09.13,0:01:10.96,Default,,0,0,0,,{\an7}{\pos(38,228)}ARE THERE ?\NWHAT ARE THEY ? +Dialogue: 0,0:01:10.96,0:01:13.30,Default,,0,0,0,,{\an7}{\pos(38,197)}TELL US !\NTELL US !\N\h\h\h\hDO THEY HURT ? +Dialogue: 0,0:01:13.30,0:01:16.23,Default,,0,0,0,,{\an7}{\pos(38,228)}TELL ME,\NWHAT DO YOU DO WITH WITCHES ? +Dialogue: 0,0:01:16.23,0:01:19.20,Default,,0,0,0,,{\an7}{\pos(76,213)}\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM !\N\h\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM UP !\NBURN ! +Dialogue: 0,0:01:19.20,0:01:22.33,Default,,0,0,0,,{\an7}{\pos(38,228)}AND WHAT DO YOU BURN,\NAPART FROM WITCHES ? +Dialogue: 0,0:01:22.33,0:01:24.59,Default,,0,0,0,,{\an7}{\pos(38,197)}MORE WITCHES !\NSHH ! Dialogue: 0,0:01:24.59,0:01:25.62,Default,,0,0,0,,{\an7}{\pos(192,243)}WOOD ! -Dialogue: 0,0:01:25.63,0:01:29.33,Default,,0,0,0,,{\an7}{\pos(38,228)}SO,\N{\an7}{\pos(38,243)}WHY DO WITCHES BURN ? +Dialogue: 0,0:01:25.63,0:01:29.33,Default,,0,0,0,,{\an7}{\pos(38,228)}SO,\NWHY DO WITCHES BURN ? Dialogue: 0,0:01:32.69,0:01:35.03,Default,,0,0,0,,{\an7}{\pos(192,243)}B-- -Dialogue: 0,0:01:39.13,0:01:42.46,Default,,0,0,0,,{\an7}{\pos(76,213)}- ’CAUSE THEY’RE\N{\an7}{\pos(76,228)}\h\hMADE OF W-- WOOD ?\N{\an7}{\pos(76,243)}- GOOD ! -Dialogue: 0,0:01:42.46,0:01:44.00,Default,,0,0,0,,{\an7}{\pos(192,213)}OH, YEAH.\N{\an7}{\pos(192,243)}[ Murmuring ] -Dialogue: 0,0:01:44.00,0:01:48.50,Default,,0,0,0,,{\an7}{\pos(38,213)}SO, HOW DO WE TELL\N{\an7}{\pos(38,228)}WHETHER SHE\N{\an7}{\pos(38,243)}IS MADE OF WOOD ? -Dialogue: 0,0:01:48.50,0:01:50.10,Default,,0,0,0,,{\an7}{\pos(153,228)}BUILD A BRIDGE\N{\an7}{\pos(153,243)}OUT OF HER ! -Dialogue: 0,0:01:50.10,0:01:54.13,Default,,0,0,0,,{\an7}{\pos(38,228)}AH, BUT CAN YOU NOT ALSO\N{\an7}{\pos(38,243)}MAKE BRIDGES OUT OF STONE ? -Dialogue: 0,0:01:54.13,0:01:57.26,Default,,0,0,0,,{\an7}{\pos(76,197)}OH, YEAH.\N{\an7}{\pos(76,228)}\h\h\h\h\h\h\h\hOH, YEAH.\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\hTRUE. UH-- -Dialogue: 0,0:01:57.26,0:01:59.72,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}DOES WOOD\N{\an7}{\pos(38,243)}SINK IN WATER ? -Dialogue: 0,0:01:59.73,0:02:02.17,Default,,0,0,0,,{\an7}{\pos(76,197)}NO, NO.\N{\an7}{\pos(76,228)}\h\h\h\h\h\h\h\hNO, IT FLOATS !\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\hIT FLOATS ! -Dialogue: 0,0:02:02.17,0:02:07.04,Default,,0,0,0,,{\an7}{\pos(76,197)}THROW HER INTO THE POND !\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\h[ All Shouting ] -Dialogue: 0,0:02:07.36,0:02:10.49,Default,,0,0,0,,{\an7}{\pos(38,228)}WHAT ALSO FLOATS\N{\an7}{\pos(38,243)}IN WATER ? -Dialogue: 0,0:02:10.50,0:02:12.14,Default,,0,0,0,,{\an7}{\pos(76,197)}BREAD !\N{\an7}{\pos(76,243)}\h\h\h\h\h\h\h\h\h\h\h\hAPPLES ! +Dialogue: 0,0:01:39.13,0:01:42.46,Default,,0,0,0,,{\an7}{\pos(76,213)}- ’CAUSE THEY’RE\N\h\hMADE OF W-- WOOD ?\N- GOOD ! +Dialogue: 0,0:01:42.46,0:01:44.00,Default,,0,0,0,,{\an7}{\pos(192,213)}OH, YEAH.\N[ Murmuring ] +Dialogue: 0,0:01:44.00,0:01:48.50,Default,,0,0,0,,{\an7}{\pos(38,213)}SO, HOW DO WE TELL\NWHETHER SHE\NIS MADE OF WOOD ? +Dialogue: 0,0:01:48.50,0:01:50.10,Default,,0,0,0,,{\an7}{\pos(153,228)}BUILD A BRIDGE\NOUT OF HER ! +Dialogue: 0,0:01:50.10,0:01:54.13,Default,,0,0,0,,{\an7}{\pos(38,228)}AH, BUT CAN YOU NOT ALSO\NMAKE BRIDGES OUT OF STONE ? +Dialogue: 0,0:01:54.13,0:01:57.26,Default,,0,0,0,,{\an7}{\pos(76,197)}OH, YEAH.\N\h\h\h\h\h\h\h\hOH, YEAH.\N\h\h\h\h\h\h\h\hTRUE. UH-- +Dialogue: 0,0:01:57.26,0:01:59.72,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}DOES WOOD\NSINK IN WATER ? +Dialogue: 0,0:01:59.73,0:02:02.17,Default,,0,0,0,,{\an7}{\pos(76,197)}NO, NO.\N\h\h\h\h\h\h\h\hNO, IT FLOATS !\N\h\h\h\h\h\h\h\hIT FLOATS ! +Dialogue: 0,0:02:02.17,0:02:07.04,Default,,0,0,0,,{\an7}{\pos(76,197)}THROW HER INTO THE POND !\N\h\h\h\h\h\h\h\h[ All Shouting ] +Dialogue: 0,0:02:07.36,0:02:10.49,Default,,0,0,0,,{\an7}{\pos(38,228)}WHAT ALSO FLOATS\NIN WATER ? +Dialogue: 0,0:02:10.50,0:02:12.14,Default,,0,0,0,,{\an7}{\pos(76,197)}BREAD !\N\h\h\h\h\h\h\h\h\h\h\h\hAPPLES ! Dialogue: 0,0:02:12.13,0:02:13.23,Default,,0,0,0,,{\an7}{\pos(76,243)}UH, VERY SMALL ROCKS. -Dialogue: 0,0:02:13.23,0:02:16.49,Default,,0,0,0,,{\an7}{\pos(86,228)}{\i1}- CIDER ! CHERRIES !\N{\an7}{\pos(86,243)}{\i0}- UH, GRA-- GRAVY ! MUD ! -Dialogue: 0,0:02:16.50,0:02:18.76,Default,,0,0,0,,{\an7}{\pos(86,228)}- CHURCHES ! CHURCHES !\N{\an7}{\pos(86,243)}{\i1}- LEAD ! LEAD ! -Dialogue: 0,0:02:18.76,0:02:22.30,Default,,0,0,0,,{\an7}{\pos(76,228)}- A DUCK !\N{\an7}{\pos(76,243)}- [ Crowd Gasps, Murmurs ] +Dialogue: 0,0:02:13.23,0:02:16.49,Default,,0,0,0,,{\an7}{\pos(86,228)}{\i1}- CIDER ! CHERRIES !\N{\i0}- UH, GRA-- GRAVY ! MUD ! +Dialogue: 0,0:02:16.50,0:02:18.76,Default,,0,0,0,,{\an7}{\pos(86,228)}- CHURCHES ! CHURCHES !\N{\i1}- LEAD ! LEAD ! +Dialogue: 0,0:02:18.76,0:02:22.30,Default,,0,0,0,,{\an7}{\pos(76,228)}- A DUCK !\N- [ Crowd Gasps, Murmurs ] Dialogue: 0,0:02:22.30,0:02:24.63,Default,,0,0,0,,{\an7}{\pos(115,243)}EXACTLY ! Dialogue: 0,0:02:25.36,0:02:27.59,Default,,0,0,0,,{\an7}{\pos(76,243)}SO, LOGICALLY-- Dialogue: 0,0:02:27.59,0:02:29.76,Default,,0,0,0,,{\an7}{\pos(192,243)}IF... SHE... -Dialogue: 0,0:02:29.76,0:02:33.56,Default,,0,0,0,,{\an7}{\pos(192,213)}WEIGHS...\N{\an7}{\pos(192,228)}THE SAME\N{\an7}{\pos(192,243)}AS A DUCK... +Dialogue: 0,0:02:29.76,0:02:33.56,Default,,0,0,0,,{\an7}{\pos(192,213)}WEIGHS...\NTHE SAME\NAS A DUCK... Dialogue: 0,0:02:34.40,0:02:36.50,Default,,0,0,0,,{\an7}{\pos(153,243)}SHE’S MADE OF WOOD ! Dialogue: 0,0:02:36.50,0:02:38.47,Default,,0,0,0,,{\an7}{\pos(38,243)}AND THEREFORE ? -Dialogue: 0,0:02:39.50,0:02:42.17,Default,,0,0,0,,{\an7}{\pos(38,228)}- A WITCH !\N{\an7}{\pos(38,243)}{\i1}- [ All ] A WITCH ! A WITCH ! +Dialogue: 0,0:02:39.50,0:02:42.17,Default,,0,0,0,,{\an7}{\pos(38,228)}- A WITCH !\N{\i1}- [ All ] A WITCH ! A WITCH ! Dialogue: 0,0:02:42.17,0:02:44.07,Default,,0,0,0,,{\an7}{\pos(76,243)}[ Shouting Continues ] -Dialogue: 0,0:02:44.07,0:02:45.76,Default,,0,0,0,,{\an7}{\pos(192,213)}HERE’S A DUCK !\N{\an7}{\pos(192,243)}[ Quacking ] -Dialogue: 0,0:02:45.76,0:02:49.79,Default,,0,0,0,,{\an7}{\pos(76,213)}VERY GOOD.\N{\an7}{\pos(76,228)}WE SHALL USE\N{\an7}{\pos(76,243)}MY LARGEST SCALES. +Dialogue: 0,0:02:44.07,0:02:45.76,Default,,0,0,0,,{\an7}{\pos(192,213)}HERE’S A DUCK !\N[ Quacking ] +Dialogue: 0,0:02:45.76,0:02:49.79,Default,,0,0,0,,{\an7}{\pos(76,213)}VERY GOOD.\NWE SHALL USE\NMY LARGEST SCALES. Dialogue: 0,0:02:49.79,0:02:52.72,Default,,0,0,0,,{\an7}{\pos(76,243)}[ Shouting Continues ] -Dialogue: 0,0:02:52.73,0:02:55.17,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN !\N{\an7}{\pos(115,243)}\hBURN THE WITCH ! -Dialogue: 0,0:02:55.17,0:02:57.63,Default,,0,0,0,,{\an7}{\pos(153,228)}BURN HER !\N{\an7}{\pos(153,243)}\hBURN THE WITCH ! -Dialogue: 0,0:02:57.63,0:03:01.63,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN HER !\N{\an7}{\pos(115,243)}\hBURN HER ! BURN HER ! -Dialogue: 0,0:03:01.63,0:03:04.14,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN HER !\N{\an7}{\pos(115,243)}\hBURN HER ! -Dialogue: 0,0:03:04.13,0:03:06.59,Default,,0,0,0,,{\an7}{\pos(230,228)}BURN HER !\N{\an7}{\pos(230,243)}\hBURN HER ! +Dialogue: 0,0:02:52.73,0:02:55.17,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN !\N\hBURN THE WITCH ! +Dialogue: 0,0:02:55.17,0:02:57.63,Default,,0,0,0,,{\an7}{\pos(153,228)}BURN HER !\N\hBURN THE WITCH ! +Dialogue: 0,0:02:57.63,0:03:01.63,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN HER !\N\hBURN HER ! BURN HER ! +Dialogue: 0,0:03:01.63,0:03:04.14,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN HER !\N\hBURN HER ! +Dialogue: 0,0:03:04.13,0:03:06.59,Default,,0,0,0,,{\an7}{\pos(230,228)}BURN HER !\N\hBURN HER ! Dialogue: 0,0:03:06.59,0:03:08.00,Default,,0,0,0,,{\an7}{\pos(201,243)}{\i1}[ Man Grunts ] -Dialogue: 0,0:03:08.00,0:03:14.30,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}RIGHT !\N{\an7}{\pos(38,243)}REMOVE THE SUPPORTS ! -Dialogue: 0,0:03:17.07,0:03:19.17,Default,,0,0,0,,{\an7}{\pos(38,197)}A WITCH !\N{\an7}{\pos(230,243)}A WITCH ! +Dialogue: 0,0:03:08.00,0:03:14.30,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}RIGHT !\NREMOVE THE SUPPORTS ! +Dialogue: 0,0:03:17.07,0:03:19.17,Default,,0,0,0,,{\an7}{\pos(38,197)}A WITCH !\NA WITCH ! Dialogue: 0,0:03:19.17,0:03:20.04,Default,,0,0,0,,{\an7}{\pos(76,243)}IT’S A FAIR COP. -Dialogue: 0,0:03:20.03,0:03:25.29,Default,,0,0,0,,{\an7}{\pos(38,213)}- BURN HER !\N{\an7}{\pos(38,228)}- [ Crowd Continues Shouting ]\N{\an7}{\pos(57,243)}BURN HER ! BURN HER ! -Dialogue: 0,0:03:28.86,0:03:32.73,Default,,0,0,0,,{\an7}{\pos(38,213)}WHO ARE YOU,\N{\an7}{\pos(38,228)}WHO ARE SO WISE\N{\an7}{\pos(38,243)}IN THE WAYS OF SCIENCE ? -Dialogue: 0,0:03:32.73,0:03:35.76,Default,,0,0,0,,{\an7}{\pos(153,228)}I AM ARTHUR,\N{\an7}{\pos(153,243)}KING OF THE BRITONS. +Dialogue: 0,0:03:20.03,0:03:25.29,Default,,0,0,0,,{\an7}{\pos(38,213)}- BURN HER !\N- [ Crowd Continues Shouting ]\NBURN HER ! BURN HER ! +Dialogue: 0,0:03:28.86,0:03:32.73,Default,,0,0,0,,{\an7}{\pos(38,213)}WHO ARE YOU,\NWHO ARE SO WISE\NIN THE WAYS OF SCIENCE ? +Dialogue: 0,0:03:32.73,0:03:35.76,Default,,0,0,0,,{\an7}{\pos(153,228)}I AM ARTHUR,\NKING OF THE BRITONS. Dialogue: 0,0:03:35.76,0:03:36.96,Default,,0,0,0,,{\an7}{\pos(76,243)}MY LIEGE ! -Dialogue: 0,0:03:36.96,0:03:40.37,Default,,0,0,0,,{\an7}{\pos(115,213)}GOOD SIR KNIGHT,\N{\an7}{\pos(115,228)}WILL YOU COME WITH ME\N{\an7}{\pos(115,243)}TO CAMELOT... -Dialogue: 0,0:03:40.36,0:03:43.39,Default,,0,0,0,,{\an7}{\pos(153,228)}AND JOIN US\N{\an7}{\pos(153,243)}AT THE ROUND TABLE ? -Dialogue: 0,0:03:43.40,0:03:45.53,Default,,0,0,0,,{\an7}{\pos(38,228)}MY LIEGE,\N{\an7}{\pos(38,243)}I WOULD BE HONORED ! -Dialogue: 0,0:03:45.53,0:03:48.70,Default,,0,0,0,,{\an7}{\pos(38,197)}\h\h\h\h\h\h\h\h\h\h\h\hWHAT IS YOUR NAME ?\N{\an7}{\pos(38,243)}BEDEVERE, MY LIEGE. -Dialogue: 0,0:03:48.69,0:03:52.49,Default,,0,0,0,,{\an7}{\pos(163,228)}THEN I DUB YOU\N{\an7}{\pos(163,243)}{\i1}SIR{\i0} BEDEVERE, -Dialogue: 0,0:03:52.50,0:03:54.86,Default,,0,0,0,,{\an7}{\pos(153,228)}KNIGHT\N{\an7}{\pos(153,243)}OF THE ROUND TABLE. -Dialogue: 0,0:03:54.86,0:03:56.76,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}[ Narrator ]\N{\an7}{\pos(38,243)}THE WISE SIR BEDEVERE... -Dialogue: 0,0:03:56.76,0:03:59.69,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WAS THE FIRST TO JOIN\N{\an7}{\pos(38,243)}KING ARTHUR’S KNIGHTS. -Dialogue: 0,0:03:59.69,0:04:03.26,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}BUT OTHER ILLUSTRIOUS NAMES\N{\an7}{\pos(38,243)}WERE SOON TO FOLLOW: +Dialogue: 0,0:03:36.96,0:03:40.37,Default,,0,0,0,,{\an7}{\pos(115,213)}GOOD SIR KNIGHT,\NWILL YOU COME WITH ME\NTO CAMELOT... +Dialogue: 0,0:03:40.36,0:03:43.39,Default,,0,0,0,,{\an7}{\pos(153,228)}AND JOIN US\NAT THE ROUND TABLE ? +Dialogue: 0,0:03:43.40,0:03:45.53,Default,,0,0,0,,{\an7}{\pos(38,228)}MY LIEGE,\NI WOULD BE HONORED ! +Dialogue: 0,0:03:45.53,0:03:48.70,Default,,0,0,0,,{\an7}{\pos(38,197)}\h\h\h\h\h\h\h\h\h\h\h\hWHAT IS YOUR NAME ?\NBEDEVERE, MY LIEGE. +Dialogue: 0,0:03:48.69,0:03:52.49,Default,,0,0,0,,{\an7}{\pos(163,228)}THEN I DUB YOU\N{\i1}SIR{\i0} BEDEVERE, +Dialogue: 0,0:03:52.50,0:03:54.86,Default,,0,0,0,,{\an7}{\pos(153,228)}KNIGHT\NOF THE ROUND TABLE. +Dialogue: 0,0:03:54.86,0:03:56.76,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}[ Narrator ]\NTHE WISE SIR BEDEVERE... +Dialogue: 0,0:03:56.76,0:03:59.69,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WAS THE FIRST TO JOIN\NKING ARTHUR’S KNIGHTS. +Dialogue: 0,0:03:59.69,0:04:03.26,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}BUT OTHER ILLUSTRIOUS NAMES\NWERE SOON TO FOLLOW: Dialogue: 0,0:04:03.26,0:04:06.03,Default,,0,0,0,,{\an7}{\pos(38,243)}{\i1}SIR LAUNCELOT THE BRAVE; Dialogue: 0,0:04:06.03,0:04:07.95,Default,,0,0,0,,{\an7}{\pos(38,243)}{\i1}SIR GALAHAD THE PURE; -Dialogue: 0,0:04:07.96,0:04:11.27,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}AND SIR ROBIN\N{\an7}{\pos(38,228)}THE NOT-QUITE-SO-BRAVE-\N{\an7}{\pos(38,243)}AS-SIR-LAUNCELOT, -Dialogue: 0,0:04:11.26,0:04:13.92,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WHO HAD NEARLY FOUGHT\N{\an7}{\pos(38,243)}THE DRAGON OF ANGNOR, -Dialogue: 0,0:04:13.92,0:04:16.89,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}WHO HAD NEARLY\N{\an7}{\pos(38,228)}STOOD UP TO THE VICIOUS\N{\an7}{\pos(38,243)}CHICKEN OF BRISTOL... -Dialogue: 0,0:04:16.89,0:04:20.73,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}AND WHO HAD\N{\an7}{\pos(38,228)}PERSONALLY WET HIMSELF\N{\an7}{\pos(38,243)}AT THE BATTLE OF BADON HILL; -Dialogue: 0,0:04:20.73,0:04:25.43,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}AND THE APTLY NAMED\N{\an7}{\pos(38,243)}SIR NOT-APPEARING-IN-THIS-FILM. -Dialogue: 0,0:04:25.59,0:04:29.03,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}TOGETHER THEY FORMED A BAND\N{\an7}{\pos(38,243)}WHOSE NAMES AND DEEDS... -Dialogue: 0,0:04:29.03,0:04:31.72,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WERE TO BE RETOLD\N{\an7}{\pos(38,243)}THROUGHOUT THE CENTURIES. -Dialogue: 0,0:04:31.73,0:04:33.86,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}THE KNIGHTS\N{\an7}{\pos(38,243)}OF THE ROUND TABLE. +Dialogue: 0,0:04:07.96,0:04:11.27,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}AND SIR ROBIN\NTHE NOT-QUITE-SO-BRAVE-\NAS-SIR-LAUNCELOT, +Dialogue: 0,0:04:11.26,0:04:13.92,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WHO HAD NEARLY FOUGHT\NTHE DRAGON OF ANGNOR, +Dialogue: 0,0:04:13.92,0:04:16.89,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}WHO HAD NEARLY\NSTOOD UP TO THE VICIOUS\NCHICKEN OF BRISTOL... +Dialogue: 0,0:04:16.89,0:04:20.73,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}AND WHO HAD\NPERSONALLY WET HIMSELF\NAT THE BATTLE OF BADON HILL; +Dialogue: 0,0:04:20.73,0:04:25.43,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}AND THE APTLY NAMED\NSIR NOT-APPEARING-IN-THIS-FILM. +Dialogue: 0,0:04:25.59,0:04:29.03,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}TOGETHER THEY FORMED A BAND\NWHOSE NAMES AND DEEDS... +Dialogue: 0,0:04:29.03,0:04:31.72,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WERE TO BE RETOLD\NTHROUGHOUT THE CENTURIES. +Dialogue: 0,0:04:31.73,0:04:33.86,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}THE KNIGHTS\NOF THE ROUND TABLE. From patchwork Sun Mar 24 02:39:50 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Marth64 X-Patchwork-Id: 47400 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:c889:b0:1a3:b6bb:3029 with SMTP id hb9csp486416pzb; Sat, 23 Mar 2024 19:40:23 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUCli0YAnrbKPGbOq1N4JeAVT+Wc3axZAIg8mk35tDO44DTubuTkU3648E6MgZkPu74nVgPztyuSKs95hkYs0/Qy4lwaEEQil4AEQ== X-Google-Smtp-Source: AGHT+IHZgyE5uiFFP3TG15Nz3H+F3LTD8Mr/V2I7dm9jT/urLiN6GNaAbPqbiTcIUK0uY8NFmp7x X-Received: by 2002:a50:8704:0:b0:56b:dd7c:ac3d with SMTP id i4-20020a508704000000b0056bdd7cac3dmr2521514edb.10.1711248023463; Sat, 23 Mar 2024 19:40:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1711248023; cv=none; d=google.com; s=arc-20160816; b=llOgvf/r/4TFAgPIsToZZ7IM7b2f36XvgGqMELki4Ew9TMUv/cUtI+5No/CmM43kJz 2MdAVHmHb+D0/H5oINr/y+mJ76hMJWGxuBj/IeqFxBBUgE8rXfaGiwO9VoelFGG1HpD3 XVRPggOFKHrNMXMTDvuFODWf2Qf4yVft27cbCs7UGrfyiLOcb+B0jMJMW7z1vroOtW5p FSV193RNKTcVTZxKWBasUZvDC3b7qm4i956Ry47XjHFnq9WrtWsv6qwka8j8plk9NQc7 DjzjjuyH2Hlc8p/35TlS/ck4b6KGE4NXdnOxQZi1zDOWIN7EQ4AgIlP/oWFGHQxQbm25 x5eA== 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:references:in-reply-to :message-id:date:to:from:dkim-signature:delivered-to; bh=W9NghUKffgEv8D0C1R+6Htr2HLQ78Pce0dHKmp2yR2U=; fh=PlWMzmI9LD2qGS7ipLrQl8z0iaQTLQLHzoGuXcBzpCg=; b=zI4+qI28GdEEu6I9OVJ+zE/1ydggvXLEayUzbWqht55jyOvot4tdsAOUHybuzaX/Ex d4eCLzVS2ofjRf5gEzWhP5ZlY/8wj+qQg/zhKVq7iDnnNPD6FwYbeDRelLfl8/K2cRVk GoeAO1HWOec14/TPmELmMUPG/9wbH0tMyyM3lWxXFybsEnvkC+tyqzBAKv6VjkD/DSb0 zPQ2ZTol3UtS3jU2fXxVto6KRhq65fpByTVKTTACU4IN36Vc1W9tG72lRHRq3j7e/iJb 7xILSgz/WXSr74FKRsha4NaWgHQEYH7mjlJ1KmV1pj7I+soOLaYwmQqK5bOmRPjymCIp HSFA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@proxyid.net header.s=google header.b=TSBDSvvj; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id el10-20020a056402360a00b0056bb2c5dbd8si1301466edb.74.2024.03.23.19.40.22; Sat, 23 Mar 2024 19:40:23 -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=@proxyid.net header.s=google header.b=TSBDSvvj; 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 6BC7068D280; Sun, 24 Mar 2024 04:40:03 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-yw1-f226.google.com (mail-yw1-f226.google.com [209.85.128.226]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C55E068D287 for ; Sun, 24 Mar 2024 04:39:54 +0200 (EET) Received: by mail-yw1-f226.google.com with SMTP id 00721157ae682-61149e50602so2681777b3.0 for ; Sat, 23 Mar 2024 19:39:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proxyid.net; s=google; t=1711247993; x=1711852793; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/dLesXhB5wjPMZ21XgDb87Ld2nnfS5cyjmcsumcykOQ=; b=TSBDSvvjyzDui37J4klgT6RbiiV83kv6iSCw01RaLh0HDGXnb0XomxpxVIoW9nX06y 3TraNPty+89sxqWdigXOO1P64NUzHUGI5NZA9pDmRgoLG9gre5+xIJ4jta6xzlqgquuu pOlZE7h4AYso43LhBQNZ6+yLqSztbeiopc1ny5WkaJ7I99k/7Lsyc7Ch51/5vYIpJV9Q GSqkWDwhUdlp+QZJjvC4pDyb6bOWmpcpqhq+pcmitMQPAsTK6w7sh4EuJvlW3ABnGeZo Xa/H3xiKVyAm8BIqgkSHyzT5HMKLz5TyEYtfF1CZIJRBtKkXffuJDbstm+svBhoDuAy4 FZbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711247993; x=1711852793; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/dLesXhB5wjPMZ21XgDb87Ld2nnfS5cyjmcsumcykOQ=; b=DTE6pbrMFohVDaNah6WfgrMjMXklztsSDimiQpEl+rc96X4VqxK+adwrcM10dszJvr SIYI7dEHFprdTDNwysPySfrGDYDsvzQHbAdc0X1b67C3C7YiObxD6pZXla+BQN7fXONM ohOs/PYVYDxAt4Fu4kN0UsNtwJ7JmkAPQagIFRw30vQcVTGaa+7wQDDtZzMXzEZPO7sQ ztYX91X/x8d6gv2D3HrtYgN91Rm3j44rBcg6jQ8S2xgqLpr6QPvfcLx5vaAnqEEmHgG+ g+dXAF/qqFah9UGpuONrBMX4DWuMClycZiw48SYYW9HQ8q52w/a+Jk7s7Dk+H1wcbfq3 4C1w== X-Gm-Message-State: AOJu0YyFmFrDmih7xEsP9oOxRedAX/iyNE/jU3jnZ6bI3b4x7Nw0ObGf SCO8AcijRp5u/4LDqZcJSvlBps3wW6XY0gXB6Dw1w3U2u04xyXKszGI/xvIE7eol8jn0K5UK72U t/VnlnR+XY28ACKgASkuJ4YQNZfrq56nLr0autipt X-Received: by 2002:a81:4854:0:b0:60a:181f:16d8 with SMTP id v81-20020a814854000000b0060a181f16d8mr1417724ywa.5.1711247993482; Sat, 23 Mar 2024 19:39:53 -0700 (PDT) Received: from wsx-cc1-001.. (c-76-141-249-38.hsd1.il.comcast.net. [76.141.249.38]) by smtp-relay.gmail.com with ESMTPS id m18-20020a819c12000000b0060aa4f76b47sm91676ywa.44.2024.03.23.19.39.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 Mar 2024 19:39:53 -0700 (PDT) X-Relaying-Domain: proxyid.net From: Marth64 To: ffmpeg-devel@ffmpeg.org Date: Sat, 23 Mar 2024 21:39:50 -0500 Message-Id: <20240324023950.1420321-3-marth64@proxyid.net> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240324023950.1420321-1-marth64@proxyid.net> References: <20240324023950.1420321-1-marth64@proxyid.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v4 2/2] avformat/ccaption_dec: use NTSC resolution base 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 Cc: Marth64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: l0tSAQNrjGHO Closed Captions are an NTSC concept, but the base resolution used for x/y calculation is the default PAL base in ASS encoder. This causes subtle positioning issues especially in 16:9 content. Use NTSC 240 TVL (360x240) as the base instead, and compensate the font size of the style. Update tests accordingly. Signed-off-by: Marth64 --- libavcodec/ccaption_dec.c | 34 ++-- tests/ref/fate/ffmpeg-fix_sub_duration | 14 +- .../fate/ffmpeg-fix_sub_duration_heartbeat | 16 +- tests/ref/fate/sub-cc | 10 +- tests/ref/fate/sub-cc-realtime | 22 +- tests/ref/fate/sub-cc-scte20 | 12 +- tests/ref/fate/sub-scc | 190 +++++++++--------- 7 files changed, 153 insertions(+), 145 deletions(-) diff --git a/libavcodec/ccaption_dec.c b/libavcodec/ccaption_dec.c index 0b01765ccf..5f32fd6e1f 100644 --- a/libavcodec/ccaption_dec.c +++ b/libavcodec/ccaption_dec.c @@ -27,8 +27,11 @@ #include "codec_internal.h" #include "libavutil/opt.h" -#define SCREEN_ROWS 15 -#define SCREEN_COLUMNS 32 +#define CC_PLAYRESX 360 +#define CC_PLAYRESY 240 +#define CC_FONT_SIZE 14 +#define SCREEN_ROWS 15 +#define SCREEN_COLUMNS 32 #define SET_FLAG(var, val) ( (var) |= ( 1 << (val)) ) #define UNSET_FLAG(var, val) ( (var) &= ~( 1 << (val)) ) @@ -289,15 +292,20 @@ static av_cold int init_decoder(AVCodecContext *avctx) ctx->bg_color = CCCOL_BLACK; ctx->rollup = 2; ctx->cursor_row = 10; - return ff_ass_subtitle_header(avctx, "Monospace", - ASS_DEFAULT_FONT_SIZE, - ASS_DEFAULT_COLOR, - ASS_DEFAULT_BACK_COLOR, - ASS_DEFAULT_BOLD, - ASS_DEFAULT_ITALIC, - ASS_DEFAULT_UNDERLINE, - 3, - ASS_DEFAULT_ALIGNMENT); + return ff_ass_subtitle_header_full(avctx, + CC_PLAYRESX, + CC_PLAYRESY, + "Monospace", + CC_FONT_SIZE, + ASS_DEFAULT_COLOR, + ASS_DEFAULT_COLOR, + ASS_DEFAULT_BACK_COLOR, + ASS_DEFAULT_BACK_COLOR, + ASS_DEFAULT_BOLD, + ASS_DEFAULT_ITALIC, + ASS_DEFAULT_UNDERLINE, + 3, + ASS_DEFAULT_ALIGNMENT); } static av_cold int close_decoder(AVCodecContext *avctx) @@ -497,8 +505,8 @@ static int capture_screen(CCaptionSubContext *ctx) while (row[j] == ' ' && charset[j] == CCSET_BASIC_AMERICAN && j < tab) j++; - x = ASS_DEFAULT_PLAYRESX * (0.1 + 0.0250 * j); - y = ASS_DEFAULT_PLAYRESY * (0.1 + 0.0533 * i); + x = CC_PLAYRESX * (0.1 + 0.0250 * j); + y = CC_PLAYRESY * (0.1 + 0.0533 * i); if (!seen_row) { av_bprintf(&ctx->buffer[bidx], "{\\an7}{\\pos(%d,%d)}", x, y); diff --git a/tests/ref/fate/ffmpeg-fix_sub_duration b/tests/ref/fate/ffmpeg-fix_sub_duration index 9cd36d4888..0e0ab27a8e 100644 --- a/tests/ref/fate/ffmpeg-fix_sub_duration +++ b/tests/ref/fate/ffmpeg-fix_sub_duration @@ -1,31 +1,31 @@ 1 00:00:00,968 --> 00:00:01,168 -{\an7}( +{\an7}( 2 00:00:01,168 --> 00:00:01,368 -{\an7}( inaudibl +{\an7}( inaudibl 3 00:00:01,368 --> 00:00:01,568 -{\an7}( inaudible radio chat +{\an7}( inaudible radio chat 4 00:00:01,568 --> 00:00:03,103 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) 5 00:00:03,103 --> 00:00:03,303 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) >> 6 00:00:03,303 --> 00:00:03,503 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) >> Safety rema 7 00:00:03,504 --> 00:00:03,704 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) >> Safety remains our numb diff --git a/tests/ref/fate/ffmpeg-fix_sub_duration_heartbeat b/tests/ref/fate/ffmpeg-fix_sub_duration_heartbeat index 3a3ec96637..5c18c1eb97 100644 --- a/tests/ref/fate/ffmpeg-fix_sub_duration_heartbeat +++ b/tests/ref/fate/ffmpeg-fix_sub_duration_heartbeat @@ -1,35 +1,35 @@ 1 00:00:00,968 --> 00:00:01,168 -{\an7}( +{\an7}( 2 00:00:01,168 --> 00:00:01,368 -{\an7}( inaudibl +{\an7}( inaudibl 3 00:00:01,368 --> 00:00:01,568 -{\an7}( inaudible radio chat +{\an7}( inaudible radio chat 4 00:00:01,568 --> 00:00:02,002 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) 5 00:00:02,002 --> 00:00:03,103 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) 6 00:00:03,103 --> 00:00:03,303 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) >> 7 00:00:03,303 --> 00:00:03,503 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) >> Safety rema 8 00:00:03,504 --> 00:00:03,704 -{\an7}( inaudible radio chatter ) +{\an7}( inaudible radio chatter ) >> Safety remains our numb diff --git a/tests/ref/fate/sub-cc b/tests/ref/fate/sub-cc index d4ab974c2f..c6bd3cfbfd 100644 --- a/tests/ref/fate/sub-cc +++ b/tests/ref/fate/sub-cc @@ -1,16 +1,16 @@ [Script Info] ; Script generated by FFmpeg/Lavc ScriptType: v4.00+ -PlayResX: 384 -PlayResY: 288 +PlayResX: 360 +PlayResY: 240 ScaledBorderAndShadow: yes YCbCr Matrix: None [V4+ Styles] Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding -Style: Default,Monospace,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 +Style: Default,Monospace,14,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text -Dialogue: 0,0:00:00.83,0:00:02.97,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudible radio chatter{\i0} ) -Dialogue: 0,0:00:02.97,0:00:04.34,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our number one +Dialogue: 0,0:00:00.83,0:00:02.97,Default,,0,0,0,,{\an7}{\pos(36,36)}({\i1} inaudible radio chatter{\i0} ) +Dialogue: 0,0:00:02.97,0:00:04.34,Default,,0,0,0,,{\an7}{\pos(36,24)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our number one diff --git a/tests/ref/fate/sub-cc-realtime b/tests/ref/fate/sub-cc-realtime index da06307221..734acaa713 100644 --- a/tests/ref/fate/sub-cc-realtime +++ b/tests/ref/fate/sub-cc-realtime @@ -1,22 +1,22 @@ [Script Info] ; Script generated by FFmpeg/Lavc ScriptType: v4.00+ -PlayResX: 384 -PlayResY: 288 +PlayResX: 360 +PlayResY: 240 ScaledBorderAndShadow: yes YCbCr Matrix: None [V4+ Styles] Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding -Style: Default,Monospace,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 +Style: Default,Monospace,14,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text -Dialogue: 0,0:00:00.97,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}( -Dialogue: 0,0:00:01.17,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudibl -Dialogue: 0,0:00:01.37,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudible radio chat -Dialogue: 0,0:00:01.57,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,44)}({\i1} inaudible radio chatter{\i0} ) -Dialogue: 0,0:00:03.10,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> -Dialogue: 0,0:00:03.30,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety rema -Dialogue: 0,0:00:03.50,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our numb -Dialogue: 0,0:00:03.70,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(38,28)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our number one +Dialogue: 0,0:00:00.97,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,36)}( +Dialogue: 0,0:00:01.17,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,36)}({\i1} inaudibl +Dialogue: 0,0:00:01.37,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,36)}({\i1} inaudible radio chat +Dialogue: 0,0:00:01.57,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,36)}({\i1} inaudible radio chatter{\i0} ) +Dialogue: 0,0:00:03.10,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,24)}({\i1} inaudible radio chatter{\i0} )\N>> +Dialogue: 0,0:00:03.30,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,24)}({\i1} inaudible radio chatter{\i0} )\N>> Safety rema +Dialogue: 0,0:00:03.50,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,24)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our numb +Dialogue: 0,0:00:03.70,9:59:59.99,Default,,0,0,0,,{\an7}{\pos(36,24)}({\i1} inaudible radio chatter{\i0} )\N>> Safety remains our number one diff --git a/tests/ref/fate/sub-cc-scte20 b/tests/ref/fate/sub-cc-scte20 index 09fa3fb330..2c33d0d282 100644 --- a/tests/ref/fate/sub-cc-scte20 +++ b/tests/ref/fate/sub-cc-scte20 @@ -1,17 +1,17 @@ [Script Info] ; Script generated by FFmpeg/Lavc ScriptType: v4.00+ -PlayResX: 384 -PlayResY: 288 +PlayResX: 360 +PlayResY: 240 ScaledBorderAndShadow: yes YCbCr Matrix: None [V4+ Styles] Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding -Style: Default,Monospace,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 +Style: Default,Monospace,14,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text -Dialogue: 0,0:00:00.00,0:00:01.44,Default,,0,0,0,,{\an7}{\pos(48,182)}BESIDES THE -Dialogue: 0,0:00:01.43,0:00:03.93,Default,,0,0,0,,{\an7}{\pos(38,166)}\hBESIDES THE \NSPENDING AND THIS, IS THAT CAR -Dialogue: 0,0:00:03.94,0:00:06.31,Default,,0,0,0,,{\an7}{\pos(38,182)}SPENDING AND THIS, IS THAT CAR \NMANUFACTURERS ARE ABOUT AS +Dialogue: 0,0:00:00.00,0:00:01.44,Default,,0,0,0,,{\an7}{\pos(45,151)}BESIDES THE +Dialogue: 0,0:00:01.43,0:00:03.93,Default,,0,0,0,,{\an7}{\pos(36,139)}\hBESIDES THE \NSPENDING AND THIS, IS THAT CAR +Dialogue: 0,0:00:03.94,0:00:06.31,Default,,0,0,0,,{\an7}{\pos(36,151)}SPENDING AND THIS, IS THAT CAR \NMANUFACTURERS ARE ABOUT AS diff --git a/tests/ref/fate/sub-scc b/tests/ref/fate/sub-scc index d29d6ff485..2910450231 100644 --- a/tests/ref/fate/sub-scc +++ b/tests/ref/fate/sub-scc @@ -1,106 +1,106 @@ [Script Info] ; Script generated by FFmpeg/Lavc ScriptType: v4.00+ -PlayResX: 384 -PlayResY: 288 +PlayResX: 360 +PlayResY: 240 ScaledBorderAndShadow: yes YCbCr Matrix: None [V4+ Styles] Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding -Style: Default,Monospace,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 +Style: Default,Monospace,14,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,1 [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text -Dialogue: 0,0:00:-2.-47,0:00:00.70,Default,,0,0,0,,{\an7}{\pos(76,228)}WE HAVE FOUND A WITCH !\NMAY WE BURN HER ? -Dialogue: 0,0:00:00.69,0:00:03.29,Default,,0,0,0,,{\an7}{\pos(115,228)}[ Crowd ]\NBURN HER ! BURN HER ! -Dialogue: 0,0:00:03.30,0:00:07.07,Default,,0,0,0,,{\an7}{\pos(38,197)}HOW DO YOU KNOW\NSHE IS A WITCH ?\NSHE LOOKS LIKE ONE ! -Dialogue: 0,0:00:07.07,0:00:09.27,Default,,0,0,0,,{\an7}{\pos(192,228)}[ Shouting\N\h\hAffirmations ] -Dialogue: 0,0:00:09.26,0:00:11.06,Default,,0,0,0,,{\an7}{\pos(38,243)}BRING HER FORWARD. -Dialogue: 0,0:00:11.07,0:00:14.27,Default,,0,0,0,,{\an7}{\pos(115,228)}I’M NOT A WITCH.\N\hI’M{\i1} NOT{\i0} A WITCH. -Dialogue: 0,0:00:14.26,0:00:16.03,Default,,0,0,0,,{\an7}{\pos(38,228)}BUT YOU ARE DRESSED\NAS ONE. -Dialogue: 0,0:00:16.03,0:00:19.03,Default,,0,0,0,,{\an7}{\pos(76,197)}THEY DRESSED ME UP\NLIKE THIS.\N\h\h\h\h\h\h\h\hNO ! WE DIDN’T ! -Dialogue: 0,0:00:19.03,0:00:22.95,Default,,0,0,0,,{\an7}{\pos(115,228)}AND THIS ISN’T MY NOSE.\NIT’S A FALSE ONE. -Dialogue: 0,0:00:25.30,0:00:28.43,Default,,0,0,0,,{\an7}{\pos(76,197)}WELL ?\N\h\h\h\h\h\h\h\hWELL, WE DID\N\h\h\h\h\h\h\h\hDO THE NOSE. -Dialogue: 0,0:00:28.43,0:00:30.07,Default,,0,0,0,,{\an7}{\pos(76,197)}THE NOSE ?\N\h\h\h\h\h\h\h\hAND THE HAT. -Dialogue: 0,0:00:30.07,0:00:35.50,Default,,0,0,0,,{\an7}{\pos(115,197)}BUT SHE IS A WITCH.\NYEAH ! BURN HER !\NBURN HER ! BURN HER ! -Dialogue: 0,0:00:35.50,0:00:38.47,Default,,0,0,0,,{\an7}{\pos(76,213)}- DID YOU DRESS HER UP\N\h\hLIKE THIS ?\N- NO ! -Dialogue: 0,0:00:38.46,0:00:39.86,Default,,0,0,0,,{\an7}{\pos(192,197)}\h\h\h\h\h\h\h\hNO !\NNO !\N\h\h\h\hNO ! -Dialogue: 0,0:00:39.86,0:00:41.63,Default,,0,0,0,,{\an7}{\pos(153,228)}YES. YES.\NYEAH, A BIT. -Dialogue: 0,0:00:41.63,0:00:44.83,Default,,0,0,0,,{\an7}{\pos(153,197)}\h\h\h\h\h\h\h\hA BIT.\N\h\h\h\h\h\h\h\h\hA BIT.\NSHE HAS GOT A WART. -Dialogue: 0,0:00:44.83,0:00:47.04,Default,,0,0,0,,{\an7}{\pos(38,228)}WHAT MAKES YOU THINK\NSHE IS A WITCH ? -Dialogue: 0,0:00:47.03,0:00:49.53,Default,,0,0,0,,{\an7}{\pos(115,228)}WELL, SHE TURNED ME\NINTO A NEWT ! -Dialogue: 0,0:00:49.53,0:00:52.30,Default,,0,0,0,,{\an7}{\pos(76,243)}A NEWT ? -Dialogue: 0,0:00:55.46,0:00:57.39,Default,,0,0,0,,{\an7}{\pos(115,243)}I GOT BETTER. -Dialogue: 0,0:00:57.40,0:00:58.90,Default,,0,0,0,,{\an7}{\pos(153,243)}BURN HER ANYWAY ! -Dialogue: 0,0:00:58.89,0:01:01.03,Default,,0,0,0,,{\an7}{\pos(76,197)}BURN HER !\N\h\h\h\h\h\h\h\hBURN HER !\N\h\h\h\h\h\h\h\hCRACKLE, CRACKLE ! -Dialogue: 0,0:01:01.03,0:01:04.00,Default,,0,0,0,,{\an7}{\pos(38,197)}\h\h\h\h[ Shouting\N\h\h\h\h\h\hContinues ]\NQUIET. QUIET. -Dialogue: 0,0:01:04.00,0:01:05.43,Default,,0,0,0,,{\an7}{\pos(38,228)}QUIET !\NQUIET ! -Dialogue: 0,0:01:05.43,0:01:09.13,Default,,0,0,0,,{\an7}{\pos(38,228)}THERE ARE WAYS OF TELLING\NWHETHER SHE IS A WITCH. -Dialogue: 0,0:01:09.13,0:01:10.96,Default,,0,0,0,,{\an7}{\pos(38,228)}ARE THERE ?\NWHAT ARE THEY ? -Dialogue: 0,0:01:10.96,0:01:13.30,Default,,0,0,0,,{\an7}{\pos(38,197)}TELL US !\NTELL US !\N\h\h\h\hDO THEY HURT ? -Dialogue: 0,0:01:13.30,0:01:16.23,Default,,0,0,0,,{\an7}{\pos(38,228)}TELL ME,\NWHAT DO YOU DO WITH WITCHES ? -Dialogue: 0,0:01:16.23,0:01:19.20,Default,,0,0,0,,{\an7}{\pos(76,213)}\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM !\N\h\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM UP !\NBURN ! -Dialogue: 0,0:01:19.20,0:01:22.33,Default,,0,0,0,,{\an7}{\pos(38,228)}AND WHAT DO YOU BURN,\NAPART FROM WITCHES ? -Dialogue: 0,0:01:22.33,0:01:24.59,Default,,0,0,0,,{\an7}{\pos(38,197)}MORE WITCHES !\NSHH ! -Dialogue: 0,0:01:24.59,0:01:25.62,Default,,0,0,0,,{\an7}{\pos(192,243)}WOOD ! -Dialogue: 0,0:01:25.63,0:01:29.33,Default,,0,0,0,,{\an7}{\pos(38,228)}SO,\NWHY DO WITCHES BURN ? -Dialogue: 0,0:01:32.69,0:01:35.03,Default,,0,0,0,,{\an7}{\pos(192,243)}B-- -Dialogue: 0,0:01:39.13,0:01:42.46,Default,,0,0,0,,{\an7}{\pos(76,213)}- ’CAUSE THEY’RE\N\h\hMADE OF W-- WOOD ?\N- GOOD ! -Dialogue: 0,0:01:42.46,0:01:44.00,Default,,0,0,0,,{\an7}{\pos(192,213)}OH, YEAH.\N[ Murmuring ] -Dialogue: 0,0:01:44.00,0:01:48.50,Default,,0,0,0,,{\an7}{\pos(38,213)}SO, HOW DO WE TELL\NWHETHER SHE\NIS MADE OF WOOD ? -Dialogue: 0,0:01:48.50,0:01:50.10,Default,,0,0,0,,{\an7}{\pos(153,228)}BUILD A BRIDGE\NOUT OF HER ! -Dialogue: 0,0:01:50.10,0:01:54.13,Default,,0,0,0,,{\an7}{\pos(38,228)}AH, BUT CAN YOU NOT ALSO\NMAKE BRIDGES OUT OF STONE ? -Dialogue: 0,0:01:54.13,0:01:57.26,Default,,0,0,0,,{\an7}{\pos(76,197)}OH, YEAH.\N\h\h\h\h\h\h\h\hOH, YEAH.\N\h\h\h\h\h\h\h\hTRUE. UH-- -Dialogue: 0,0:01:57.26,0:01:59.72,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}DOES WOOD\NSINK IN WATER ? -Dialogue: 0,0:01:59.73,0:02:02.17,Default,,0,0,0,,{\an7}{\pos(76,197)}NO, NO.\N\h\h\h\h\h\h\h\hNO, IT FLOATS !\N\h\h\h\h\h\h\h\hIT FLOATS ! -Dialogue: 0,0:02:02.17,0:02:07.04,Default,,0,0,0,,{\an7}{\pos(76,197)}THROW HER INTO THE POND !\N\h\h\h\h\h\h\h\h[ All Shouting ] -Dialogue: 0,0:02:07.36,0:02:10.49,Default,,0,0,0,,{\an7}{\pos(38,228)}WHAT ALSO FLOATS\NIN WATER ? -Dialogue: 0,0:02:10.50,0:02:12.14,Default,,0,0,0,,{\an7}{\pos(76,197)}BREAD !\N\h\h\h\h\h\h\h\h\h\h\h\hAPPLES ! -Dialogue: 0,0:02:12.13,0:02:13.23,Default,,0,0,0,,{\an7}{\pos(76,243)}UH, VERY SMALL ROCKS. -Dialogue: 0,0:02:13.23,0:02:16.49,Default,,0,0,0,,{\an7}{\pos(86,228)}{\i1}- CIDER ! CHERRIES !\N{\i0}- UH, GRA-- GRAVY ! MUD ! -Dialogue: 0,0:02:16.50,0:02:18.76,Default,,0,0,0,,{\an7}{\pos(86,228)}- CHURCHES ! CHURCHES !\N{\i1}- LEAD ! LEAD ! -Dialogue: 0,0:02:18.76,0:02:22.30,Default,,0,0,0,,{\an7}{\pos(76,228)}- A DUCK !\N- [ Crowd Gasps, Murmurs ] -Dialogue: 0,0:02:22.30,0:02:24.63,Default,,0,0,0,,{\an7}{\pos(115,243)}EXACTLY ! -Dialogue: 0,0:02:25.36,0:02:27.59,Default,,0,0,0,,{\an7}{\pos(76,243)}SO, LOGICALLY-- -Dialogue: 0,0:02:27.59,0:02:29.76,Default,,0,0,0,,{\an7}{\pos(192,243)}IF... SHE... -Dialogue: 0,0:02:29.76,0:02:33.56,Default,,0,0,0,,{\an7}{\pos(192,213)}WEIGHS...\NTHE SAME\NAS A DUCK... -Dialogue: 0,0:02:34.40,0:02:36.50,Default,,0,0,0,,{\an7}{\pos(153,243)}SHE’S MADE OF WOOD ! -Dialogue: 0,0:02:36.50,0:02:38.47,Default,,0,0,0,,{\an7}{\pos(38,243)}AND THEREFORE ? -Dialogue: 0,0:02:39.50,0:02:42.17,Default,,0,0,0,,{\an7}{\pos(38,228)}- A WITCH !\N{\i1}- [ All ] A WITCH ! A WITCH ! -Dialogue: 0,0:02:42.17,0:02:44.07,Default,,0,0,0,,{\an7}{\pos(76,243)}[ Shouting Continues ] -Dialogue: 0,0:02:44.07,0:02:45.76,Default,,0,0,0,,{\an7}{\pos(192,213)}HERE’S A DUCK !\N[ Quacking ] -Dialogue: 0,0:02:45.76,0:02:49.79,Default,,0,0,0,,{\an7}{\pos(76,213)}VERY GOOD.\NWE SHALL USE\NMY LARGEST SCALES. -Dialogue: 0,0:02:49.79,0:02:52.72,Default,,0,0,0,,{\an7}{\pos(76,243)}[ Shouting Continues ] -Dialogue: 0,0:02:52.73,0:02:55.17,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN !\N\hBURN THE WITCH ! -Dialogue: 0,0:02:55.17,0:02:57.63,Default,,0,0,0,,{\an7}{\pos(153,228)}BURN HER !\N\hBURN THE WITCH ! -Dialogue: 0,0:02:57.63,0:03:01.63,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN HER !\N\hBURN HER ! BURN HER ! -Dialogue: 0,0:03:01.63,0:03:04.14,Default,,0,0,0,,{\an7}{\pos(115,228)}BURN HER !\N\hBURN HER ! -Dialogue: 0,0:03:04.13,0:03:06.59,Default,,0,0,0,,{\an7}{\pos(230,228)}BURN HER !\N\hBURN HER ! -Dialogue: 0,0:03:06.59,0:03:08.00,Default,,0,0,0,,{\an7}{\pos(201,243)}{\i1}[ Man Grunts ] -Dialogue: 0,0:03:08.00,0:03:14.30,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}RIGHT !\NREMOVE THE SUPPORTS ! -Dialogue: 0,0:03:17.07,0:03:19.17,Default,,0,0,0,,{\an7}{\pos(38,197)}A WITCH !\NA WITCH ! -Dialogue: 0,0:03:19.17,0:03:20.04,Default,,0,0,0,,{\an7}{\pos(76,243)}IT’S A FAIR COP. -Dialogue: 0,0:03:20.03,0:03:25.29,Default,,0,0,0,,{\an7}{\pos(38,213)}- BURN HER !\N- [ Crowd Continues Shouting ]\NBURN HER ! BURN HER ! -Dialogue: 0,0:03:28.86,0:03:32.73,Default,,0,0,0,,{\an7}{\pos(38,213)}WHO ARE YOU,\NWHO ARE SO WISE\NIN THE WAYS OF SCIENCE ? -Dialogue: 0,0:03:32.73,0:03:35.76,Default,,0,0,0,,{\an7}{\pos(153,228)}I AM ARTHUR,\NKING OF THE BRITONS. -Dialogue: 0,0:03:35.76,0:03:36.96,Default,,0,0,0,,{\an7}{\pos(76,243)}MY LIEGE ! -Dialogue: 0,0:03:36.96,0:03:40.37,Default,,0,0,0,,{\an7}{\pos(115,213)}GOOD SIR KNIGHT,\NWILL YOU COME WITH ME\NTO CAMELOT... -Dialogue: 0,0:03:40.36,0:03:43.39,Default,,0,0,0,,{\an7}{\pos(153,228)}AND JOIN US\NAT THE ROUND TABLE ? -Dialogue: 0,0:03:43.40,0:03:45.53,Default,,0,0,0,,{\an7}{\pos(38,228)}MY LIEGE,\NI WOULD BE HONORED ! -Dialogue: 0,0:03:45.53,0:03:48.70,Default,,0,0,0,,{\an7}{\pos(38,197)}\h\h\h\h\h\h\h\h\h\h\h\hWHAT IS YOUR NAME ?\NBEDEVERE, MY LIEGE. -Dialogue: 0,0:03:48.69,0:03:52.49,Default,,0,0,0,,{\an7}{\pos(163,228)}THEN I DUB YOU\N{\i1}SIR{\i0} BEDEVERE, -Dialogue: 0,0:03:52.50,0:03:54.86,Default,,0,0,0,,{\an7}{\pos(153,228)}KNIGHT\NOF THE ROUND TABLE. -Dialogue: 0,0:03:54.86,0:03:56.76,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}[ Narrator ]\NTHE WISE SIR BEDEVERE... -Dialogue: 0,0:03:56.76,0:03:59.69,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WAS THE FIRST TO JOIN\NKING ARTHUR’S KNIGHTS. -Dialogue: 0,0:03:59.69,0:04:03.26,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}BUT OTHER ILLUSTRIOUS NAMES\NWERE SOON TO FOLLOW: -Dialogue: 0,0:04:03.26,0:04:06.03,Default,,0,0,0,,{\an7}{\pos(38,243)}{\i1}SIR LAUNCELOT THE BRAVE; -Dialogue: 0,0:04:06.03,0:04:07.95,Default,,0,0,0,,{\an7}{\pos(38,243)}{\i1}SIR GALAHAD THE PURE; -Dialogue: 0,0:04:07.96,0:04:11.27,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}AND SIR ROBIN\NTHE NOT-QUITE-SO-BRAVE-\NAS-SIR-LAUNCELOT, -Dialogue: 0,0:04:11.26,0:04:13.92,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WHO HAD NEARLY FOUGHT\NTHE DRAGON OF ANGNOR, -Dialogue: 0,0:04:13.92,0:04:16.89,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}WHO HAD NEARLY\NSTOOD UP TO THE VICIOUS\NCHICKEN OF BRISTOL... -Dialogue: 0,0:04:16.89,0:04:20.73,Default,,0,0,0,,{\an7}{\pos(38,213)}{\i1}AND WHO HAD\NPERSONALLY WET HIMSELF\NAT THE BATTLE OF BADON HILL; -Dialogue: 0,0:04:20.73,0:04:25.43,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}AND THE APTLY NAMED\NSIR NOT-APPEARING-IN-THIS-FILM. -Dialogue: 0,0:04:25.59,0:04:29.03,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}TOGETHER THEY FORMED A BAND\NWHOSE NAMES AND DEEDS... -Dialogue: 0,0:04:29.03,0:04:31.72,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}WERE TO BE RETOLD\NTHROUGHOUT THE CENTURIES. -Dialogue: 0,0:04:31.73,0:04:33.86,Default,,0,0,0,,{\an7}{\pos(38,228)}{\i1}THE KNIGHTS\NOF THE ROUND TABLE. +Dialogue: 0,0:00:-2.-47,0:00:00.70,Default,,0,0,0,,{\an7}{\pos(72,190)}WE HAVE FOUND A WITCH !\NMAY WE BURN HER ? +Dialogue: 0,0:00:00.69,0:00:03.29,Default,,0,0,0,,{\an7}{\pos(108,190)}[ Crowd ]\NBURN HER ! BURN HER ! +Dialogue: 0,0:00:03.30,0:00:07.07,Default,,0,0,0,,{\an7}{\pos(36,164)}HOW DO YOU KNOW\NSHE IS A WITCH ?\NSHE LOOKS LIKE ONE ! +Dialogue: 0,0:00:07.07,0:00:09.27,Default,,0,0,0,,{\an7}{\pos(180,190)}[ Shouting\N\h\hAffirmations ] +Dialogue: 0,0:00:09.26,0:00:11.06,Default,,0,0,0,,{\an7}{\pos(36,203)}BRING HER FORWARD. +Dialogue: 0,0:00:11.07,0:00:14.27,Default,,0,0,0,,{\an7}{\pos(108,190)}I’M NOT A WITCH.\N\hI’M{\i1} NOT{\i0} A WITCH. +Dialogue: 0,0:00:14.26,0:00:16.03,Default,,0,0,0,,{\an7}{\pos(36,190)}BUT YOU ARE DRESSED\NAS ONE. +Dialogue: 0,0:00:16.03,0:00:19.03,Default,,0,0,0,,{\an7}{\pos(72,164)}THEY DRESSED ME UP\NLIKE THIS.\N\h\h\h\h\h\h\h\hNO ! WE DIDN’T ! +Dialogue: 0,0:00:19.03,0:00:22.95,Default,,0,0,0,,{\an7}{\pos(108,190)}AND THIS ISN’T MY NOSE.\NIT’S A FALSE ONE. +Dialogue: 0,0:00:25.30,0:00:28.43,Default,,0,0,0,,{\an7}{\pos(72,164)}WELL ?\N\h\h\h\h\h\h\h\hWELL, WE DID\N\h\h\h\h\h\h\h\hDO THE NOSE. +Dialogue: 0,0:00:28.43,0:00:30.07,Default,,0,0,0,,{\an7}{\pos(72,164)}THE NOSE ?\N\h\h\h\h\h\h\h\hAND THE HAT. +Dialogue: 0,0:00:30.07,0:00:35.50,Default,,0,0,0,,{\an7}{\pos(108,164)}BUT SHE IS A WITCH.\NYEAH ! BURN HER !\NBURN HER ! BURN HER ! +Dialogue: 0,0:00:35.50,0:00:38.47,Default,,0,0,0,,{\an7}{\pos(72,177)}- DID YOU DRESS HER UP\N\h\hLIKE THIS ?\N- NO ! +Dialogue: 0,0:00:38.46,0:00:39.86,Default,,0,0,0,,{\an7}{\pos(180,164)}\h\h\h\h\h\h\h\hNO !\NNO !\N\h\h\h\hNO ! +Dialogue: 0,0:00:39.86,0:00:41.63,Default,,0,0,0,,{\an7}{\pos(144,190)}YES. YES.\NYEAH, A BIT. +Dialogue: 0,0:00:41.63,0:00:44.83,Default,,0,0,0,,{\an7}{\pos(144,164)}\h\h\h\h\h\h\h\hA BIT.\N\h\h\h\h\h\h\h\h\hA BIT.\NSHE HAS GOT A WART. +Dialogue: 0,0:00:44.83,0:00:47.04,Default,,0,0,0,,{\an7}{\pos(36,190)}WHAT MAKES YOU THINK\NSHE IS A WITCH ? +Dialogue: 0,0:00:47.03,0:00:49.53,Default,,0,0,0,,{\an7}{\pos(108,190)}WELL, SHE TURNED ME\NINTO A NEWT ! +Dialogue: 0,0:00:49.53,0:00:52.30,Default,,0,0,0,,{\an7}{\pos(72,203)}A NEWT ? +Dialogue: 0,0:00:55.46,0:00:57.39,Default,,0,0,0,,{\an7}{\pos(108,203)}I GOT BETTER. +Dialogue: 0,0:00:57.40,0:00:58.90,Default,,0,0,0,,{\an7}{\pos(144,203)}BURN HER ANYWAY ! +Dialogue: 0,0:00:58.89,0:01:01.03,Default,,0,0,0,,{\an7}{\pos(72,164)}BURN HER !\N\h\h\h\h\h\h\h\hBURN HER !\N\h\h\h\h\h\h\h\hCRACKLE, CRACKLE ! +Dialogue: 0,0:01:01.03,0:01:04.00,Default,,0,0,0,,{\an7}{\pos(36,164)}\h\h\h\h[ Shouting\N\h\h\h\h\h\hContinues ]\NQUIET. QUIET. +Dialogue: 0,0:01:04.00,0:01:05.43,Default,,0,0,0,,{\an7}{\pos(36,190)}QUIET !\NQUIET ! +Dialogue: 0,0:01:05.43,0:01:09.13,Default,,0,0,0,,{\an7}{\pos(36,190)}THERE ARE WAYS OF TELLING\NWHETHER SHE IS A WITCH. +Dialogue: 0,0:01:09.13,0:01:10.96,Default,,0,0,0,,{\an7}{\pos(36,190)}ARE THERE ?\NWHAT ARE THEY ? +Dialogue: 0,0:01:10.96,0:01:13.30,Default,,0,0,0,,{\an7}{\pos(36,164)}TELL US !\NTELL US !\N\h\h\h\hDO THEY HURT ? +Dialogue: 0,0:01:13.30,0:01:16.23,Default,,0,0,0,,{\an7}{\pos(36,190)}TELL ME,\NWHAT DO YOU DO WITH WITCHES ? +Dialogue: 0,0:01:16.23,0:01:19.20,Default,,0,0,0,,{\an7}{\pos(72,177)}\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM !\N\h\h\h\h\h\h\h\h\h\h\h\h\hBURN THEM UP !\NBURN ! +Dialogue: 0,0:01:19.20,0:01:22.33,Default,,0,0,0,,{\an7}{\pos(36,190)}AND WHAT DO YOU BURN,\NAPART FROM WITCHES ? +Dialogue: 0,0:01:22.33,0:01:24.59,Default,,0,0,0,,{\an7}{\pos(36,164)}MORE WITCHES !\NSHH ! +Dialogue: 0,0:01:24.59,0:01:25.62,Default,,0,0,0,,{\an7}{\pos(180,203)}WOOD ! +Dialogue: 0,0:01:25.63,0:01:29.33,Default,,0,0,0,,{\an7}{\pos(36,190)}SO,\NWHY DO WITCHES BURN ? +Dialogue: 0,0:01:32.69,0:01:35.03,Default,,0,0,0,,{\an7}{\pos(180,203)}B-- +Dialogue: 0,0:01:39.13,0:01:42.46,Default,,0,0,0,,{\an7}{\pos(72,177)}- ’CAUSE THEY’RE\N\h\hMADE OF W-- WOOD ?\N- GOOD ! +Dialogue: 0,0:01:42.46,0:01:44.00,Default,,0,0,0,,{\an7}{\pos(180,177)}OH, YEAH.\N[ Murmuring ] +Dialogue: 0,0:01:44.00,0:01:48.50,Default,,0,0,0,,{\an7}{\pos(36,177)}SO, HOW DO WE TELL\NWHETHER SHE\NIS MADE OF WOOD ? +Dialogue: 0,0:01:48.50,0:01:50.10,Default,,0,0,0,,{\an7}{\pos(144,190)}BUILD A BRIDGE\NOUT OF HER ! +Dialogue: 0,0:01:50.10,0:01:54.13,Default,,0,0,0,,{\an7}{\pos(36,190)}AH, BUT CAN YOU NOT ALSO\NMAKE BRIDGES OUT OF STONE ? +Dialogue: 0,0:01:54.13,0:01:57.26,Default,,0,0,0,,{\an7}{\pos(72,164)}OH, YEAH.\N\h\h\h\h\h\h\h\hOH, YEAH.\N\h\h\h\h\h\h\h\hTRUE. UH-- +Dialogue: 0,0:01:57.26,0:01:59.72,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}DOES WOOD\NSINK IN WATER ? +Dialogue: 0,0:01:59.73,0:02:02.17,Default,,0,0,0,,{\an7}{\pos(72,164)}NO, NO.\N\h\h\h\h\h\h\h\hNO, IT FLOATS !\N\h\h\h\h\h\h\h\hIT FLOATS ! +Dialogue: 0,0:02:02.17,0:02:07.04,Default,,0,0,0,,{\an7}{\pos(72,164)}THROW HER INTO THE POND !\N\h\h\h\h\h\h\h\h[ All Shouting ] +Dialogue: 0,0:02:07.36,0:02:10.49,Default,,0,0,0,,{\an7}{\pos(36,190)}WHAT ALSO FLOATS\NIN WATER ? +Dialogue: 0,0:02:10.50,0:02:12.14,Default,,0,0,0,,{\an7}{\pos(72,164)}BREAD !\N\h\h\h\h\h\h\h\h\h\h\h\hAPPLES ! +Dialogue: 0,0:02:12.13,0:02:13.23,Default,,0,0,0,,{\an7}{\pos(72,203)}UH, VERY SMALL ROCKS. +Dialogue: 0,0:02:13.23,0:02:16.49,Default,,0,0,0,,{\an7}{\pos(81,190)}{\i1}- CIDER ! CHERRIES !\N{\i0}- UH, GRA-- GRAVY ! MUD ! +Dialogue: 0,0:02:16.50,0:02:18.76,Default,,0,0,0,,{\an7}{\pos(81,190)}- CHURCHES ! CHURCHES !\N{\i1}- LEAD ! LEAD ! +Dialogue: 0,0:02:18.76,0:02:22.30,Default,,0,0,0,,{\an7}{\pos(72,190)}- A DUCK !\N- [ Crowd Gasps, Murmurs ] +Dialogue: 0,0:02:22.30,0:02:24.63,Default,,0,0,0,,{\an7}{\pos(108,203)}EXACTLY ! +Dialogue: 0,0:02:25.36,0:02:27.59,Default,,0,0,0,,{\an7}{\pos(72,203)}SO, LOGICALLY-- +Dialogue: 0,0:02:27.59,0:02:29.76,Default,,0,0,0,,{\an7}{\pos(180,203)}IF... SHE... +Dialogue: 0,0:02:29.76,0:02:33.56,Default,,0,0,0,,{\an7}{\pos(180,177)}WEIGHS...\NTHE SAME\NAS A DUCK... +Dialogue: 0,0:02:34.40,0:02:36.50,Default,,0,0,0,,{\an7}{\pos(144,203)}SHE’S MADE OF WOOD ! +Dialogue: 0,0:02:36.50,0:02:38.47,Default,,0,0,0,,{\an7}{\pos(36,203)}AND THEREFORE ? +Dialogue: 0,0:02:39.50,0:02:42.17,Default,,0,0,0,,{\an7}{\pos(36,190)}- A WITCH !\N{\i1}- [ All ] A WITCH ! A WITCH ! +Dialogue: 0,0:02:42.17,0:02:44.07,Default,,0,0,0,,{\an7}{\pos(72,203)}[ Shouting Continues ] +Dialogue: 0,0:02:44.07,0:02:45.76,Default,,0,0,0,,{\an7}{\pos(180,177)}HERE’S A DUCK !\N[ Quacking ] +Dialogue: 0,0:02:45.76,0:02:49.79,Default,,0,0,0,,{\an7}{\pos(72,177)}VERY GOOD.\NWE SHALL USE\NMY LARGEST SCALES. +Dialogue: 0,0:02:49.79,0:02:52.72,Default,,0,0,0,,{\an7}{\pos(72,203)}[ Shouting Continues ] +Dialogue: 0,0:02:52.73,0:02:55.17,Default,,0,0,0,,{\an7}{\pos(108,190)}BURN !\N\hBURN THE WITCH ! +Dialogue: 0,0:02:55.17,0:02:57.63,Default,,0,0,0,,{\an7}{\pos(144,190)}BURN HER !\N\hBURN THE WITCH ! +Dialogue: 0,0:02:57.63,0:03:01.63,Default,,0,0,0,,{\an7}{\pos(108,190)}BURN HER !\N\hBURN HER ! BURN HER ! +Dialogue: 0,0:03:01.63,0:03:04.14,Default,,0,0,0,,{\an7}{\pos(108,190)}BURN HER !\N\hBURN HER ! +Dialogue: 0,0:03:04.13,0:03:06.59,Default,,0,0,0,,{\an7}{\pos(216,190)}BURN HER !\N\hBURN HER ! +Dialogue: 0,0:03:06.59,0:03:08.00,Default,,0,0,0,,{\an7}{\pos(189,203)}{\i1}[ Man Grunts ] +Dialogue: 0,0:03:08.00,0:03:14.30,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}RIGHT !\NREMOVE THE SUPPORTS ! +Dialogue: 0,0:03:17.07,0:03:19.17,Default,,0,0,0,,{\an7}{\pos(36,164)}A WITCH !\NA WITCH ! +Dialogue: 0,0:03:19.17,0:03:20.04,Default,,0,0,0,,{\an7}{\pos(72,203)}IT’S A FAIR COP. +Dialogue: 0,0:03:20.03,0:03:25.29,Default,,0,0,0,,{\an7}{\pos(36,177)}- BURN HER !\N- [ Crowd Continues Shouting ]\NBURN HER ! BURN HER ! +Dialogue: 0,0:03:28.86,0:03:32.73,Default,,0,0,0,,{\an7}{\pos(36,177)}WHO ARE YOU,\NWHO ARE SO WISE\NIN THE WAYS OF SCIENCE ? +Dialogue: 0,0:03:32.73,0:03:35.76,Default,,0,0,0,,{\an7}{\pos(144,190)}I AM ARTHUR,\NKING OF THE BRITONS. +Dialogue: 0,0:03:35.76,0:03:36.96,Default,,0,0,0,,{\an7}{\pos(72,203)}MY LIEGE ! +Dialogue: 0,0:03:36.96,0:03:40.37,Default,,0,0,0,,{\an7}{\pos(108,177)}GOOD SIR KNIGHT,\NWILL YOU COME WITH ME\NTO CAMELOT... +Dialogue: 0,0:03:40.36,0:03:43.39,Default,,0,0,0,,{\an7}{\pos(144,190)}AND JOIN US\NAT THE ROUND TABLE ? +Dialogue: 0,0:03:43.40,0:03:45.53,Default,,0,0,0,,{\an7}{\pos(36,190)}MY LIEGE,\NI WOULD BE HONORED ! +Dialogue: 0,0:03:45.53,0:03:48.70,Default,,0,0,0,,{\an7}{\pos(36,164)}\h\h\h\h\h\h\h\h\h\h\h\hWHAT IS YOUR NAME ?\NBEDEVERE, MY LIEGE. +Dialogue: 0,0:03:48.69,0:03:52.49,Default,,0,0,0,,{\an7}{\pos(153,190)}THEN I DUB YOU\N{\i1}SIR{\i0} BEDEVERE, +Dialogue: 0,0:03:52.50,0:03:54.86,Default,,0,0,0,,{\an7}{\pos(144,190)}KNIGHT\NOF THE ROUND TABLE. +Dialogue: 0,0:03:54.86,0:03:56.76,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}[ Narrator ]\NTHE WISE SIR BEDEVERE... +Dialogue: 0,0:03:56.76,0:03:59.69,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}WAS THE FIRST TO JOIN\NKING ARTHUR’S KNIGHTS. +Dialogue: 0,0:03:59.69,0:04:03.26,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}BUT OTHER ILLUSTRIOUS NAMES\NWERE SOON TO FOLLOW: +Dialogue: 0,0:04:03.26,0:04:06.03,Default,,0,0,0,,{\an7}{\pos(36,203)}{\i1}SIR LAUNCELOT THE BRAVE; +Dialogue: 0,0:04:06.03,0:04:07.95,Default,,0,0,0,,{\an7}{\pos(36,203)}{\i1}SIR GALAHAD THE PURE; +Dialogue: 0,0:04:07.96,0:04:11.27,Default,,0,0,0,,{\an7}{\pos(36,177)}{\i1}AND SIR ROBIN\NTHE NOT-QUITE-SO-BRAVE-\NAS-SIR-LAUNCELOT, +Dialogue: 0,0:04:11.26,0:04:13.92,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}WHO HAD NEARLY FOUGHT\NTHE DRAGON OF ANGNOR, +Dialogue: 0,0:04:13.92,0:04:16.89,Default,,0,0,0,,{\an7}{\pos(36,177)}{\i1}WHO HAD NEARLY\NSTOOD UP TO THE VICIOUS\NCHICKEN OF BRISTOL... +Dialogue: 0,0:04:16.89,0:04:20.73,Default,,0,0,0,,{\an7}{\pos(36,177)}{\i1}AND WHO HAD\NPERSONALLY WET HIMSELF\NAT THE BATTLE OF BADON HILL; +Dialogue: 0,0:04:20.73,0:04:25.43,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}AND THE APTLY NAMED\NSIR NOT-APPEARING-IN-THIS-FILM. +Dialogue: 0,0:04:25.59,0:04:29.03,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}TOGETHER THEY FORMED A BAND\NWHOSE NAMES AND DEEDS... +Dialogue: 0,0:04:29.03,0:04:31.72,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}WERE TO BE RETOLD\NTHROUGHOUT THE CENTURIES. +Dialogue: 0,0:04:31.73,0:04:33.86,Default,,0,0,0,,{\an7}{\pos(36,190)}{\i1}THE KNIGHTS\NOF THE ROUND TABLE.