Похожие вопросы

HandbrakeCLI конвертировать только аудио
Есть ли бесплатный плагин "автонастройки" для Audacity?
Конфигурация строения FFmpeg для как раз AAC, MP3, WAV
Почему устройства и звуковые микшеры приложений не совпадают?
Как изменить громкость по умолчанию для Linux Mint?
Как сохранить набор файлов из потоковых источников
Почему появились шумы при конвертации 16bit wav в 8 bit wav, как этого избежать?
Общий доступ к аудио между компьютерами по сети (например, мышь без границ) [дубликат]
Как увеличить громкость стереорежима наушников, если они уже находятся на максимальном уровне?
Как воспроизводить аудио через Bluetooth-гарнитуру в Windows 7?
Выходной разъем звука на приводе CD-ROM?
Как регулировать громкость звука с небольшим шагом в Mac OS 10.7 (Lion)? [закрытый]
Объединение двух аудиопотоков из транспортного потока в ffmpeg
Как использовать iPhone в качестве звуковой карты USB
ASUS Z170-проблема со звуком на материнской плате

Инструмент для массового ускорения / преобразования аудиофайла

Я хочу слушать некоторые подкасты на моем телефоне, но у меня есть две распространенные проблемы:

  1. аудио в каком-то странном формате (некоторые не играют на моем телефоне).
  2. звук медленный.

Я хочу использовать что-то вроде sox или avconv для массового преобразования файлов. Так как это просто голос и собирается на мобильный телефон, небольшие файлы низкого качества было бы лучше для меня. Я имел некоторый хороший успех используя avconv:

avconv -i weird.wma normal.ogg

но эта команда создает огромный файл OGG и я не могу заставить его играть быстрее. В идеале, этот конкретный файл будет играть на 170% от первоначальной скорости.

5
задан User1
источник

1 ответов

конвертировать с FFmpeg

FFmpeg имеет встроенный звуковой фильтр для изменения темпа без изменения высоты тона. Нам нужно закодировать файл в какой-то формат, который воспроизводит ваш телефон. Это зависит от телефона конечно. Многие современные смартфоны, такие как AAC audio:

ffmpeg -i weird.wma -filter:a "atempo=1.7" -c:a libfaac -q:a 100 final.m4a

здесь вы можете изменить качество с -q:a опция, где значение в процентах и выше означает лучше.

или, аудио MP3 с (средним) качеством 4, где меньше Середин лучше (0 в результате около 245 кбит/с):

ffmpeg -i weird.wma -filter:a "atempo=1.7" -c:a libmp3lame -q:a 4 final.mp3

если ваш телефон не поддерживает любой из них, нам придется копать дальше. О, и я использую ffmpeg синоним avconv здесь. Они не совсем то же самое, но для вышеуказанных случаев вы можете использовать любой инструмент. Если ваша версия FFmpeg или avconv не связывает FAAC или LAME, перейдите к статической сборке Linux из Страница загрузки FFmpeg.


если вам не нравятся фильтры FFmpeg, здесь есть другой подход:

извлечь raw аудио

прежде всего, вам нужно извлечь необработанный аудиопоток в несжатом формате, например, 16-битный стереофонический звук PCM в WAV-контейнере.

ffmpeg -i weird.wma temp.wav

теперь мы можем использовать файл temp.wav чтобы сократить аудио. У нас есть несколько вариантов для этого:

Вариант 1: SoX

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

tempo фильтр использует расширенный алгоритм, чтобы сократить файлы, но сохранить высоту, разделив его на меньшие временные окна, а затем "слияние" их, тем самым ускоряя темп. Например:

sox temp.wav output.wav -tempo 1.7

это может показаться немного странным. Если это так, прибегните к варианту 2.

Вариант 2: экстремальный звук пол стрейч

эта программа обещает предложите лучшее качество, чем SoX, и есть версия командной строки, написанная на Python доступно с GitHub. Команда может выглядеть так-имейте в виду, что по умолчанию она растягивает файл, поэтому для его сокращения мы вычисляем обратное значение 1.7, которое равно 0.59:

python paulstretch_stereo.py -s 0.59 temp.wav output.wav

преобразование raw аудио в сжатый файл

теперь у нас есть укороченный WAV файл, но он все еще несжат, так что нам нужно сжать его снова. См. параметры в верхней части это пост для различных форматов.

ffmpeg -i output.wav -c:a …

методы, отличные от ffmpeg, описанные выше, потеряют ваши метаданные; вы можете добавить их снова при преобразовании вывода.wav в сжатый формат, например:

ffmpeg -i output.wav -i weird.wma -map 0 -map_metadata 1 -c:a ...
9
отвечен slhck 2012-12-19 23:16:31
источник

Другие вопросы audio ffmpeg linux podcasts