わずかな表示(太字、色)がある可能性がある時間に合わせて端末にテキストを表示します。 「.srt字幕再生」とも呼ばれる

わずかな表示(太字、色)がある可能性がある時間に合わせて端末にテキストを表示します。 「.srt字幕再生」とも呼ばれる

メディアプレーヤーとは別に、言語学習をより簡単にするためにスクロールテキスト端末に別の字幕を表示したい場合、他の視聴者よりも多い場合、または別の字幕が必要な場合は、基本的にスタンドアロンの字幕プレーヤーを使用したいと思います。

私が表示したい字幕形式はsrt、単純なテキストベースの形式:

<indexNr>                    # Starts at 1, then 2, 3, ...
<startTime> --> <endtime>    # Both times in format "hh:mm:ss,ms"
<body1>                      # Subtitle text Line
<bodyN>                      # Optional following lines
<emptyLine>                  # Empty line as separator

例:

1
00:00:02,623 --> 00:00:05,054
U&L StackExchange Studios present
♫ Nice Tune playing ♫

2
00:00:06,823 --> 00:00:08,414
From the <b>A Quick Hack</b> series

3
00:00:10,123 --> 00:00:23,054
Viewing Srt Files with Perl:

~/bin/playSRT.sh:(私は今何してるの?)

#!/bin/sh
perl -lane 'BEGIN{$counter=1;}
if(@F[1]=~ /-->/) {
  @t=split(":",(split(",",@F[0]))[0]);
  $s=@t[0]*3600+@t[1]*60+@t[2] ;
  #print "Waiting until $s s @t[0] @t[1] @t[2]";
  sleep($s-$last); $last=$s;
} else {if (@F[0] == $counter) {$counter++} else {print }}
' "$1"

それから実行しましたが、うまくplaySRT.sh MyFile.srtいきましたが、一時停止/再開がぎこちなくてRW / FFが不可能ななどの欠点がありました。

より良いソリューションを探しています。検索してみると、パッケージマネージャに適したプログラムはありません。この時点で最良のオプションは、上記の内容を最適化/補強して、再生/一時停止(+/-5秒)のキーボード入力を読むことです。この問題に関するヘルプや「下部に小さな分割がある2つの字幕」に関する新しいガイドラインを探しています。

関連情報