Для тестирования я хочу конвертировать файлы MP3 и WAV, которые у меня есть, в Opus, как это сделать?
conversion
ogg-opus
Луис Альварадо
источник
источник
Ответы:
По умолчанию аудио конвертер, поставляемый с инструментами opus, может конвертировать аудио в формат raw, wave или AIFF. Минимальный синтаксис использует настройки по умолчанию:
Возможно, мы захотим добавить лучшую скорость передачи данных в качестве 96 кбит / с по умолчанию с этой опцией
--bitrate N.nnn
(для всех опций обратитесь к man-странице для opusenc).Конвертировать mp3 "на лету". т.е. без создания временного файла мы можем передать вывод из avconv в opusenc следующим образом:
источник
for f in *.flac; do ffmpeg -i "$f" -f wav - | opusenc --bitrate 140 - "${f%.flac}.opus"; done
Я выбрал 140 в качестве битрейта, потому что в соответствии с этим этого более чем достаточно для стереофонических файлов.Ubuntu 14.04 и Debian 8 поставляются с версией 9
libav-tools
в своих репозиториях, и в него встроена поддержка Opus через пакетlibopus0
.Пример 1: перекодировать аудиофайл в опус
С установленной версией 9
libav-tools
иlibopus0
вы можете, например, сделать:Какие варианты делают
-i file.mp3
устанавливает входной файл.-map 0:a
выберет все аудиопотоки (a
) из входного файла0
. Подробнее о-map
на https://libav.org/avconv.html#Advanced-options-codec:a opus
выбирает кодер opus для аудиопотоков (a
). Подробнее о-codec
на https://libav.org/avconv.html#Main-options .-b:a 100k
устанавливает битрейт аудио на 100 килобит / с. Подробнее о-b
на https://libav.org/avconv.html#Codec-AVOptions-vbr on
включает переменный битрейт. Это опция, специфичная для libopus. Вот все варианты для libopus:file.opus
устанавливает выходной файл.Пример 2: захват аудио из видеофайла и кодирование его как opus
Возьмите второй поток первого входа (
-map 0:1
), который является аудиопотоком. Кодируйте его с помощью libopus на скорости 100 кбит / с с переменной скоростью передачи данных:С
mediainfo
установленным пакетом :источник
-map 0:a
делает? (А может быть подробно вся линия?)Опус 12.04
Однако 12.04 (Precise) существуют проблемы с зависимостями при установке кодеков и инструментов opus, поэтому я обнаружил, что наилучшим решением является то, которое стало доступно совсем недавно: скомпилируйте аудиокодер и декодер opus, как указано здесь , и собрать
ffmpeg
с поддержкой opus, добавив--enable-opus
в настройки опцииffmpeg
(как указано в руководстве по компиляции ).Я знаю, что
ffmpeg
это устарело в Ubuntu в пользуLibav
, но компиляция - это хороший способ интегрировать полностью функционирующий кодер / декодер opus вffmpeg
себя. Затем вы можете использовать его для преобразования файлов (сначала в wav), а затем в.opus
. Документация, установленная с libopus и ffmpeg, покажет все опции, которые можно использовать для конвертации файлов.При конвертации файлов
ffmpeg
после компиляции вы должны указать-acodec libopus
илиffmpeg
не использовать кодек opus:Затем вы можете проверить файл, созданный с
Советы по компиляции
Нет необходимости воспроизводить руководство здесь полностью, но стоит отметить одну или две вещи:
Сначала вы должны установить зависимости, как указано (я опускаю
yasm
из списка: см. Мой второй пункт):Есть одна проблема, на которую следует обратить внимание: сборка git, кажется, нужна
yasm-1.2
, и она недоступна, поэтому вам нужно скомпилировать исходный код с официального сайта , но это просто. Просто удалите все установленные версииyasm
, затем распакуйте загруженный архивcd
в папку, запустите./configure && make
и затемsudo checkinstall
. Если для любых других сборок требуется более ранняя версия, вы можете просто удалить эту версию и установить версию репозитория.Необходимо удалить любые существующие
libav
,ffmpeg
,x264
,libvpx
илиfdk-aac
пакеты , прежде чем приступить к составлению.Это критически , что вы скомпилировать и установить
x264
,fdk-aac
,libvpx
и ,opus
прежде чем строитьffmpeg
, так как эти библиотеки будут использоваться в сборке.Не забудьте добавить
--enable-opus
в настройки параметры при запускеffmpeg
компиляции.Скомпилированная версия opus была 1.1alpha, поэтому вам может понадобиться повторно скомпилировать библиотеку opus и ffmpeg в будущем, когда будет выпущена новая версия.
Вы можете использовать
ffplay
для воспроизведения любых файлов Opus, которые вы создаете.источник
Вот как я это делаю:
РЕДАКТИРОВАТЬ:
Для аудиофилов:
Не нужно указывать
--maxdelay 10
опцию, потому чтоopusenc
делать это по умолчанию.Консольный вывод для этого преобразования файла (
--bitrate 320
):Это супер быстро! Менее 8 секунд со сложностью 10 (сложность кодирования (0-10, по умолчанию: 10). Ноль дает самые быстрые кодировки, но более низкое качество, в то время как 10 дает самое высокое качество, но более медленное кодирование) и максимальное время задержки 10 мс ( Максимальная задержка контейнера в миллисекундах (0-1000, по умолчанию: 1000)), поэтому, если вы пропустите время в песне, эффект отсечения будет иметь продолжительность 10 мс, поэтому он незаметен (попробуйте с 1000 и услышите время пропуска разницы с вашим мышь). Битрейт - это VBR по умолчанию. 320
--bitrate N.nnn
кбит / с у меня сработало, так что необязательно, играйте с этим числом: => Целевой битрейт в кбит / с (6-256 на канал)Между прочим, кодирование из MP3 в OPUS не очень хорошая идея, лучше не будет звучать, их алгоритмы сжатия слишком разные. Но из FLAC, WAV или любого другого формата аудио без потерь , это другая история.
Примечание. Чтобы кодировать другой файл, просто нажмите стрелку вверх в том же терминале, чтобы вызвать последнюю команду и изменить имя входного и выходного файлов.
Если вы ищете графический интерфейс ffmpeg / avconv, возможно, TraGtor - то, что вам нужно.
Вы также можете проверить различия в спектограммах между форматами Lossless и Lossy при высоких битрейтах с помощью Spek или Audacity .
источник
Error parsing input file: Hardvapour remix-.mp3
я использую 16.04opus-tools
аAudex
.Откройте Audex и добавьте новый профиль под названием Opus, добавьте шаблон Command;
opusenc $i --comment="TRACKNUMBER="$trackno"" --artist "$artist" --album "$title" --title "$ttitle" --date "$date" --picture "$cover" $o
и суффикс
opus
источник