Несколько звуковых дорожек с ручным тормозом

При попытке кодировать видео довольно обобщенным образом типичный вызов будет выглядеть так:

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.

По сути, как я смогу условно выбрать, что делать на основе звуковой дорожки, или мне нужно было бы выполнить какую-то предварительную обработку, чтобы определить, с какими звуковыми дорожками я имею дело, и программно изменить команду на основании этого?

0 ответов

В настоящее время в Handbrake нет возможности делать то, что вы хотите.

Но вы могли бы получить то, что хотите, и без него. По сути, есть утомительный способ сохранить исходную дорожку и одновременно перекодировать ее.

В настоящее время я перекодирую первую дорожку в AAC, а также сохраняю все исходные дорожки. (Первоначально закодированная первая дорожка становится дорожкой 2 и т. д.)

Например, вот мои аудио-варианты:

--all-subtitles --audio 1,1,2,3,4,5,6,7,8,9,10,11 --aencoder ca_aac,copy,copy,copy,copy,copy,copy,copy,copy,copy,copy,copy --mixdown dpl2,7point1,7point1,7point1,7point1,7point1,7point1,7point1,7point1,7point1,7point1,7point1 --audio-copy-mask aac,ac3,eac3,truehd,dts,dtshd --audio-fallback aac

Я дважды перечисляю первый трек, затем следую этому шаблону в кодировщике и микшировании. (Меня не волнуют mp3 или flaac.)

В результате для меня первая дорожка всегда совместима с моими старыми телевизорами, но если мне когда-нибудь понадобится исходная звуковая дорожка, я могу просто переключать дорожки, когда иду воспроизводить видео.

Другие вопросы по тегам