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


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Как конвертировать звуковую дорожку в фильме ?  (Прочитано 45851 раз)

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

Оффлайн Adriano

  • Автор темы
  • Участник
  • *
  • Сообщений: 186
  • Че
    • Просмотр профиля
Есть фильм формата avi (MPEG-4) со звуком АС-3.
Нужно перекодировать звуковую дорожку из формата АС-3 в формат МР3.

В Windows c этой задачей идеально справляется программа PocketDivXEncoder. Там ставишь галочку "Не кодировать видео" и программа перекодирует только звук -- буквально за пару минут. На стареньких и слабеньких компьютерах дольше.

Зачем? На Украине сейчас переходят на цифровое телевидение. Телевизор принимает его через специальный ТВ-тюнер. Там, в тюнере, есть встроенный видеоплеер с USB-разъёмом. Понимает много форматов видео, но когда звук в АС-3 -- молчит, как рыба об лёд. :-)

P.S. Подредактирую это сообщение, а то подумали, что мне нужен только файл со звуком из фильма.
У меня есть фильм со звуком АС-3, надо этот фильм сделать со звуком МР3.
« Последнее редактирование: 03 Августа 2013, 15:12:28 от Adriano »
Kubuntu 22
adri-an.livejournal.com

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
ffmpeg -i video.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 sound.mp3
Wars ~.o

dynin

  • Гость
Avidemux
Два способа:
1) Конвертировать сразу


2) Или вырезать звук с конвертацией в отдельный мр3-файл, а затем приклеить к видео.


Оффлайн Lego777

  • Любитель
  • *
  • Сообщений: 79
  • Puppyrus user
    • Просмотр профиля
Можно и как в примере с ffmpeg, только добавить в строку -vcodec copy (-vn убрать), ну и выходной формат соответственно не .mp3, а требуемый видео (.avi в данном случае).
« Последнее редактирование: 03 Августа 2013, 10:25:20 от Lego777 »

Оффлайн Adriano

  • Автор темы
  • Участник
  • *
  • Сообщений: 186
  • Че
    • Просмотр профиля
ffmpeg -i video.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 sound.mp3
Я наверное не очень точно выразился. Нужно следующее.

Есть фильм (например, под названием "Cranford", британский сериал по дамскому роману. Понятно, что для дам я его и пишу.) В этом фильме звуковая дорожка формата АС-3. В моём медиа-плеере в таком случае видео будет показываться, но без звука. (Китайцы-производители не купили какие-то права на кодек АС-3.)

Надо этот фильм сделать со звуковой дорожкой МР3.

--------------------

Когда я пишу команду, которая в цитате, то на выходе получаю только звуковой файл. А почему выдаёт такую надпись при этом?

The bitrate parameter is set too low.It takes bits/s as argument, not kbits/s
« Последнее редактирование: 03 Августа 2013, 13:50:40 от Adriano »
Kubuntu 22
adri-an.livejournal.com

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Adriano,
ну вырезать звук одна, а mkv 10 страны не?
Wars ~.o

Оффлайн Adriano

  • Автор темы
  • Участник
  • *
  • Сообщений: 186
  • Че
    • Просмотр профиля
Можно и как в примере с ffmpeg, только добавить в строку -vcodec copy (-vn убрать), ну и выходной формат соответственно не .mp3, а требуемый видео (.avi в данном случае).
Написал так

ffmpeg -i Cranford_2.avi -vcodec copy -ar 44100 -ac 2 -ab 192 -f mp3 cranford_2_mp.avi

Что-то не получилось! Если звуковой файл с mp3 с предыдущей командой получился нормально, только с низким битрейтом 118 кб/с, то этот файл avi вообще толком не показывает. :(

И тоже написало такое сообщение:

The bitrate parameter is set too low (и т.п.)
Kubuntu 22
adri-an.livejournal.com

Оффлайн Lego777

  • Любитель
  • *
  • Сообщений: 79
  • Puppyrus user
    • Просмотр профиля
Вроде бы буковку надо дописать к -ab 192 (192k надо вроде), ну и если пишет, что низкий битреейт - поднимите, например 224 поставьте. И еще как-то не нравиться мне (ИМХО) фрагмент "-f mp3", может заменить на -acodec libmp3lame?
« Последнее редактирование: 03 Августа 2013, 13:42:07 от Lego777 »

Оффлайн Adriano

  • Автор темы
  • Участник
  • *
  • Сообщений: 186
  • Че
    • Просмотр профиля
Я вот ещё о другом напишу.

Я так понимаю, что виндовый PocketDivxEncoder работает как-то аналогично Linuxовой программе MEncoder. Вот в "Справке" к нему что написано нерусским языком:

PocketDivxEncoder is freeware, distributed under the GPL license. It allows anyone to encode a video file with parameters optimized for viewing on a PocketPC (...) by using the encoder "MEncoder" taken from the Linux world. These programs are included into the executable and they run in the background.

Я правильно понимаю? Это значит, что PocketDivxEncoder использует программу "MEncoder" из мира Linux, которая работает в фоновом режиме.

Кто-нибудь разбирался с этой программой "MEncoder" ?
Википедия пишет, что там "Интерфейс: командная строка".
Kubuntu 22
adri-an.livejournal.com

Оффлайн Lego777

  • Любитель
  • *
  • Сообщений: 79
  • Puppyrus user
    • Просмотр профиля
mencoder "/.../.../input_video" -ovc lavc -oac mp3lame -lavcopts autoaspect -lameopts vbr=2    -o "/.../.../output_video", например.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
mplayer -ao pcm:file=audio.wav -vo null -vc null video.avi
Wars ~.o

Оффлайн Пользователь

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 2700
  • Runtu XFCE 18.04 (64-bit)
    • Просмотр профиля
The bitrate parameter is set too low.It takes bits/s as argument, not kbits/s

Это значит, что у аудио битрейта не поставлена буква k, поэтому указанная цифра была воспринята как 192 бит/с, а не как 192 кбит/с.

В другом твоем сообщении команда составлена неправильно.

Так попробуй
ffmpeg -i Cranford_2.avi -vcodec copy -acodec libmp3lame -ar 44100 -ac 2 -ab 192k cranford_2_mp.avi
Компьютерные плееры должны воспроизвести нормально, а вот хардварный плеер воспроизведет или нет - нужно проверять (для некоторых нужно кодировать через mencoder).

Если эта команда устроит, можно добавить ее в WinFF, чтобы не писать каждый раз название файла вручную.
« Последнее редактирование: 03 Августа 2013, 14:31:48 от Пользователь »

Оффлайн Adriano

  • Автор темы
  • Участник
  • *
  • Сообщений: 186
  • Че
    • Просмотр профиля
Вроде бы буковку надо дописать к -ab 192 (192k надо вроде), ну и если пишет, что низкий битреейт - поднимите, например 224 поставьте. И еще как-то не нравиться мне (ИМХО) фрагмент "-f mp3", может заменить на -acodec libmp3lame?

ffmpeg -i Cranford.avi -vcodec copy -ar 44100 -ac 2 -ab 192k -acodec libmp3lame cranford_2_mp.avi

О! Другое дело! ТАК работает! И кодировка немного времени занимает. Спасибо Вам, Lego777, и всем ответившим в теме.

С MEncoder тоже интересно разобраться. Но попробую чуть позже.

------

Ещё такой вопрос. В фильме две звуковых дорожки. Русская и английская. Командой, которая процитирована выше, перекодируется только одна. И на выходе получился файл с одной русской звуковой дорожкой в формате МР3. Что и требовалось, в общем-то.

Чисто теоретически интересно. А можно в итоговый файл включить несколько звуковых дорожек?

Пользователь решил продолжить мысль 03 Августа 2013, 14:43:53:
Компьютерные плееры должны воспроизвести нормально, а вот хардварный плеер воспроизведет или нет - нужно проверять (для некоторых нужно кодировать через mencoder).
Спасибо и за ваше обьяснение! Проверил на плеере. Воспроизводит хорошо.
« Последнее редактирование: 03 Августа 2013, 14:43:53 от Adriano »
Kubuntu 22
adri-an.livejournal.com

Оффлайн Пользователь

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 2700
  • Runtu XFCE 18.04 (64-bit)
    • Просмотр профиля
Ещё такой вопрос. В фильме две звуковых дорожки. Русская и английская. Командой, которая процитирована выше, перекодируется только одна. И на выходе получился файл с одной русской звуковой дорожкой в формате МР3. Что и требовалось, в общем-то.

Чисто теоретически интересно. А можно в итоговый файл включить несколько звуковых дорожек?

Сначала смотришь информацию о файле
ffmpeg -i Cranford.avi

там будет написано
Stream #0.0 video
Stream #0.1 audio (rus)
Stream #0.2 audio (eng)


то есть при кодировании укажешь какие нужно взять (-map 0:0 -map 0:1)

ffmpeg -i Cranford_2.avi -map 0:0 -map 0:1 -vcodec copy -acodec libmp3lame -ar 44100 -ac 2 -ab 192k cranford_2_mp.avi
« Последнее редактирование: 03 Августа 2013, 15:14:30 от Пользователь »

Оффлайн Adriano

  • Автор темы
  • Участник
  • *
  • Сообщений: 186
  • Че
    • Просмотр профиля
Пользователь, с той командой, которую вы написали, получилась только одна дорожка в фильме. 1-ая, русская.
Kubuntu 22
adri-an.livejournal.com

 

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