Использование avconv для выбора только одного аудиоканала на выходе

У меня есть двухканальный файл AAC, и я пытаюсь получить два отдельных файла AAC, каждый из которых имеет один из двух каналов в исходном файле AAC. Есть ли такая возможность в avconv? Что-то типа:

avconv -channel=0 -i input.aac input_ch1.aac

avconv -channel=1 -i input.aac input_ch2.aac

person shahram kalantari    schedule 15.03.2016    source источник


Ответы (2)


Решено.

Это работает для входного стереофайла aac, который имеет передний левый и передний правый каналы.

avconv -i input.aac -filter_complex channelsplit="channel_layout=2[FL][FR]" -map [FL] channel1.aac -map [FR] channel2.aac

Если ваш входной файл имеет более двух каналов, вы можете сопоставить каждый канал (либо по имени, как в FL, либо по их индексу, начиная с нуля) в отдельный одноканальный файл.

person shahram kalantari    schedule 18.03.2016

Если вы имеете в виду каналы (а не потоки), следующая команда ffmpeg должна работать:

ffmpeg -i input.aac -map_channel 0.0.0 left.aac -map_channel 0.0.1 right.aac
person dovetalk    schedule 15.03.2016
comment
Мне нужна команда avconv, ffmpeg не работает в новой версии Ubuntu для файлов aac. - person shahram kalantari; 15.03.2016
comment
Ах, извините. Вы отметили свой вопрос ffmpeg, подразумевая, что это приемлемое решение. Вы пробовали фильтр channelmap? - person dovetalk; 15.03.2016
comment
Да, я думал, что люди с опытом работы с ffmpeg знают решение в avconv. Нет, я этого не пробовал. Честно говоря, я не знал, как это использовать. - person shahram kalantari; 15.03.2016
comment
На всякий случай, если channelmap сработает, не могли бы вы опубликовать свое решение, чтобы другие, нашедшие эту тему, могли извлечь пользу? Я сам не пользуюсь avconv, так что не знаю. Вы можете опубликовать свой собственный ответ, он отредактирует мой. - person dovetalk; 17.03.2016
comment
Конечно, я только что ответил на свой вопрос :) - person shahram kalantari; 18.03.2016