web-dev-qa-db-ja.com

avidemuxによるバッチ変換

私はavidemuxを使用してaviファイルをmp4に変換しましたが、結果は完全に満足です。変換するファイルがたくさんあるので、ターミナルを使用してバッチ変換したいと思います。スクリプトを見つけました

#!/bin/bash
VIDEOCODEC="Xvid"
AUDIOCODEC="MP3"
for FIL in `ls *mp4 | sort` ; do
avidemux2 --video-codec $VIDEOCODEC --audio-codec $AUDIOCODEC --force-alt-h264 --load "$FIL" --save ${FIL%.*}.avi --quit
done

ページを開く http://www.avidemux.org/admWiki/doku.php?id=tutorial:batch_processing#command-line_only_batch_processing

しかし、私はエラーになります

./scriptAvidemuxBatch: line 5: avidemux2: command not found

交換すると何か機能します

avidemux2 --video-codec $VIDEOCODEC --audio-codec $AUDIOCODEC --force-alt-h264 --load "$FIL" --save ${FIL%.*}.mp4 --quit

沿って

avidemux --video-codec $VIDEOCODEC --audio-codec $AUDIOCODEC --force-alt-h264 --load "$FIL" --save ${FIL%.*}.mp4 --quit

(「2」が削除されました)が、GUIが表示され、変換プロセスを続行する前にいくつかのボタンをクリックするように要求されます。

私の質問は:

-スクリプトで「avidemux2」を「avidemux」に変更しても大丈夫ですか?

-スクリプト内のボタンをクリックするときに行われた選択を含める方法はありますか?

2
frepie
  1. はい、あなたは正しいことをしました。
  2. リンクしたチュートリアルでは、「AVIdemuxコマンドラインサポートではすべての可能なオプションを変更することはできません」と記載されているため、おそらくいいえ。

AvidemuxはGUIプログラムです。bashのパワーを活用したい場合は、ターミナルプログラムを使用するだけです。現在の* buntusには、そのためのavconvが同梱されています。

バッチコンバーターは次のように簡単です

for i in *.avi; do avconv -i "$i" "${i/%avi/mp4}"; done

いくつかのavconvオプションを追加することもできます。 here および here を参照してください。

1
dessert