Skip to content

Instantly share code, notes, and snippets.

@kylemcdonald
Created October 12, 2023 19:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kylemcdonald/b56ecc2ec6edba482bd01308b8d91af0 to your computer and use it in GitHub Desktop.
Save kylemcdonald/b56ecc2ec6edba482bd01308b8d91af0 to your computer and use it in GitHub Desktop.
Script for converting Google Spreadsheet to Vimeo captions and uploading them automatically.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"When reviewing this upload, do not use kylemcdonald vimeo account. Only vakataumako."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import datetime\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"doc_id = ''\n",
"doc_url = f'https://docs.google.com/spreadsheets/d/{doc_id}/export?format=tsv&id={doc_id}&gid='\n",
"!rm -rf tsv && mkdir tsv && cd tsv && \\\n",
" curl -Lso \"WTV Captions and Subtitles - Trailer.tsv\" \"{doc_url}624692279\" ; \\\n",
" curl -Lso \"WTV Captions and Subtitles - 1_ Our Vaka.tsv\" \"{doc_url}0\" ; \\\n",
" curl -Lso \"WTV Captions and Subtitles - 2_ Our Moana.tsv\" \"{doc_url}1416813958\""
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"def read_tsv(fn):\n",
" with open(fn) as f:\n",
" lines = f.read().splitlines()\n",
" header = lines[0].split('\\t')\n",
" data = {key:[] for key in header}\n",
" for line in lines[1:]:\n",
" parts = line.split('\\t')\n",
" if len(parts) != len(header):\n",
" print(parts)\n",
" raise Exception('Line has incorrect number of columns')\n",
" for key, value in zip(header, parts):\n",
" if value == 'TRUE':\n",
" value = True\n",
" if value == 'FALSE':\n",
" value = False\n",
" data[key].append(value)\n",
" return data"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"import requests\n",
"import os\n",
"\n",
"class VimeoAPI:\n",
" def __init__(self, access_token):\n",
" self.base_headers = {\n",
" 'Authorization': 'bearer ' + access_token,\n",
" 'Accept': 'application/vnd.vimeo.*+json;version=3.4' \n",
" }\n",
" \n",
" def get_texttracks_uri(self, video_id):\n",
" url = f'https://api.vimeo.com/videos/{video_id}'\n",
" r = requests.get(url, headers=self.base_headers)\n",
" return r.json()['metadata']['connections']['texttracks']['uri']\n",
" \n",
" def list_languages(self):\n",
" url = 'https://api.vimeo.com/languages?filter=texttracks'\n",
" r = requests.get(url, headers=self.base_headers)\n",
" return r.json()['data']\n",
" \n",
" def list_texttracks(self, video_id):\n",
" url = f'https://api.vimeo.com/videos/{video_id}/texttracks'\n",
" r = requests.get(url, headers=self.base_headers)\n",
" return r.json()['data']\n",
" \n",
" def delete_texttrack_uri(self, texttrack_uri):\n",
" url = f'https://api.vimeo.com{texttrack_uri}'\n",
" r = requests.delete(url, headers=self.base_headers)\n",
" \n",
" def delete_texttrack(self, video_id, language, track_type):\n",
" existing = self.list_texttracks(video_id)\n",
" for item in existing:\n",
" if item['language'] == language and item['type'] == track_type:\n",
" self.delete_texttrack_uri(item['uri'])\n",
" \n",
" def create_texttrack(self, video_id, language, track_type, fn):\n",
" if track_type not in ('subtitles', 'captions'):\n",
" raise Exception('Invalid track type')\n",
" self.delete_texttrack(video_id, language, track_type)\n",
" texttracks_uri = self.get_texttracks_uri(video_id)\n",
" headers = self.base_headers\n",
" headers['Content-type'] = 'application/json'\n",
" body = {\n",
" 'language': language,\n",
" 'type': track_type,\n",
" 'name': os.path.basename(fn)\n",
" }\n",
" url = f'https://api.vimeo.com{texttracks_uri}'\n",
" r = requests.post(url, headers=headers, json=body)\n",
" upload_link = r.json()['link']\n",
" texttrack_uri = r.json()['uri']\n",
" with open(fn) as f:\n",
" body = f.read().encode('utf-8')\n",
" r = requests.put(upload_link, headers=self.base_headers, data=body)\n",
" \n",
"api = None"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"# api.list_languages()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"def timestamp_to_seconds(t):\n",
" hours, minutes, seconds = t.split(':')\n",
" hours = int(hours)\n",
" minutes = int(minutes)\n",
" seconds = float(seconds)\n",
" return ((hours * 60) + minutes) * 60 + seconds\n",
"\n",
"def seconds_to_timestamp(seconds):\n",
" minutes = int(seconds // 60)\n",
" seconds -= minutes * 60\n",
" hours = int(minutes // 60)\n",
" return f'{hours:02d}:{minutes:02d}:{seconds:06.3f}'\n",
" \n",
"def convert_timebase(timestamp, timebase_conversion):\n",
" seconds = timestamp_to_seconds(timestamp)\n",
" seconds *= timebase_conversion\n",
" return seconds_to_timestamp(seconds), seconds"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"tsv/WTV Captions and Subtitles - Trailer.tsv\n",
" converted/2023-10-12 Trailer (English subtitles).vtt\n",
" converted/2023-10-12 Trailer (English captions).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (English cc captions).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (English cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (German subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (German cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Spanish subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Spanish cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Polish subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Polish cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (French subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (French cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Taiwanese Mandarin subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Taiwanese Mandarin cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Vietnamese subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Vietnamese cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Solomons Pijin subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
" converted/2023-10-12 Trailer (Solomons Pijin cc subtitles captions onscreen).vtt\n",
" skipping upload: 371272611\n",
" skipping upload: 400410839\n",
" skipping upload: 400410893\n",
"tsv/WTV Captions and Subtitles - 1_ Our Vaka.tsv\n",
" converted/2023-10-12 1_ Our Vaka (English subtitles).vtt\n",
" converted/2023-10-12 1_ Our Vaka (English captions).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (English cc captions).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (English cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (German subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (German cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Spanish subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Spanish cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Polish subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Polish cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (French subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (French cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Vietnamese subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Vietnamese cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Solomons Pijin subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
" converted/2023-10-12 1_ Our Vaka (Solomons Pijin cc subtitles captions onscreen).vtt\n",
" skipping upload: 403052537\n",
" skipping upload: 354543081\n",
"tsv/WTV Captions and Subtitles - 2_ Our Moana.tsv\n",
" converted/2023-10-12 2_ Our Moana (English subtitles).vtt\n",
" converted/2023-10-12 2_ Our Moana (English captions).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (English cc captions).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (English cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (German subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (German cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Spanish subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Spanish cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Polish subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Polish cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (French subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (French cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Vietnamese subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Vietnamese cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Solomons Pijin subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
" converted/2023-10-12 2_ Our Moana (Solomons Pijin cc subtitles captions onscreen).vtt\n",
" skipping upload: 408172723\n",
" skipping upload: 354552946\n",
"done\n"
]
}
],
"source": [
"!rm -rf converted\n",
"!mkdir converted\n",
"\n",
"from pathlib import Path\n",
"\n",
"timebase_conversion = 1.0\n",
"# timebase_conversion = 1/1.001\n",
"\n",
"trans = ['subtitles', 'captions', 'onscreen']\n",
"trans_cc = ['cc', 'subtitles', 'captions', 'onscreen']\n",
"exports = [\n",
" { 'language': 'English', 'code': 'en', 'includes': ['subtitles'], 'type': None },\n",
" { 'language': 'English', 'code': 'en', 'includes': ['captions'], 'type': 'subtitles'},\n",
" { 'language': 'English', 'code': 'en', 'includes': ['cc', 'captions'], 'type': 'captions'},\n",
" { 'language': 'English', 'code': 'en', 'includes': trans_cc, 'type': 'captions'},\n",
" \n",
" { 'language': 'German', 'code': 'de', 'includes': trans, 'type': 'subtitles' },\n",
" { 'language': 'German', 'code': 'de', 'includes': trans_cc, 'type': 'captions' },\n",
" { 'language': 'Spanish', 'code': 'es', 'includes': trans, 'type': 'subtitles' },\n",
" { 'language': 'Spanish', 'code': 'es', 'includes': trans_cc, 'type': 'captions' },\n",
" { 'language': 'Polish', 'code': 'pl', 'includes': trans, 'type': 'subtitles' },\n",
" { 'language': 'Polish', 'code': 'pl', 'includes': trans_cc, 'type': 'captions' },\n",
" { 'language': 'French', 'code': 'fr', 'includes': trans, 'type': 'subtitles' },\n",
" { 'language': 'French', 'code': 'fr', 'includes': trans_cc, 'type': 'captions' },\n",
"\n",
" { 'language': 'Taiwanese Mandarin', 'code': 'zh-TW', 'includes': trans, 'type': 'subtitles' },\n",
" { 'language': 'Taiwanese Mandarin', 'code': 'zh-TW', 'includes': trans_cc, 'type': 'captions' },\n",
" \n",
" { 'language': 'Vietnamese', 'code': 'vi', 'includes': trans, 'type': 'subtitles' },\n",
" { 'language': 'Vietnamese', 'code': 'vi', 'includes': trans_cc, 'type': 'captions' },\n",
" \n",
" # { 'language': 'Tahitian', 'code': 'mi', 'includes': trans, 'type': 'subtitles' },\n",
" # { 'language': 'Tahitian', 'code': 'mi', 'includes': trans_cc, 'type': 'captions' },\n",
" \n",
" { 'language': 'Solomons Pijin', 'code': 'pis', 'includes': trans, 'type': 'subtitles' },\n",
" { 'language': 'Solomons Pijin', 'code': 'pis', 'includes': trans_cc, 'type': 'captions' },\n",
"]\n",
"\n",
"video_ids = {\n",
" 'Trailer': [\n",
" 371272611, # 520 views, briefly on home page\n",
" 400410839, # our vaka trailer\n",
" 400410893, # our moana trailer\n",
" ],\n",
" '1_ Our Vaka': [\n",
" 403052537, # special access\n",
"# 400390721, # on demand\n",
" 354543081, # screener\n",
" ],\n",
" '2_ Our Moana': [\n",
" 408172723, # special access\n",
"# 400392287, # on demand\n",
" 354552946, # screener\n",
" ]\n",
"}\n",
"\n",
"diffs = []\n",
"lengths = []\n",
"date = datetime.datetime.now().date().isoformat()\n",
"for fn in Path('tsv').glob('*.tsv'):\n",
" print(fn)\n",
" df = read_tsv(fn)\n",
" stem = fn.stem.replace('WTV Captions and Subtitles - ', '')\n",
" \n",
" # skip options with no videos\n",
" if len(video_ids[stem]) == 0:\n",
" print(' skipping', stem)\n",
" continue\n",
"\n",
" for export in exports:\n",
" language = export['language']\n",
" includes = export['includes']\n",
" \n",
" # check there are no empty rows\n",
"# if np.sum([e == '' for e in df[language]]) > 0:\n",
"# continue\n",
" \n",
" description = language + ' ' + ' '.join(includes)\n",
" output_fn = f'converted/{date} {stem} ({description}).vtt'\n",
" print(' ' + output_fn)\n",
" keys = ['Start Time 23.98fps', 'End Time 23.98fps',\n",
" 'Start Time', 'End Time',\n",
" 'Align top', 'Subtitle', 'On-screen text', language]\n",
" fields = [df[key] for key in keys]\n",
" previous_end = None\n",
" with open(output_fn, 'w') as f:\n",
" f.write('WEBVTT\\n\\n')\n",
" for line in zip(*fields):\n",
" _, _, original_start_time, original_end_time, align_top, subtitle, onscreen, text = line\n",
" try:\n",
" original_start_seconds = timestamp_to_seconds(original_start_time)\n",
" original_end_seconds = timestamp_to_seconds(original_end_time)\n",
"\n",
" if previous_end is not None:\n",
" diff = original_start_seconds - previous_end\n",
" if diff < 0:\n",
" print(' overlap!\\t', original_start_time)\n",
" # elif diff < 0.099:\n",
" # print(' short delay\\t', original_start_time, f'{diff:0.2f}s')\n",
" diffs.append(diff)\n",
" previous_end = original_end_seconds\n",
"\n",
" length = original_end_seconds - original_start_seconds\n",
" lengths.append(length)\n",
" if length < 0:\n",
" print(' negative!\\t', original_start_time)\n",
" # if length > 8:\n",
" # print(' very long\\t', original_start_time, f'{length:0.2f}s')\n",
"\n",
" start_time = seconds_to_timestamp(original_start_seconds * timebase_conversion)\n",
" end_time = seconds_to_timestamp(original_end_seconds * timebase_conversion)\n",
"\n",
" if text == '':\n",
" continue\n",
" cc = text.startswith('[')\n",
" cc_ready = ('cc' in includes) and cc\n",
" subtitle_ready = ('subtitles' in includes) and subtitle\n",
" caption_ready = ('captions' in includes) and (not subtitle) and (not cc)\n",
" onscreen_ready = ('onscreen' in includes) and onscreen\n",
" if any((cc_ready, subtitle_ready, caption_ready, onscreen_ready)):\n",
" timing = f'{start_time} --> {end_time}'\n",
" # if align_top:\n",
" # timing += ' line:15%'\n",
" f.write(f'{timing}\\n{text}\\n\\n')\n",
" \n",
" except:\n",
" print('Error line:', line)\n",
" raise\n",
" \n",
" code = export['code']\n",
" track_type = export['type']\n",
" if track_type is None:\n",
" continue\n",
" \n",
" for video_id in video_ids[stem]:\n",
" if api is None:\n",
" print(' skipping upload:', video_id)\n",
" continue\n",
" api.create_texttrack(video_id, code, track_type, output_fn)\n",
" print(' uploading:', video_id)\n",
" \n",
"print('done')"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" adding: converted/ (stored 0%)\n",
" adding: converted/2021-05-30 2_ Our Moana (English subtitles).vtt (deflated 62%)\n",
" adding: converted/2021-05-30 1_ Our Vaka (English subtitles).vtt (deflated 60%)\n",
" adding: converted/2021-05-30 Trailer (English cc captions).vtt (deflated 55%)\n",
" adding: converted/2021-05-30 Trailer (English cc subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2021-05-30 Trailer (English captions).vtt (deflated 55%)\n",
" adding: converted/2021-05-30 2_ Our Moana (English cc captions).vtt (deflated 62%)\n",
" adding: converted/2021-05-30 Trailer (English subtitles).vtt (deflated 37%)\n",
" adding: converted/2021-05-30 2_ Our Moana (English cc subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2021-05-30 1_ Our Vaka (English cc captions).vtt (deflated 63%)\n",
" adding: converted/2021-05-30 1_ Our Vaka (English cc subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2021-05-30 2_ Our Moana (English captions).vtt (deflated 62%)\n",
" adding: converted/2021-05-30 1_ Our Vaka (English captions).vtt (deflated 62%)\n"
]
}
],
"source": [
"!zip -r captions-subtitles.zip converted"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"file being read: converted/2023-10-12 Trailer (English captions).vtt\n",
"\n",
"converted/2023-10-12 Trailer (English captions).srt\n",
"file created: converted/2023-10-12 Trailer (English captions).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (English subtitles).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (English subtitles).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (English subtitles).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Polish cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Polish cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Polish cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Vietnamese subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Vietnamese subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Vietnamese subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (German cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (German cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (German cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Polish subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Polish subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Polish subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (French cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (French cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (French cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Spanish cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Spanish cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Spanish cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Polish subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Polish subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Polish subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (English cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (English cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (English cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (English cc captions).vtt\n",
"\n",
"converted/2023-10-12 Trailer (English cc captions).srt\n",
"file created: converted/2023-10-12 Trailer (English cc captions).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (French cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (French cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (French cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Polish cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Polish cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Polish cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Polish subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Polish subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Polish subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (English cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (English cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (English cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Spanish cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Spanish cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Spanish cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (German cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (German cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (German cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (English subtitles).vtt\n",
"\n",
"converted/2023-10-12 Trailer (English subtitles).srt\n",
"file created: converted/2023-10-12 Trailer (English subtitles).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Spanish subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Spanish subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Spanish subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (English cc captions).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (English cc captions).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (English cc captions).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (German subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (German subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (German subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (French cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (French cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (French cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (German subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (German subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (German subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Vietnamese subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Vietnamese subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Vietnamese subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Solomons Pijin subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Solomons Pijin subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Solomons Pijin subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Vietnamese cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Vietnamese cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Vietnamese cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (French subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (French subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (French subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Spanish cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Spanish cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Spanish cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Taiwanese Mandarin subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Taiwanese Mandarin subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Taiwanese Mandarin subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Taiwanese Mandarin cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Taiwanese Mandarin cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Taiwanese Mandarin cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Spanish subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Spanish subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Spanish subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (English captions).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (English captions).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (English captions).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Solomons Pijin subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Solomons Pijin subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Solomons Pijin subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Vietnamese cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Vietnamese cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Vietnamese cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (English cc captions).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (English cc captions).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (English cc captions).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Solomons Pijin cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Solomons Pijin cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Solomons Pijin cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Solomons Pijin cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Solomons Pijin cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Solomons Pijin cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Spanish subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Spanish subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Spanish subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (German subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (German subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (German subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (Polish cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (Polish cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (Polish cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Solomons Pijin cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Solomons Pijin cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Solomons Pijin cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Vietnamese subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Vietnamese subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Vietnamese subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (German cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (German cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (German cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (Vietnamese cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (Vietnamese cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (Vietnamese cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (French subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (French subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (French subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 Trailer (English cc subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 Trailer (English cc subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 Trailer (English cc subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (English captions).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (English captions).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (English captions).srt\n",
"\n",
"file being read: converted/2023-10-12 2_ Our Moana (French subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 2_ Our Moana (French subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 2_ Our Moana (French subtitles captions onscreen).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (English subtitles).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (English subtitles).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (English subtitles).srt\n",
"\n",
"file being read: converted/2023-10-12 1_ Our Vaka (Solomons Pijin subtitles captions onscreen).vtt\n",
"\n",
"converted/2023-10-12 1_ Our Vaka (Solomons Pijin subtitles captions onscreen).srt\n",
"file created: converted/2023-10-12 1_ Our Vaka (Solomons Pijin subtitles captions onscreen).srt\n",
"\n",
" adding: converted/2023-10-12 1_ Our Vaka (English captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English cc captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English subtitles).srt (deflated 59%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (French cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (French subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (German cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (German subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Polish cc subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Polish subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Solomons Pijin cc subtitles captions onscreen).srt (deflated 64%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Solomons Pijin subtitles captions onscreen).srt (deflated 64%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Spanish cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Spanish subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin cc subtitles captions onscreen).srt (deflated 58%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin subtitles captions onscreen).srt (deflated 58%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Vietnamese cc subtitles captions onscreen).srt (deflated 66%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Vietnamese subtitles captions onscreen).srt (deflated 66%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English cc captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English subtitles).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (French cc subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (French subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (German cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (German subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Polish cc subtitles captions onscreen).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Polish subtitles captions onscreen).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Solomons Pijin cc subtitles captions onscreen).srt (deflated 65%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Solomons Pijin subtitles captions onscreen).srt (deflated 65%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Spanish cc subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Spanish subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin cc subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Vietnamese cc subtitles captions onscreen).srt (deflated 67%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Vietnamese subtitles captions onscreen).srt (deflated 67%)\n",
" adding: converted/2023-10-12 Trailer (English captions).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (English cc captions).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (English cc subtitles captions onscreen).srt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (English subtitles).srt (deflated 37%)\n",
" adding: converted/2023-10-12 Trailer (French cc subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (French subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (German cc subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (German subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (Polish cc subtitles captions onscreen).srt (deflated 52%)\n",
" adding: converted/2023-10-12 Trailer (Polish subtitles captions onscreen).srt (deflated 52%)\n",
" adding: converted/2023-10-12 Trailer (Solomons Pijin cc subtitles captions onscreen).srt (deflated 59%)\n",
" adding: converted/2023-10-12 Trailer (Solomons Pijin subtitles captions onscreen).srt (deflated 59%)\n",
" adding: converted/2023-10-12 Trailer (Spanish cc subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (Spanish subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (Taiwanese Mandarin cc subtitles captions onscreen).srt (deflated 49%)\n",
" adding: converted/2023-10-12 Trailer (Taiwanese Mandarin subtitles captions onscreen).srt (deflated 49%)\n",
" adding: converted/2023-10-12 Trailer (Vietnamese cc subtitles captions onscreen).srt (deflated 57%)\n",
" adding: converted/2023-10-12 Trailer (Vietnamese subtitles captions onscreen).srt (deflated 58%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English captions).vtt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English cc captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English cc captions).vtt (deflated 63%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English cc subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English subtitles).srt (deflated 59%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (English subtitles).vtt (deflated 60%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (French cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (French cc subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (French subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (French subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (German cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (German cc subtitles captions onscreen).vtt (deflated 63%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (German subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (German subtitles captions onscreen).vtt (deflated 63%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Polish cc subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Polish cc subtitles captions onscreen).vtt (deflated 61%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Polish subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Polish subtitles captions onscreen).vtt (deflated 61%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Solomons Pijin cc subtitles captions onscreen).srt (deflated 64%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Solomons Pijin cc subtitles captions onscreen).vtt (deflated 66%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Solomons Pijin subtitles captions onscreen).srt (deflated 64%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Solomons Pijin subtitles captions onscreen).vtt (deflated 66%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Spanish cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Spanish cc subtitles captions onscreen).vtt (deflated 63%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Spanish subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Spanish subtitles captions onscreen).vtt (deflated 63%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin cc subtitles captions onscreen).srt (deflated 58%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin cc subtitles captions onscreen).vtt (deflated 60%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin subtitles captions onscreen).srt (deflated 58%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Taiwanese Mandarin subtitles captions onscreen).vtt (deflated 60%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Vietnamese cc subtitles captions onscreen).srt (deflated 66%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Vietnamese cc subtitles captions onscreen).vtt (deflated 68%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Vietnamese subtitles captions onscreen).srt (deflated 66%)\n",
" adding: converted/2023-10-12 1_ Our Vaka (Vietnamese subtitles captions onscreen).vtt (deflated 68%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English captions).vtt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English cc captions).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English cc captions).vtt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English cc subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English subtitles).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (English subtitles).vtt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (French cc subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (French cc subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2023-10-12 2_ Our Moana (French subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (French subtitles captions onscreen).vtt (deflated 65%)\n",
" adding: converted/2023-10-12 2_ Our Moana (German cc subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (German cc subtitles captions onscreen).vtt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (German subtitles captions onscreen).srt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (German subtitles captions onscreen).vtt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Polish cc subtitles captions onscreen).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Polish cc subtitles captions onscreen).vtt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Polish subtitles captions onscreen).srt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Polish subtitles captions onscreen).vtt (deflated 62%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Solomons Pijin cc subtitles captions onscreen).srt (deflated 65%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Solomons Pijin cc subtitles captions onscreen).vtt (deflated 66%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Solomons Pijin subtitles captions onscreen).srt (deflated 65%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Solomons Pijin subtitles captions onscreen).vtt (deflated 66%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Spanish cc subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Spanish cc subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Spanish subtitles captions onscreen).srt (deflated 63%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Spanish subtitles captions onscreen).vtt (deflated 64%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin cc subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin cc subtitles captions onscreen).vtt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin subtitles captions onscreen).srt (deflated 60%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Taiwanese Mandarin subtitles captions onscreen).vtt (deflated 61%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Vietnamese cc subtitles captions onscreen).srt (deflated 67%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Vietnamese cc subtitles captions onscreen).vtt (deflated 69%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Vietnamese subtitles captions onscreen).srt (deflated 67%)\n",
" adding: converted/2023-10-12 2_ Our Moana (Vietnamese subtitles captions onscreen).vtt (deflated 69%)\n",
" adding: converted/2023-10-12 Trailer (English captions).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (English captions).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (English cc captions).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (English cc captions).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (English cc subtitles captions onscreen).srt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (English cc subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (English subtitles).srt (deflated 37%)\n",
" adding: converted/2023-10-12 Trailer (English subtitles).vtt (deflated 37%)\n",
" adding: converted/2023-10-12 Trailer (French cc subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (French cc subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (French subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (French subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (German cc subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (German cc subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (German subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (German subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (Polish cc subtitles captions onscreen).srt (deflated 52%)\n",
" adding: converted/2023-10-12 Trailer (Polish cc subtitles captions onscreen).vtt (deflated 53%)\n",
" adding: converted/2023-10-12 Trailer (Polish subtitles captions onscreen).srt (deflated 52%)\n",
" adding: converted/2023-10-12 Trailer (Polish subtitles captions onscreen).vtt (deflated 52%)\n",
" adding: converted/2023-10-12 Trailer (Solomons Pijin cc subtitles captions onscreen).srt (deflated 59%)\n",
" adding: converted/2023-10-12 Trailer (Solomons Pijin cc subtitles captions onscreen).vtt (deflated 60%)\n",
" adding: converted/2023-10-12 Trailer (Solomons Pijin subtitles captions onscreen).srt (deflated 59%)\n",
" adding: converted/2023-10-12 Trailer (Solomons Pijin subtitles captions onscreen).vtt (deflated 60%)\n",
" adding: converted/2023-10-12 Trailer (Spanish cc subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (Spanish cc subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (Spanish subtitles captions onscreen).srt (deflated 54%)\n",
" adding: converted/2023-10-12 Trailer (Spanish subtitles captions onscreen).vtt (deflated 55%)\n",
" adding: converted/2023-10-12 Trailer (Taiwanese Mandarin cc subtitles captions onscreen).srt (deflated 49%)\n",
" adding: converted/2023-10-12 Trailer (Taiwanese Mandarin cc subtitles captions onscreen).vtt (deflated 50%)\n",
" adding: converted/2023-10-12 Trailer (Taiwanese Mandarin subtitles captions onscreen).srt (deflated 49%)\n",
" adding: converted/2023-10-12 Trailer (Taiwanese Mandarin subtitles captions onscreen).vtt (deflated 50%)\n",
" adding: converted/2023-10-12 Trailer (Vietnamese cc subtitles captions onscreen).srt (deflated 57%)\n",
" adding: converted/2023-10-12 Trailer (Vietnamese cc subtitles captions onscreen).vtt (deflated 58%)\n",
" adding: converted/2023-10-12 Trailer (Vietnamese subtitles captions onscreen).srt (deflated 58%)\n",
" adding: converted/2023-10-12 Trailer (Vietnamese subtitles captions onscreen).vtt (deflated 58%)\n"
]
}
],
"source": [
"!python vtt_to_srt.py converted\n",
"!zip -r wtv-srt-{datetime.date.today().isoformat()}.zip converted/*.srt\n",
"!zip -r wtv-srt+vtt-{datetime.date.today().isoformat()}.zip converted/*"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [],
"source": [
"# for fn in Path('tsv').glob('*.tsv'):\n",
"# print(fn)\n",
"# df = read_tsv(fn) \n",
"# for start_time, end_time in zip(df['Start Time'], df['End Time']):\n",
"# start_time_converted,_ = convert_timebase(start_time, timebase_conversion)\n",
"# end_time_converted,_ = convert_timebase(end_time, timebase_conversion)\n",
"# print('\\t'.join((start_time, end_time, start_time_converted, end_time_converted)))"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"# !rm all_subs.zip\n",
"# !zip -r all_subs.zip converted/"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"image/png": {
"height": 248,
"width": 375
},
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.hist(lengths, bins=20, range=(0,10))\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.15"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment