Извлечение аудио AAC из MP4


11

Есть ли инструмент командной строки для Windows, чтобы извлечь аудио AAC из MP4?


Как изменить совместимый бренд с mp4box? -бренд не работает!
Dr.jacky

Ответы:


5

FFmpeg может это сделать. Вот список команд, которые могут пригодиться для вас. Иди сюда за инструкциями.

Пример:

ffmpeg -i INPUT.mp4 -c copy -map 0:a:0 Output.aac
  • -i: входной файл
  • -c copy: копирует битовые потоки без перекодирования
  • -map 0:a:0: выбирает дорожку из: 1-й входной файл -> звуковые дорожки -> первая дорожка (1-я звуковая дорожка из 1-го входного файла)

Обратите внимание, что это будет работать аналогично avconv, что является вилкой ffmpeg.


1
Только ссылка на решение является плохой практикой. По крайней мере, приведите несколько примеров.
Эрик

1
Если внутри MP4 есть только один аудиопоток, аргумент -map не нужен, т.е. написание этого достаточно: ffmpeg -i INPUT.mp4 -c copy Output.aac
miyalys

Вот как создать в пакетном режиме. Сначала создайте подпапку «out», где находятся ваши mp4-файлы. Затем «откройте командное окно» в папку mp4 и вставьте следующее для% f в («* .mp4») do C: \ yourpath \ ffmpeg \ bin \ ffmpeg -i "% f" -c copy -map 0: a: 0 out / "% ~ nf.aac"
Виджей Джагдейл,

10

mp4box также может сделать это.

Чтобы демультиплексировать / извлечь aac из mp4 (при условии, что аудио - это вторая дорожка):

mp4box -raw 2 video.mp4

Это автоматически создаст выходной файл "video_track2.aac"

Если вы хотите контролировать имя выходного файла, вы должны сделать

mp4box -raw 2 video.mp4 -out audio.aac

Если вы хотите сделать ремукс обратно в контейнер mp4 (т.е. для iTunes), вы можете сделать:

mp4box -single 2 video.mp4 -out audio.m4a

Затем вы можете поместить это в пакетный скрипт для работы со всеми файлами в каталоге:

for %%f in ("*.mp4") do (

mp4box -single 2 "%%f" -out "%%~nf.m4a"

)

(пакетный скрипт, вдохновленный videohelp и stackoverflow )

Ссылки для скачивания:


1
+1 Спасибо, команда -single - именно то, что я искал (она добавляет информацию MP4 к -raw)
Martin

6

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

avconv -i input.mp4 -vn -c:a copy output.m4a

Отлично работал (с родительским проектом "ffmpeg.exe" вместо "avconv.exe") и исправил проблему вывода .aac из-за неточного тайм-кода. Оказывается, m4a - правильный формат контейнера.
SushiGuy

Я получаю "Выходной файл № 0 не содержит никакого потока"
Крис

0

Сначала я использую mkvtoolnix для преобразования MP4 в MKV и использую графический интерфейс mkvextract для извлечения нужной дорожки. Много менее сложный и полный графический интерфейс. Абсолютно нулевое изменение в любом компоненте вообще.


1
Если это менее сложно, не могли бы вы описать, как делать то, что ОП хочет сделать с этими инструментами? Также обратите внимание, что вопрос задан для инструмента командной строки.
Скотт

На самом деле mkvtoolnix - это графический интерфейс для командной строки mkvmerge.exe. Я полагаю, что вы также можете найти параметры командной строки и информацию о форматировании команд в строке. GUI также имеет возможность создания пакетных файлов для работы с несколькими файлами.
user38660

-3

Супер тоже может это сделать .

SUPER © «Проигрыватель» превосходит любой известный проигрыватель, поддерживая любой формат мультимедиа. SUPER © воспроизводит файлы, которые невозможно воспроизвести с помощью WMP или даже других проигрывателей на основе libavcodec, таких как MPC и VLC. SUPER © также воспроизводит и сохраняет интернет-медиапотоки различных протоколов (mms: // rtsp: // http: //)

SUPER © «Кодировщик» - это самый быстрый и простой инструмент для кодирования полнометражных фильмов в любой другой формат без каких-либо временных или функциональных ограничений.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.