これが私がWindows7でやりたいことです:
どこから始めたらいいのか途方に暮れています。いくつかの質問:
これを達成する方法についてのアイデアを探しています。
私はあなたが探しているようなことをしていました。これは、拡張子が.isoのすべてのファイルを検索する非常に基本的なループです。次に、それらを.mp4拡張子の付いたXbox360プリセットにエンコードします。そのファイルを.batとして保存すると、実行してファイルをエンコードできます。
@echo off
for %%f in (*.iso) do (
M:\HandBrakeCLI -i 'M:\encode\%%f' -o 'M:\encode\%%f.mp4' -Z 'Xbox 360' -S '700' -2 -T -L
)
pause
上記のスクリプトはM:\ encode \フォルダー内のすべてのファイルをエンコードするため、もう少しコードを追加する必要があることに注意してください。 1つのオプションは、ファイルがエンコードされたらそのディレクトリからファイルを移動することです。別のオプションは、ファイルがすでにエンコードされているかどうかを確認することです。
スクリプトを希望どおりに作成したら、設定した間隔でスクリプトを実行するようにWindowsスケジューラを設定できます。私は毎晩深夜に私のものを実行しますが、より速い結果が必要な場合は、10分ごとに実行することができます(エンコードに10分以上かかる場合は、映画のエンコードを2回目に開始しないようにしてください)。
それ以来、Linuxに切り替えましたが、Linuxスクリプトは、役立つと思われるロジックをもう少し使用しています。このスクリプトは、ファイルがすでにエンコードされているかどうかを確認し(存在する場合)、エンコードされている場合はスキップします。調査なしでこのロジックを書くのにBatchが得意ではないのではないかと思いますが、それは可能だと思います。
#### Checks if .mov file exists and encodes it if it does not exist ####
for file in *.ISO
do
if [ -f /raid/mp4/${file%.*}.mov ] || [ -f /raid/mp4/${file%.*}.ISO.mov ]
then
echo "Already Encoded ${file}"
else
echo /media/raid/mp4/"${file%.*}.mov"
HandBrakeCLI -i "${file}" --main-feature -o /media/raid/mp4/"${file%.*}.mov" -f mp4 -O --strict-anamorphic -e x264 -q 20 -a 1 -E faac -6 dpl2 -R Auto -B 160 -D 0.0 --markers="${file}-chapters.csv" -x ref=2:bframes=2:subq=6:mixed-refs=0:weightb=0:8x8dct=0:trellis=0 --verbose=1
fi
done
あなたの質問に答えるには: