LINUX.ORG.RU

аналог MeGui или как растягивать и сжимать аудио по времени.

 , , , ,


0

1

Доброго времени суток!

Подскажите пожалуйста утилиту для ускорения (замедления) аудио. Чтобы само всё автоматом высчитывалось, а не требовалось производить математические расчёты. Хочу взять дорожку аудио от dvd и прикрутить к видео от блюрея. В MeGui такая функция была, но она только для винды. Нужен аналог на *nix, можно и консольную.



Последнее исправление: AnnaS (всего исправлений: 1)

Если не хочется копаться в разделе media, в котором тонны программ, то для инертных есть Wine, чтобы запустить MeGui.

anonymous
()
Ответ на: комментарий от anonymous

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

На счет вайна, как то это не комильфо. Вайн он всё таки больше для игр от безысходности, а для софта хотелось бы под nix.

AnnaS
() автор топика
Ответ на: комментарий от AnnaS

Задача все равно специфическая. Педивикия говорит, что эта программа видеоредактор. Есть cinelerra, avidemux, makemkv с mkvtoolnix и даже blender можно для монтажа взять. А вообще VLC может нужную дорожку проигрывать параллельно, так что конвертировать не обязательно, если это одно и то же видео и время совпадает.

anonymous
()

Чтобы само всё автоматом высчитывалось, а не требовалось производить математические расчёты. Хочу взять дорожку аудио от dvd и прикрутить к видео от блюрея.

ffmpeg, читать ЕМНИП про опцию -async.

anonymous
()
Ответ на: комментарий от anonymous

Спасибо за наводку. Правда там пишут, что надо задавать временные метки. Как пример приводят: aresample=async=1000, я так и не поняла откуда это значение и какое мне ставить. Пошла читать ман по ffmpeg.

AnnaS
() автор топика
Ответ на: комментарий от AnnaS

Тема тянет на развод лохов с претензией на всезнайство и желание помочь. Иными словами искуственная проблема, потому что дальше нет решения. Лучше б просто в толксах написала «ище наивного клоуна, который настолько наивен, что всегда верит женщинам». Ну хотя бы честно можно было написать, а то все почуявшие неладное сразу свалили подальше.

anonymous
()

Извлекаешь через ffmpeg обе аудиодорожки (с блюрика и с dvd)

ffmpeg -drc_scale 0 -i video.mkv -map 0:1 -c:a pcm_f32le -ac 2 -async 1 audio.wav

DVD предварительно упаковать в один mkv программой MakeMKV, она бесплатная, но во время бета тестирования требуется, чтобы либо версия всегда была свежей, либо надо вводить публичный ключ, который публикуется у них на форуме
-map 0:1 выбор дорожки. 0:1 значит первый файл, вторая дорожка (первая дорожка обычно видео). Нумерация начинается с нуля.
-ac 2 даунмикс в стерео. Если нужен многоканал -ac 2 убрать, но тогда желательно выводить в pcm_s24le

Смена скорости:

sox input25.wav output23976.wav speed 0.95904095904
или
sox input25.wav output23976.wav tempo 0.95904095904
(tempo - с сохранением исходной тональности, не рекомендуется! процесс очень болезненный)

Коэффициенты:
25>23.976 = 0.95904095904
23.976>25 = 1.04270833333
25>24 = 0.96
24>25 = 1.04166666666

Формула: fps конечная / fps начальная
23.976 на самом деле 24000/1001, то есть ~23.976023976

В Audacity добавляешь две дорожки (с блюрея и с dvd после перетягивания) и проверяешь синхронность. Может, в начале надо подрезать или тишину добавить (в dvd дорожке, блюрик не трогаешь!). Перетягивать умеет и Audacity, но в старых версиях (2.1) у него недостаточная точность при вводе значений, всего три цифры после запятой.
Экспортируешь. Можно сжать в Audacity при экспорте. Можно вывести WAV PCM и сжать потом в ffmpeg. Например:

ffmpeg -i input.wav -c:a libopus -b:a 192k output.opus

Вместо libopus еще есть libvorbis (расширение ogg), aac (расширение m4a), ac3, libmp3lame

Потом в MKVToolnix муксишь видео с новой аудиодорожкой.

Можно звук не обрабатывать, а для видео прописать новый fps без пересжатия в MKVToolnix. Но процедуру проверки синхронизации все равно желательно провести, чтобы убедиться, что BluRay и DVD отличаются только разной скоростью и больше нет других отличий.

anonymous
()

megui — GUI для AviSynth. Под Linux можно использовать VapourSynth.

Речь идёт о реальном ускорении/замедлении аудио, или о замедлении и ускорении средствами контейнера (и демуксера, впоследствии), без реального изменения дорожки? Если первое, то это можно сделать любым редактором аудио.

ValdikSS ★★★★★
()
Ответ на: комментарий от ValdikSS

MeGUI это GUI для много чего. VapourSynth не поддерживает звук и бинарно представлен на Linux очень плохо, вплоть до того, что проще в Wine запустить.

замедлении и ускорении средствами контейнера

Не думаю, что ТС знал(а) такие тонкости. Растягивать звук средствами контейнера обычно не рекомендуют - можно поиметь проблемы, кроме того эта растяжка никак не идентифицируется в MediaInfo и о ней можно только догадываться. По возможности лучше перенести коррекцию на видео в обратную сторону.

Хотя, MPC-HC нормально переваривает такие звуковые дорожки (изменяет fps видео при переключении на них), на железные плееры люди жалуются. Остальные плееры надо проверять. Обычно звуковые дорожки имеют скорость 23.976, к ней вполне можно привести. Однако имейте в виду: замедления ниже оригинального тона переносятся на слух гораздо хуже, чем ускорение. Поэтому PALовские русские озвучки лучше в 23.976 не тянуть. Впрочем, в плеерах можно менять скорость как угодно, чтобы вернуть оригинальную скорость. Главное, сохранение тона, которое у них в моде, отключить. В SMPlayer за это отвечает настройка --audio-pitch-correction=no

anonymous
()
Ответ на: комментарий от ValdikSS

AviSynth. Под Linux можно использовать

Вообще-то AviSynth 2.5.8 портирован под Linux. Просто без плагинов (которые надо портировать отдельно) он не имеет смысла, ffmpeg даже больше уже умеет. Но для звука может и сойдет.

Называется AvxSynth https://github.com/avxsynth/avxsynth

anonymous
()
$ rubberband

Rubber Band
An audio time-stretching and pitch-shifting library and utility program.
Copyright 2007-2018 Particular Programs Ltd.

   Usage: rubberband [options] <infile.wav> <outfile.wav>

You must specify at least one of the following time and pitch ratio options.

  -t<X>, --time <X>       Stretch to X times original duration, or
  -T<X>, --tempo <X>      Change tempo by multiple X (same as --time 1/X), or
  -T<X>, --tempo <X>:<Y>  Change tempo from X to Y (same as --time X/Y), or
  -D<X>, --duration <X>   Stretch or squash to make output file X seconds long

  -p<X>, --pitch <X>      Raise pitch by X semitones, or
  -f<X>, --frequency <X>  Change frequency by multiple X

  -M<F>, --timemap <F>    Use file F as the source for key frame map

A map file consists of a series of lines each having two numbers separated
by a single space.  These are source and target sample frame numbers for fixed
time points within the audio data, defining a varying stretch factor through
the audio.  You must specify an overall stretch factor using e.g. -t as well.

...
anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.