bash
  • ffmpeg
  • 2017-05-07 10 views 0 likes 
    0

    私は短いビデオクリップに字幕を追加したいが、私の字幕は変数であり、ファイルではない。ffmpegファイルからではなく変数から字幕を追加する

    これを行う方法はありますか?ような何か:

    私も代わりのDrawText使用しようとしましたが、私の字幕をラップする必要があります(もちろん、ffmpegのは、ファイルを要求するように動作していない)

    ffmpeg -i input.mp4 -vf "subtitles='$title':force_style='Fontsize=24,PrimaryColour=&H0000ff&'" -c:a copy output.mp4 
    

    +0

    [期待](https://en.wikipedia.org/wiki/Expect)がありますか? – dawg

    +0

    @ dawg noしかし、私はそれをインストールすることができます。私はUbuntuを実行しています – Sulli

    答えて

    0

    私はこれを試してみませんでしたが、このような何かが動作するはずです:変数は、ここで、文字列としてコマンドに供給され

    subtitle="subtitles='$title':force_style='Fontsize=24,PrimaryColour=&H0000ff&'" 
    ffmpeg -i input.mp4 -vf <<<"$subtitle" -c:a copy output.mp4 
    

    。私は構文tho 'の100%ではないが、私は後でこれをテストします。

    0

    一般に、<()のファイルのエフェクトをBashで作成できます。

    例では、catはファイル入力のみをとります。あなたはそのようなファイルのように動作する変数を取得することができます。

    $ var="this is a var" 
    $ cat <(echo "$var") 
    this is a var 
    

    私はffmpegをテストするためにインストールされていませんが、引数は、ファイルを必要とし、あなたはそれを試すことができ、文字列を持っている場合。

    また、単に文字列をファイルにリダイレクトして、それを使用することができます

    $ echo "$var" > /tmp/file 
    $ cat /tmp/file 
    this is a var 
    

    ffmpegの入力にファイル名をプロンプトを表示している場合、あなたはexpectを使用して試すことができます。

    関連する問題