Транскодирование отдельных аудиодорожек¶
В некоторых ситуациях бывает необходимо транскодировать входные аудиодорожки по-отдельности с разными параметрами транскодирования. Например, когда видео принимается со спутника, одна аудиодорожка может быть закодирована с помощью кодека MP2A, а другая – с помощью AC3. Аудиодорожка в AC3 имеет достаточно хорошее качество и не нуждается в транскодировании, тогда как аудиодорожку в MP2A нужно транскодировать для проигрывания в браузерах. Кроме того, иногда может быть необходимо из одной входной аудиодорожки создать несколько выходных с разными параметрами (например, с разным битрейтом).
Для транскодирования отдельных аудиодорожек используйте опцию atrack
в конфигурации транскодера. Эта опция позволяет указать порядковый номер входной аудиодорожки как целое число или строку в формате а<N>
. Например, atrack=1
или atrack=a1
означает первую входную аудиодорожку.
Все опции аудио, указанные в конфигурации перед первым вхождением опции atrack
, по умолчанию применяются ко всем аудиодорожкам. Опции, указанные после atrack
, применяются к конкретной аудиодорожке. Если после atrack
не указано никаких опций, то у выходной аудиодорожки будут параметры, указанные для всех аудиодорожек.
Пример для транскодирования трех входных аудиодорожек с разными параметрами:
stream sample {
input fake://fake;
transcoder vb=1000k ab=copy acodec=aac atrack=1 ab=copy atrack=2 ab=64k atrack=3;
}
Первая и третья входные аудиодорожки будут транскодированы с оригинальным битрейтом, а вторая – с битрейтом 64k.
Пример для создания двух аудиодорожек из одной входной аудиодорожки:
stream fake {
input fake://fake;
transcoder vb=copy ab=64k acodec=ac3 atrack=1 ab=64k acodec=opus atrack=1;
}
В этом примере транскодер создаст две аудиодорожки из первой входной аудиодорожки. Настройки первой выходной дорожки: ab=64k
, acodec=opus
. Настройки второй выходной дорожки: ab=64k
acodec=ac3
(так как эти опции применяются ко всем аудиодорожкам).