web-dev-qa-db-ja.com

オープンソースのコマンドライン字幕コンバーター

オープンソース、コマンドライン、字幕コンバータ-できればLinuxはありますか?

20
Johnas

あなたはFFmpegを試すことができます(素晴らしいツール!):

$ ffmpeg -i file.srt file.vtt
26
SebMa

字幕を変換するために使用する非常にシンプルで効果的なワンライナー:

for i in *.ass ; do ffmpeg -i "$i" "$i.srt" ; done

必要に応じて、asssrtを変更するだけです。

9
RASG

字幕Perlスイスアーミーナイフ (ページの最後までスクロールします)。

ここ より多くのオプションを見つけることができます。

また、 mplayer/mencoder には、動作する可能性のあるいくつかのdumpXXXsubオプションがあります。私はこれを試したことはありませんが、男を読んで、それはうまくいくはずです。例:

-dumpmpsub (MPlayer only)
              Convert the given subtitle (specified with the -sub option) to MPlayer's subtitle format, MPsub.  Creates a dump.mpsub file in the current directory.
7
Sunny

オープンソースプログラム Subtitle Edit にはコマンドラインコンバーターがあり、WindowsとLinuxの両方で使用できます。

構文SubtitleEdit /convert "pattern" "name-of-format-without-spaces"

例1SubtitleEdit /convert sub1.srt sami
Result:sub1.srtをsub1.subからSAMI形式に変換します

例2SubtitleEdit /convert *.srt adobeencore
Result:すべての.srtファイルをAdobe Encore形式に変換します

Linuxの場合、コマンドラインは少し長くする必要があります…

構文mono SubtitleEdit.exe /convert "pattern" "name-of-format-without-spaces"

…しかし、スクリプトで簡単にラップできます。

3
Johanz

一部のプレーヤー(Googleドライブビデオプレーヤーなど)は、以下から生成された.srtが気に入らないことがわかりました。

ffmpeg -i subtitles.ass <blah>.srt

または:

SubtitleEdit /convert subtitles.ass subrip

だが:

ffmpeg -i subtitles.ass -codec:s text subtitles.srt

...私のためのトリックをしました。

1
Jim Sung

正確に変換したいのは何ですか?それが字幕フォーマットの間にある場合、それはあなたが話しているフォーマットに依存します。ビットマップベースのものは、OCRをテキスト形式に変換する必要があり、通常、OCRの精度を確認するために常にユーザー入力が必要です。

すべてのテキスト形式の場合、 Jubler または Aegisub を使用できます

1
Shevek

sedを使用してファイル名を変更する

for i in ./*.ass ; do ffmpeg -i "$i" "$( echo "$i"|sed 's/\.ass//g' ).srt" ; done

変換後に.srtファイルを削除する場合は、後でrmコマンドを追加するだけです。

for i in ./*.ass ; do ffmpeg -i "$i" "$( echo "$i"|sed 's/\.ass//g' ).srt"  &&  rm -f "$i"  ; done
0
mdaliyan
#!/bin/bash

file="*.srt"                     # Find file
ffmpeg -i "$file" "${file%.*}.vtt"   # Convert file  
rm "$file"                         # Remove file .srt from your dir

forループでこのプログラムを使用してさらにファイルを変換したい場合。

0
Manoj kumar

Windowsバッチファイルでは、これを使用してフォルダー内のすべてのテキスト字幕ファイルをSRTに変換できます

for %%i in (*.vtt .ass .ssa) do ffmpeg -i "%%i" "%%~ni.srt"
0
Na Nonthasen