コマンドラインから次のコマンドを実行します。
handbrakeCLI.exe -i SourceFile.mkv -o OutputFile.mkv --stop-at 120
CLIGuide によると、-stop-at値を秒単位で指定できます(これは私が望むもので、ファイルへの120秒のエンコードを停止します)。
これの私の目的は、他のエンコードプロセスをテストするために、フルムービーから非常に高品質のビデオクリップをすばやく作成することです。
ただし、出力ファイルを表示すると、ムービー全体になります。何か案は?
さて、私は問題を ffmpeg で解決することにしました:
ffmpeg -i SourceFile.mkv -ss 00:00:05 -t 00:02:30 -ac 2 -sn OutputFile.mkv
説明:
これは私が探していたものに完璧に機能しました。
答えはHandbrakeのヘルプにあります:
handbrakeCLI.exe --help
正しい構文は次のとおりです。
--stop-at <unit:#> Stop encoding at a given frame, duration (in seconds),
or pts (on a 90kHz clock)
例:
handbrakeCLI.exe -i SourceFile.mkv -o OutputFile.mkv --stop-at duration:120
これにより、ビデオの最初の120秒が表示されます
2015年4月の時点で、これは私が見つけたものであり、将来変更されるのではないかと思います。
--start-at duration:120 --stop-at duration:60
start-at
期間は実際にはいくつかのポイントで「開始」します。 stop-at
期間は実際にはlength(実際の期間)です。つまり、duration
という言葉はさまざまな意味を持っています。上記の行は、00:02:00に開始し、60秒間開始することを意味します。したがって、それを覚える簡単な方法は次のとおりです。start-at
はある時点にあり、stop-at
は長さです。