字幕一覧(字幕リスト)は、古いようで一番先進の動画構成方法!

「字幕一覧」は本屋の立ち読み

現状では、世界のどこかの人が何かのデバイスで、このブログを見て、その中の動画を視聴した時に、言葉がわからないという問題にぶつかります。ですから、そのブログの中に、言葉をわかるようにする「手掛かり」を配置しておきたいと思います。

ただその「手掛かり」と言っても、なかなか簡単ではありません。
条件が複雑過ぎるからです。

現在、条件がどうマチマチであるか眺めてみます。まず、デバイスとしてポピュラーなものをピックアップすると、WindowsPC,Mac,iPhone,iPad,Android携帯、Androidタブレット、以上になるでしょうし、OSでポピュラーなものは、Windows,Mac,iPad/iPhone,Androidになるでしょうし、ブラウザでポピュラーなものは、Chrome,Edge,Safariになるでしょうし、さらに動画の配信側は、YouTube,Vimeo,WordPress,Dropboxなどクラウドサービス、自宅サーバーなど。。
こんな複雑な条件の中で、今、こうしたブログさらにその中の動画などが配信されているわけですね。ですから、全てのユーザーに、「言葉がわかるようにする」のは無理と言っていいでしょう。

結論が遅れました。

それほど、手の込んだ工夫ではありません。

動画の下に、タイムコードあるいは番号が付いた「字幕一覧」を配置すべし。
具体的には以下です。

字幕一覧(クリック)

(00:00:00) Synology NAS HDD「お下がり」交換リレー
(00:00:11) これが自宅にあるNASとWebサーバーです。
(00:00:23) DS220+ですけどね、最近容量不足ということで困ってました。
(00:00:30) そこで大容量に変えることにしました。
(00:00:34) ストレージマネージャーにこういう警告が出ています。
(00:00:39) 二巡すると全部が入れ替わるようになります。
(00:00:46) 事前にハードディスクとSATAスタンドを買っておきました。
(00:00:53) それでは作業を具体的に見ていきましょう。NASの蓋を外します。
(00:01:04) ディスク1とディスク2がありますが、同じ容量なんで2から抜くことにします。
(00:01:14) 引き抜きます。
(00:01:21) Seagateの6TBです。
(00:01:39) 引き抜いたあと警告音が鳴ります。
(00:01:51) 右側が今外した6TBです。左が12TBの新品です。
(00:02:05) ハードディスク取り付けパーツを付け替えます。
(00:02:21) まあ滅多にやらない作業なんで手際が悪いです。
(00:02:45) 12TBの方にはめます。
(00:03:42) やっとできました。私が不器用なだけです。誰でも簡単にできます。
(00:03:58) 差し込みます。
(00:04:30) ディスク2のライトが点灯しました。装着まではOKです。
(00:04:39) 「劣化」と表示されています。新しいドライブを装着済みなので、今すぐ修復をクリックします。
(00:04:54) 修復中となります。最初に初期化されます。
(00:05:03) それでは3番目の作業で、Webサーバーの3TBの入れ替えをします。
(00:05:25) Webサーバーの蓋を外します。
(00:05:31) ここにディスク1とディスク2があります。同じ容量なのでどちらから抜いても構いません。
(00:05:40) 2から抜いてみます。
(00:05:53) ホットスワップ機能がついているもんですから、ハードディスクを抜いてもサーバーは中断しないです。そのまま動作します。
(00:06:18) ハードディスク取り付けパーツを、お下がりの6TBへ付け替えます。
(00:06:38) どうも不器用です。
(00:07:01) 6TBの方へ付けます。
(00:07:11) どうも手元の小さいものがよく見えなくなってきてますね、年のせいで。
(00:08:06) はい、できました。
(00:08:23) 6TBを差し込みます。
(00:08:47) ディスク2が点灯しました。
(00:08:57) お下がりの6TBは差し込み済みなので、今すぐ修復を選びます。
(00:09:06) ディスク2を選びます。
(00:09:13) お下がりなのでデータは入ってるんですね。まあ消していいか聞いてきますので、「いいえ」ではなく「はい」を選びます。
(00:09:33) 修復中になります。
(00:09:41) 一巡目の最後の作業ですね。お下がりの3TBをSATAスタンドに取り付けます。
(00:09:55) 私が買ったのはAlxumというスタンドです。
(00:10:20) それではAのソケットに差し込みます。
(00:11:06) Bも空いています。
(00:11:23) まあ、硬いですな。
(00:11:33) SATAスタンドのハードディスクはexFATでフォーマットします。
(00:11:41) これで一巡目は終わりですけど、NASサーバー、Webサーバーともに修復順調に進んでます。
(00:11:53) TimeMachineの設定については割愛しますね。
(00:11:58) まあちょっと気分転換です。
(00:12:04) 家の近くにですね、タヌキが出ていました。
(00:12:10) まあ本当に犬ですね。犬そっくりです。走り方も犬。
(00:12:20) 二巡目ですけど、やることは一巡目と同じです。
(00:12:29) もう結果からお見せします。SATAスタンドに2個のハードディスクが刺さってます。
(00:12:43) 最後にマネージャーを確認しますと、NAS、Webサーバーともに修復中、進んでます。
(00:12:53) 以上ですね、一通りハードディスク交換リレー終わりました。ありがとうございます。

このような折りたたみの字幕一覧を用意しておくと、ブログの翻訳をすれば、この部分も翻訳されます。(1)(2)などの番号でもいいですが、動画の中の位置が分かりません。タイムコードなら動画のバーを近くに持っていけます。YouTubeなどで字幕の自動翻訳もありますが、速く進み過ぎて目が追いつけません。だから、自分のペースで追いたいです。逆に、急いでいるので動画の要点をサラッと知りたいということもあります。いわば「本屋の立ち読み」です。音声の早送りより、はるかに生産性は高いです。10分の動画でも字幕一覧をみれば30秒で概略がわかります

AIの解読力ですが、動画を理解することもできるようになってきてはいます。しかし多大なリソース消費の問題もあり正確性も今一歩のところがあります。Geminiに質問してみましたが、動画に字幕ファイルが別添されている形が、AIとすると一番ありがたい形式、と言う返答でした。

いずれにせよ字幕一覧形式は非常に優れています。翻訳した字幕一覧を自分のメモに貼り付けることも出来ます。字幕が邪魔なら、動画の字幕を非表示にして、この字幕一覧を折り畳めばいいです。


ちなみに、上の折りたたみ字幕一覧を、左上のGoogle翻訳で試してみてください。翻訳の途中から改行がされない現象が生ずる場合があります。これはChromeからChromeの翻訳機能を使っても同じ現象になるでしょう。
次に、AppleやWindowsの翻訳を試してみてください。ブラウザから利用できると思います。それを使うと、正しく改行されるはずです

Macで使う場合、Vimeoの動画に表示される字幕の翻訳は、Google翻訳では翻訳不可ですが、Apple翻訳ではVimeoの動画に表示される字幕を翻訳してくれます(動画無音)。iPad,iPhoneではそれが難しいのでWordPress固定ページに字幕一覧を読み込んで工夫することにします(動画有音)。

Apple翻訳で気づいた欠点の一つは、WordPress動画プレーヤーで表示される字幕について翻訳しようとする時パカパカと点滅状態になるため(動画無音)字幕は非表示にせざるを得ない点があります(2024.2月現在)。

なお、WindowsのEdgeにより、vimeoのプレーヤーを直接に呼び出す場合ですが、AppleのSafariと同じく、字幕は直接に翻訳されます(動画無音)。

総じて、各社の字幕や翻訳の対応は、まだまだバラバラな状況と言っていいです。そこへ群がるように、各社がAI生成画像、音楽などのサービスをくっつけてきているというのが現状です。

そこで、振り回されないように、字幕一覧を配置して、Apple/Windows翻訳とGoogle翻訳の両方を使い分けるようにしよう。というのが、この投稿の主張です。


<字幕作成に関するオリジナルスクリプト一覧表>

スクリプト名説明補足
srtからvttを生成する動画(無音)
新たに作ったVTTファイルに対して、
(1) 先頭行に文字列”WEBVTT”を含む行を挿入する。
(2) 2行目に空白の行を挿入する。
(3) 3行目以降から、読み込んだデータを書き込む。
(4) “–>” がある行は、行の中の”,”を”.”に置き換える。
※元のファイルを残します。
AppleScriptクイックアクション
vttからsrtを生成する兼srtの連番を付け直す(renumbered.srt)動画(無音)
新たに作ったSRTファイルに対して、
(1) 文字列”WEBVTT”のある行は削除する。
(2) “–>” がある行は、行の中の”.”を”,”に置き換える。
(3)連番を1から振り直す。
※元のファイルを残します。新しいファイル名は、”元のファイル名_renumbered.srt”となります。
AppleScriptクイックアクション
字幕文章に時刻を挿入する(timeadded.vtt)動画(無音)
文字列の先頭に、開始時刻(00:01:23)を追記する。私はカモメ→(00:01:23)私はカモメ※元のファイルを残します。_timeadded.vttが新しく作られます。この字幕文章の先頭に時刻情報を入れる目的は、翻訳された外国語の示す動画の位置を分かりやすくするためです。
AppleScriptクイックアクション
字幕文章の時刻を削除する(timeremoved.vtt)上の「vttからタイムありvttを生成する」を取り消しにします。※元のファイル_timeadded.vttは残します。新しいファイルは、_timeadded_timeremoved .vttになります。AppleScriptクイックアクション
字幕vttから字幕一覧txtを生成する動画内の字幕は、多くの場合、翻訳されないか動作不安定になるが、字幕一覧txtが動画の下にあれば、翻訳が可能になります。タイムコードの位置にジャンプする_listJ.txtおよびジャンプしない_list.txtを生成します。※元のファイルは残します。新しいファイルは、_list.txtになります。なお既存の場合は上書きします。AppleScriptクイックアクション
vttから字幕一覧用txtを生成する動画(無音)
字幕一覧用txtは、動画の外側に配置するので、Google翻訳される。→「字幕vttから字幕一覧txtを生成する」へ集約
AppleScriptクイックアクション
DropboxリンクをWordPress用に変換する(クリップボード保存)動画(無音)
Dropboxのメディアを外部リンクするために、URLに指定された変更を加える。URLの記述の中の “www.dropbox.com”は、そのまま使うようにとりあえず判断した。
AppleScriptクイックアクション
★WordPress動画貼り付けコード生成(クリップボード保存)動画(無音)
WordPressのカスタムhtmlへ貼り付ける。初期画面用画像、動画本体、字幕のファイルを予め用意。→マイライブラリの運用に切り替え。
AppleScriptアプリケーション
字幕一覧用txtからカスタムhtmlを生成(クリップボード保存)動画(無音) 動画(無音)
字幕一覧用txtを表示するボックスレイアウトを作る。Google翻訳の表示にて改行がうまくいかない状態がある。→「字幕vttから字幕一覧txtを生成する」へ集約
AppleScriptクイックアクション
vimeo_auto_generated_captions.vttの修正をするVimeoの字幕自動生成からダウンロードしたファイルの、文字列の空白を削除する。vttのまま。※直接上書きします。何度でもダウンロードできるため。AppleScriptクイックアクション
★Vimeo登録用htmlコード生成方法1:WordPressで、カスタムhtmlブロックへ登録して、パターンを作成しておく。
方法2:Stream deckなどで文字列として登録しておく。
方法3:Appleクイックアクションで登録しておく。など。→マイライブラリの運用に切り替え。
字幕作成とは直接に関係ありませんが、迷子にならないように。
vttの字幕時刻の秒ずらしを行う。(timeshifted.vtt)動画(無音)
動画の途中で、挿入や削除を行うと、字幕ファイルの時刻にズレが生じます。挿入や削除を行った以降の動画をコピーして、その分の秒ずらしを行うことができます。但し、文章の頭に時刻情報を入れてある(_timeadded.vtt)については、エラーになります。一度、上の「字幕文章の時刻を削除する」を実行した後で、ここを実行してください
※元のファイルを残します。新しいファイル名は”元のファイル名_timeshited.vtt”となります。
AppleScriptクイックアクション

ポイント解説

1 その他

WindowsPCでのこのブログにリンクした動画の再生についてです。Dropboxの動画についてですが、Dropboxの動画は、ブログに貼り付けた場合は、そのまま素直にストリーミング再生されます。しかし、URLをリンクで再生しようとした場合、ダウンロードしてからの再生を求められます。それはとても面倒なこと。その点も勘案して、Google翻訳アイコン、動画、字幕一覧の各場所をテンプレートにして、動画については、Vimeo、Dropbox、WordPressサーバー、YouTubeなどを貼り付けられるようにして、WordPressの固定ページで動画ライブラリーとしてひとまとめにするように改善中です。

以上