Преобразование mp4 в mp3

У меня есть видео, которое мне нужно преобразовать в mp3 (из командной строки - не GUI): video.mp4

Я попытался:

ffmpeg -i -b 192 video.mp4 video.mp3

без успеха. Я получаю следующую ошибку:

WARNING: library configuration mismatch
Seems stream 0 codec frame rate differs from container frame rate: 59.83 (29917/500) -> 59.75 (239/4)
WARNING: The bitrate parameter is set too low. It takes bits/s as argument, not kbits/s 
Encoder (codec id 86017) not found for output stream #0.0

, поэтому я попробовал lame:

lame -h -b 192 video.mp4 video.mp3

Я получаю:

Warning: unsupported audio format

Я что-то упустил? [ ! d5]

1
задан 16 October 2016 в 19:13

10 ответов

У меня есть shell-скрипт, который использует mplayer (поэтому он может конвертировать все, что может играть mplayer), чтобы извлечь аудио, а затем закодировать его с помощью lame. Вот код:

#! /bin/bash
# any2mp3.sh
# Converts to mp3 anything mplayer can play
# Needs mplayer amd lame installed

[ $1 ] || { echo "Usage: $0 file1.wma file2.wma"; exit 1; }

for i in "$@"
do
    [ -f "$i" ] || { echo "File $i not found!"; exit 1; }
done

[ -f audiodump.wav ] && {
    echo "file audiodump.wav already exists"
    exit 1
}

for i in "$@"
do
    ext=`echo $i | sed 's/[^.]*\.\([a-zA-Z0-9]\+\)/\1/g'`
    j=`basename "$i" ".$ext"`
    j="$j.mp3"
    echo
    echo -n "Extracting audiodump.wav from $i... "
    mplayer -vo null -vc null -af resample=44100 -ao pcm:waveheader:fast \
    "$i" >/dev/null 2>/dev/null || {
        echo "Problem extracting file $i"
        exit 1
    }
    echo "done!"
    echo -n "Encoding to mp3... "
    lame -m s audiodump.wav -o "$j" >/dev/null 2>/dev/null
    echo "done!"
    echo "File written: $j"
done
# delete temporary dump file
rm -f audiodump.wav

Сначала вам нужно apt-get install mplayer lame. После этого поместите код в файл с именем «any2mp3.sh», дайте разрешение на выполнение и поместите его в свой $ PATH, и вы сможете это сделать:

$ any2mp3.sh file.mp4 another-file.wma yet-another.file.ogg

It будет конвертировать каждый файл, переданный в mp3 с тем же именем.

Немного грубо, но выполняет эту работу.

12
ответ дан 25 May 2018 в 16:18
  • 1
    я сделал все, и я получил: -rw-r--r-- 1 aki aki 7104 2011-12-02 10:41 video.mp3, который не играет – aki 2 December 2011 в 21:43
  • 2
    это странно ... похоже, что хромой не удалось преобразовать wav. попробуйте удалить >/dev/null 2>/dev/null из кода, чтобы увидеть сообщение об ошибке. – elias 2 December 2011 в 21:46
  • 3
    нет удачи, вот результат: pastebin.com/ALrTqCmk обоих преобразований – aki 2 December 2011 в 21:58
  • 4
    И играет ли audiodump.wav? Если это не так, mplayer не может воспроизводить файл video.mp4, а затем вам действительно не повезло. Возможно, файл, который вы пытаетесь преобразовать, поврежден, можете ли вы протестировать процесс с другим файлом? – elias 2 December 2011 в 22:06
  • 5
    нет, wav не играет, а mp4 от mplayer – aki 2 December 2011 в 22:09

soundconverter

soundconverter

- ведущий конвертер аудиофайлов для рабочего стола GNOME. Он читает все, что может прочитать GStreamer (Ogg Vorbis, AAC, MP3, FLAC, WAV, AVI, MPEG, MOV, M4A, AC3, DTS, ALAC, MPC, Shorten, APE, SID, MOD, XM, S3M и т. Д. ... ) и записывает файлы WAV, FLAC, MP3, AAC и Ogg Vorbis или использует аудиофайл GNOME.

SoundConverter стремится быть простым в использовании и очень быстрым. Благодаря многопоточному дизайну он будет использовать как можно больше ядер, чтобы ускорить преобразование. Он также может извлекать аудио из видео.

Как конвертировать MP4 в MP3 с VLC

Открыть VLC Media Player. Нажмите «Медиа»> «Конвертировать», чтобы войти в окно «Открыть медиа». Нажмите кнопку «Добавить» в правой части экрана, чтобы войти в Проводник Windows. Найдите MP4 на жестком диске, который вы хотите преобразовать. Нажмите кнопку «Конвертировать» в нижней части экрана. Выберите имя целевого файла. Перейдите на вкладку «Аудиокодек» и выберите «MP3» в раскрывающемся списке «Кодек». Нажмите кнопку «Пуск», чтобы начать конвертирование MP4 в MP3-аудио. Нажмите «Пуск»
11
ответ дан 25 May 2018 в 16:18
  • 1
    Но ОП запросил решение для командной строки. – Nathan Osman 8 October 2013 в 07:25

Я использую этот небольшой скрипт для преобразования m4a в mp3.

#!/bin/bash
for i in *.m4a; do
    avconv -i "$i" -vn -acodec libmp3lame -ac 2 -ab 160k -ar 48000 "`basename "$i" .m4a`.mp3"
done
6
ответ дан 25 May 2018 в 16:18

Я думаю, проблема связана с вашим синтаксисом команды ffmpeg.

ffmpeg -i source_filename -vn -ab 192k -acodec libmp3lame -ac 2 output_filename

должен работать.

5
ответ дан 25 May 2018 в 16:18

Сначала вы должны понять несколько вещей.

MP3 - это аудиоформат.

MP4 - это формат audio .

Чтобы получить аудио из MP4 (и сохранить его как MP3), используйте soundconverter.

2
ответ дан 25 May 2018 в 16:18
  • 1
    +1 хорошо сделано для указания разницы между mp4 и mp3. – fossfreedom♦ 2 December 2011 в 20:45

Чтобы преобразовать Upd_Sanity.mp4 в Upd_Sanity.mp3

$ sudo apt-get install ffmpeg && sudo apt-get install libavcodec-extra-53

$ ffmpeg -i Upd_Sanity.mp4 -vn -acodec libmp3lame -ac 2 -ab 160k -ar 48000 Upd_Sanity.mp3

ИЛИ (поскольку ffmpeg устарел)

$ avconv -i Upd_Sanity.mp4 -vn -acodec libmp3lame -ac 2 -ab 160k -ar 48000 Upd_Sanity.mp3

Описание

   -i        input file name
   -vn       disable video recording
   -acodec   force audio codec to libmp3lame
   -ac       set the number of audio channels
   -ar       set the audio sampling frequency

Если вам нужно часто использовать его,

ИЛИ (поскольку ffmpeg устарел)

## utilities.sh
convertMP4toMP3(){
echo -n "Enter source mp4 file : "
read sourceFile

echo -n "Enter destination mp3 file : "
read destFile

avconv -i $sourceFile -vn -acodec libmp3lame -ac 2 -ab 160k -ar 48000 $destFile
}

ШАГ 2: исходный файл bash

 $ source utilities.sh

ШАГ 2: источник, который bash-файл

 $ convertMP4toMP3
 Enter source mp4 file : Upd_Sanity.mp4
 Enter destination mp3 file : UPd_sanity.mp3

Ссылки

утилит .sh

2
ответ дан 25 May 2018 в 16:18

Можно использовать Lame напрямую, если вы используете FFmpeg и передаете вывод в хромоту (через stdout и stdin). Пример:

ffmpeg -i video.mp4 -vn -f wav - | \
       lame -V 3 - audio.mp3

Это позволяет вам использовать значительные параметры командной строки lame, если вы хотите их изучить ...

1
ответ дан 25 May 2018 в 16:18

вы можете попробовать конвертировать его с помощью vlc или звукового преобразователя, перейдите на http://soundconverter.org/ звуковой конвертер или найдите в своем программном центре или используйте vlc для конвертирования. vlc media convert / save выбрал ваш файл. и пункт назначения, и начните пропаривать все

0
ответ дан 25 May 2018 в 16:18

Попробуйте Transmageddon доступен через Ubuntu Software Center http://www.linuxrising.org/index.html

0
ответ дан 25 May 2018 в 16:18

Хотя это GUI, вы можете использовать Audacity для управления фиксированным или переменным, а также качества вывода при конвертировании MP4 в MP3.

Откройте Audacity, откройте целевой файл MP4, нажмите FILE, EXPORT, а затем выберите тип вывода (по умолчанию - MP3) и нажмите SAVE. Он открывает аудиоканал (ы) MP4, экспортирует MP3-аудио туда, где есть (и все, что вы его сохраняете, как), и вы не в нем (преобразование 400-мегабайтного MP4 в MP3 на чипе AMD 3Ghz составляет около 10 минут , с частотой дискретизации 160 кбит / с на аудио, а аудиофайл будет примерно вдвое меньше, чем MP4).

0
ответ дан 25 May 2018 в 16:18

Другие вопросы по тегам:

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