尝试以相当通用的方式对视频进行编码,典型的调用将如下所示:
HandBrakeCLI --encoder-preset medium --encoder-level 4.1 --format av_mkv --encoder x264 --quality 21 --aencoder aac,ac3 --audio-copy-mask aac,ac3,dtshd,dts,mp3 -a 1,2 -s 0,1,2,3,4 -x threads=38 -i Input.mkv -o Output.mkv
问题是我想对音轨执行以下操作:
- 如果有高比特率轨道(例如 dts)将其转换为 ac3
- 如果有 aac 音轨重新编码(或复制)
- 如果没有 aac 轨道和高比特率轨道,则创建 aac 轨道
本质上,我如何能够有条件地根据音轨选择要执行的操作,或者我是否需要进行某种预处理来识别我正在处理的音轨类型并以此为基础以编程方式更改命令?