Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: FFMPEG проблема с вырезанным звуком из видео  (Прочитано 2748 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн aizikil

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Привет всем ! В общем вырезаю из видео звук в формате mp3(с помощью ffmpeg), всё вроде хорошо, но на моем андройде не работает перемотка. Пробовал проиграть разными программами результат тот же. Есть подозрения что ffmpeg делает плавающий битрейт, а проги его не поддерживают. Не знаю даже что делать и куда рыть ....
« Последнее редактирование: 15 Февраля 2013, 03:40:17 от aizikil »

Оффлайн Dixi257

  • Активист
  • *
  • Сообщений: 287
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #1 : 14 Февраля 2013, 21:37:35 »
команду в студию

Оффлайн aizikil

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #2 : 15 Февраля 2013, 04:04:39 »
Так как не очень разбираюсь в нём то пробовал вот так ffmpeg -i input.mp4 output.mp3

Сейчас покопался и попробовал вот так ffmpeg -i input.mp4 -f mp3 -ab 320 output.mp3

тоже не получилось, правда он пишет что извлёк звук с битрейтом 128 хм..... Команды видимо неправильные даю.

Оффлайн Dixi257

  • Активист
  • *
  • Сообщений: 287
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #3 : 15 Февраля 2013, 13:47:35 »
Так как не очень разбираюсь в нём то пробовал вот так ffmpeg -i input.mp4 output.mp3

Сейчас покопался и попробовал вот так ffmpeg -i input.mp4 -f mp3 -ab 320 output.mp3

тоже не получилось, правда он пишет что извлёк звук с битрейтом 128 хм..... Команды видимо неправильные даю.


1) Без указания битрейта получается файл с 192k
2) Надо писать не -ab 320, а -ab 320k
3) Приложите проблемный mp3 - посмотрю, что там не так. Заодно приложите mp3, который успешно перематывается, - у меня нет андроида, я не знаю, в чём может быть дело.
4) Нынче надо писать avconv вместо ffmpeg
« Последнее редактирование: 15 Февраля 2013, 13:49:07 от Dixi257 »

Оффлайн Bamb

  • Активист
  • *
  • Сообщений: 798
  • Arch Linux
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #4 : 16 Февраля 2013, 02:37:50 »
ffmpeg -i input.mp4 -f mp3 -ab 320 output.mp3
Уважаемый, а кодек кто указывать будет?
-acodec libmp3lame (в свете последних обновлений -acodec mp3).
Ну и kилобиты указать, как заметил предыдущий оратор.
4) Нынче надо писать avconv вместо ffmpeg
Это не совсем так. Часть разработчиков ffmpeg откололась от основного проекта и форкнула avconv. Синтаксис, по идее, в основном схож, а в чем-то имеет различие, но сам факт не внушает мне оптимизма.
« Последнее редактирование: 16 Февраля 2013, 13:30:51 от Bamb »

Оффлайн aizikil

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #5 : 16 Февраля 2013, 19:14:55 »
К сожалению кодек так и не сумел указать, напишите пожалуйста полную команду.
С килобитами разобрался правда ничего не изменилось.
К сожалению не могу загрузить mp3 файл на форум, весит много.
Спасибо Вам большое за помощь, но проще использовать что-то другое с gui интерфейсом, не подскажите какие программы позволяют вырезать звук из видео ?

Оффлайн Dixi257

  • Активист
  • *
  • Сообщений: 287
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #6 : 16 Февраля 2013, 19:41:28 »
Ну так и не надо файлы на форум загружать. Есть же yandex etc.
Я лично звук сохраняю ffmpeg, пока проблем не было. Можно попробовать avidemux, если что подскажу. Файл, формируемый у Вас ffmpeg, имеет какие-либо проблемы с другими проигрывателями? Или сложности только в Андроид-девайсе?

Оффлайн Bamb

  • Активист
  • *
  • Сообщений: 798
  • Arch Linux
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #7 : 17 Февраля 2013, 14:55:31 »
aizikil, признаться, упустил, что Вы вырезаете звук из видео.
напишите пожалуйста полную команду.
Например, выхлоп ffmpeg -i input.mkv имеет следующий вид:
Stream #0:0: Video: h264 (High), yuv420p, 1024x424 [SAR 1:1 DAR 128:53], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
    Stream #0:1(rus): Audio: ac3, 48000 Hz, 5.1(side), s16, 384 kb/s (default)
    Metadata:
      title           : Dub
    Stream #0:2(rus): Audio: ac3, 48000 Hz, 5.1(side), s16, 384 kb/s
    Metadata:
      title           : MVO
    Stream #0:3(eng): Audio: ac3, 48000 Hz, 5.1(side), s16, 384 kb/s
    Stream #0:4(eng): Subtitle: subrip (default)
Тогда для экспорта английской дорожки требуется:
ffmpeg -i input.mkv -map 0:3 -f mp3 -acodec libmp3lame -ab 128k -y output.mp3Похоже сейчас, если задан контейнер mp3, указывать выходной кодек не обязательно. Так же, если не критично, можете просто скопировать аудиопоток.

ЗЫ. Для такого типа задач гуями не пользуюсь.

Оффлайн Aleks.Sinjavin

  • Любитель
  • *
  • Сообщений: 86
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #8 : 18 Февраля 2013, 14:23:48 »
ffmpeg -i input.avi -vn -ar 44100 -ac 2 -ab 48k -f mp3 output.mp3у меня работает. звук воспроизвожу aqualung.

Оффлайн Bamb

  • Активист
  • *
  • Сообщений: 798
  • Arch Linux
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #9 : 18 Февраля 2013, 14:44:58 »
-ab 48k
:)

ТС, дайте выхлопmediainfo input.mp4либо залейте проблемный файл на любой файлообменник, ссылку - сюда.

Оффлайн arch!ver

  • Старожил
  • *
  • Сообщений: 1260
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #10 : 24 Февраля 2013, 03:45:00 »
aizikil,
Вам сюда, https://help.ubuntu.ru/wiki/ffmpeg - в раздел "применение"

примерная сторока для вашего случая:
ffmpeg -i input.mp4 -vn -acodec copy output.mp3 ...но при условии что дорожка именно mp3
Для того чтобы вытащить звук из mp4 нужно сперва убедиться что он именно в формате mp3, а не в формате aac или ac3 или m4a - иначе у вас получится файл с неправильным расширением, что в общем то и может привести к подобным проблемам с перемотками и т.п.

Откройте файл input.mp4 программой mediainfo - и посмотрите точно, каким именно кодеком закодирована аудиодорожка, какой битрейт дорожки, а затем уже приписывайте ему расширение файла после vcodec copy. Я почему то сильно сомневаюсь, что это mp3

Но на вашем месте, я бы сделал так:
1. ffmpeg -i input.mp4 -vn -acodec pcm_s16le -ar 48000 -ac 2 output.wav
2. ffmpeg -i output.wav -acodec libmp3lame -ab 320k output.mp3 ...битрейт можно задать и поменьше, если вы хотите файл поменьше на выходе. Но ниже, чем 128k - я бы не рекомендовал...

Dixi257,
Не надо городить ерунду!!! Никакие отколы и приколы - не способны изменить синтаксис FFmpeg :D. При условии что вы юзаете именно FFmpeg - от сюда: http://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide, а не какуюнибудь дурную шнягу с отколами и прочими приколами  ;D...

А по общему конфликту Libav и FFmpeg - курите здесь: http://www.opennet.ru/opennews/art.shtml?num=34254
« Последнее редактирование: 24 Февраля 2013, 09:58:42 от archiver »

Оффлайн Bamb

  • Активист
  • *
  • Сообщений: 798
  • Arch Linux
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #11 : 24 Февраля 2013, 12:46:09 »
ffmpeg -i input.avi -vn -ar 44100 -ac 2 -ab 48k -f mp3 output.mp3
ffmpeg -i input.mp4 -vn -acodec copy output.mp3
Контейнер mp3 (-f mp3) ПОДРАЗУМЕВАЕТ отсутствие видеопотока.

Цитировать
Для того чтобы вытащить звук из mp4 нужно сперва убедиться что он именно в формате mp3, а не в формате aac или ac3 или m4a - иначе у вас получится файл с неправильным расширением, что в общем то и может привести к подобным проблемам с перемотками и т.п.
... затем уже приписывайте ему расширение файла ...
Попытка всунуть aac и пр. неродные кодеки в mp3 окончится фэйлом. К тому же в Линуксе расширение файла - не более чем часть имени файла. Вы можете вообще его убрать - файл отлично будет распознаваться и воспроизводиться.

Цитировать
после vcodec copy.
Так же, если не критично, можете просто скопировать аудиопоток.

Цитировать
1. ffmpeg -i input.mp4 -vn -acodec pcm_s16le -ar 48000 -ac 2 output.wav
2. ffmpeg -i output.wav -acodec libmp3lame -ab 320k output.mp3
Зачем нужны две операции?

Цитировать
Никакие отколы и приколы - не способны изменить синтаксис FFmpeg
-acodec libmp3lame (в свете последних обновлений -acodec mp3).
Хотя, оба варианта проходят (пока).

Цитировать
При условии что вы юзаете именно FFmpeg - от сюда: http://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide, а не какуюнибудь дурную шнягу с отколами и прочими приколами
Все под одним небом ходим: http://forum.altlinux.org/index.php?topic=24066.0

ЗЫ. Похоже, ТС плевать на тему.
« Последнее редактирование: 24 Февраля 2013, 12:49:42 от Bamb »

Оффлайн arch!ver

  • Старожил
  • *
  • Сообщений: 1260
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #12 : 24 Февраля 2013, 13:02:39 »
Контейнер mp3 (-f mp3) ПОДРАЗУМЕВАЕТ отсутствие видеопотока.

Не уверен, но учту...

К тому же в Линуксе расширение файла - не более чем часть имени файла. Вы можете вообще его убрать - файл отлично будет распознаваться и воспроизводиться.

Согласен, уже пришёл к такой же мысли :coolsmiley:

Зачем нужны две операции?

Дурная привычка детства ;D

Хотя, оба варианта проходят (пока).

Я говорю о оригинальном FFmeg, а не о фейке типа Libav. В FFmpeg тоже синтаксис меняется, но не так часто и не так кардинально ;D

ЗЫ. Похоже, ТС плевать на тему.

Плевать - да и хрен с ним, - другие прочитают ;)

http://forum.altlinux.org/index.php?topic=24066.0 - Я понял эта статья об онанизме. Люди пытаются юзать то, что не является FFmpeg - и очень удивляются почему у них эта фигня не работает ;D - да потому что это кривой Libav

Нет, всё же эта ссылка мне больше нравится: http://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide
« Последнее редактирование: 24 Февраля 2013, 13:27:57 от archiver »

Оффлайн zotkindm

  • Старожил
  • *
  • Сообщений: 2452
  • (K)Ub 14.04
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #13 : 24 Февраля 2013, 13:45:35 »
А vlc не пробовал?

Оффлайн kitaets

  • Активист
  • *
  • Сообщений: 571
  • Аналитик
    • Просмотр профиля
Re: FFMPEG проблема с вырезанным звуком из видео
« Ответ #14 : 04 Марта 2015, 09:12:29 »
Здравствуйте все!
Подниму темку, т.к. у меня почти та же проблема. Форум перерыл, гугл почитал, мануал вот этот - тоже, и он, кстати, содержит гору ошибок.

Началось всё с того, что я с помощью youtube-dl скачал с ютуба звук с конвертацией в mp3. Но возникла проблема, которую я ниже опишу.
Очевидно, проблема возникает при конвертации посредством ffmpeg, поэтому взялся с ним экспериментировать. Так что вопрос - именно по ffmpeg, а не по youtube-dl.

Проблема возникает при проигрывании полученного mp3. Я использую для этого VCL на компе или телефон (не китайский, если что, сонька, но не андроид).
VCL при проигрывании не понимает длительность файла и в процессе она постоянно меняется. В инфо о файле VCL говорит, что это 32k вне зависимости от того, сколько килобит я указывал при кодировании.
Телефон при проигрывании тоже не понимает длительность записи, в результате - проблемы с прокруткой и возобновлением воспроизведения после паузы.

Что работает корректно:
ffmpeg -i in.m4a -acodec libmp3lame -ab 32k -f mp3 out.mp3Без вопросов, всё замечательно.
А вот если указать другой битрейт, то наблюдаются вышеуказанные проблемы:
ffmpeg -i in.m4a -acodec libmp3lame -ab 64k -f mp3 out.mp3Ну или любые другие k.
При этом VLC в обоих случаях показывает одинаковую информацию о кодеке. В реальности качество звука и размер файла получаются разные, но что-то, видать, в заголовках неверно прописано.
Пробовал брать не m4a, а webm (ютуб даёт эти два формата) - без разницы.

Файл, закодированный с битрейтом 64k. Просто первое попавшееся короткое видео :coolsmiley:
«Если ты не наступил на грабли, это не значит, что их нет», – kitaets.

 

Страница сгенерирована за 0.053 секунд. Запросов: 26.