LINUX.ORG.RU

Как добавить тишину в видеоролик.


0

1

Есть некоторое видео. Есть некоторое аудио.

Задача - склеить их так, чтобы аудио в видео играло через 6 секунд.

Всё.

И вот с этой задачей я мучаюсь уже несколько часов. -audio-delay в mencoder НЕ работает, просто сминает видео в начале. Как добавить в mp3-шку 6 секунд тишины, я даже не представляю, вот даже sweep поставил, смотрю в него, и понять не могу - а что нажать-то, чтобы в начало 6 секунд тишины добавить?

Учитывая, что до завтра мне нужно снять 4 ролика, а то всё день рождения пропущу, спал я последний раз, по-моему вчера, или позавчера, и в ближайшие сутки не планирую, то я просто не могу никак сообразить, как проще и правильнее решить эту задачу. Готовые рецепты приветствуются.

Кстати, -ss тоже не работает, оно сдвигает каждый раз на какую-то только ему понятную величину :(

Интересуют только консольные средства, которые можно в скрипт загнать и цифры подгонять, gui средства не интересуют вообще.

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

Неужели сложно дать одну строчку на 15 байт вместо вот такого заявления? Я уже 4 часа пытаюсь разобраться, как это действует, но до сих пор не приблизился к решению ни на миллиметр.

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

Набираем man sox, жмем / для поиска, вводим silence, при помощи клавиш n и PgDwn перемещаемся по ману, пока не найдем нужную опцию: pad. Т.е. для того, чтобы добавить 6 секунд в самое начало файла, нужно написать

sox infile outfile pad 6@0:0

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от movietrouble

по русски же написано, что не так. если в репах нету другого, собери сам из исходников.

silw ★★★★★
()

Задача - склеить их так, чтобы аудио в видео играло через 6 секунд.

Элементарно делается через mkvmerge.

$ mkvmerge -I Djib4_OP.video.mkv
File 'Djib4_OP.video.mkv': container: Matroska [duration:123500000000]
Track ID 1: video (V_MPEG1) [language:und display_dimensions:1024x576 default_track:1 forced_track:0]

$ mkvmerge -I Djib4_OP.audio.mkv
File 'Djib4_OP.audio.mkv': container: Matroska [duration:123506933202]
Track ID 1: audio (A_MPEG/L2) [language:und default_track:1 forced_track:0]

$ mkvmerge -o Djib4_OP.mkv Djib4_OP.video.mkv --sync 1:6000 Djib4_OP.audio.mkv
mkvmerge v4.4.0 ('Die Wiederkehr') built on Nov  9 2010 23:01:44
'Djib4_OP.video.mkv': Using the Matroska demultiplexer.
'Djib4_OP.audio.mkv': Using the Matroska demultiplexer.
'Djib4_OP.video.mkv' track 1: Using the MPEG-1 video output module.
'Djib4_OP.audio.mkv' track 1: Using the MPEG audio output module.
The file 'Djib4_OP.mkv' has been opened for writing.
Progress: 100%
The cue entries (the index) are being written...
Muxing took 7 seconds.

У опции --sync часть до двоеточия — track id в следующем за опцией файле, часть после двоеточия — задержка в миллисекундах. Аналогично можно поступить с любым треком в файле с несколькими треками:

$ mkvmerge -I Djib4_OP.mkv
File 'Djib4_OP.mkv': container: Matroska [duration:129507000000]
Track ID 1: video (V_MPEG1) [language:und display_dimensions:1024x576 default_track:1 forced_track:0]
Track ID 2: audio (A_MPEG/L2) [language:und default_track:1 forced_track:0]

$ mkvmerge -o Djib4_OP.2.mkv --sync 2:-6000 Djib4_OP.mkv
mkvmerge v4.4.0 ('Die Wiederkehr') built on Nov  9 2010 23:01:44
'Djib4_OP.mkv': Using the Matroska demultiplexer.
'Djib4_OP.mkv' track 1: Using the MPEG-1 video output module.
'Djib4_OP.mkv' track 2: Using the MPEG audio output module.
The file 'Djib4_OP.2.mkv' has been opened for writing.
Progress: 100%
The cue entries (the index) are being written...
Muxing took 5 seconds.

За подробностями естественно лучше обратиться к документации.

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

Также интересует, как склеить два ogg файла в один.

Опять же можно через mkvmerge:

$ mkvmerge -I bgm02.ogg
File 'bgm02.ogg': container: Ogg/OGM
Track ID 0: audio (Vorbis)

$ mkvmerge -I bgm03.ogg
File 'bgm03.ogg': container: Ogg/OGM
Track ID 0: audio (Vorbis)

$ mkvmerge -o bgm.mka bgm02.ogg +bgm03.ogg
mkvmerge v4.4.0 ('Die Wiederkehr') built on Nov  9 2010 23:01:44
'bgm02.ogg': Using the OGG/OGM demultiplexer.
'bgm03.ogg': Using the OGG/OGM demultiplexer.
'bgm02.ogg' track 0: Using the Vorbis output module.
'bgm03.ogg' track 0: Using the Vorbis output module.
No append mapping was given for the file no. 1 ('bgm03.ogg'). A default mapping of 1:0:0:0 will be used instead. Please keep that in mind if mkvmerge aborts with an error message regarding invalid '--append-to' options.
The file 'bgm.mka' has been opened for writing.
Appending track 0 from file no. 1 ('bgm03.ogg') to track 0 from file no. 0 ('bgm02.ogg').
Progress: 100%
The cue entries (the index) are being written...
Muxing took 0 seconds.

$ mkvmerge -I bgm.mka
File 'bgm.mka': container: Matroska [duration:259105661190]
Track ID 1: audio (A_VORBIS) [language:und default_track:1 forced_track:0]

Если потом нужно вытащить получившейся ogg, то:

$ mkvextract tracks bgm.mka 1:bgm.ogg
Extracting track 1 with the CodecID 'A_VORBIS' to the file 'bgm.ogg'. Container format: Ogg (Vorbis in Ogg)
Progress: 100%

$ mkvmerge -I bgm.ogg
File 'bgm.ogg': container: Ogg/OGM
Track ID 0: audio (Vorbis)
Sion
()
Ответ на: комментарий от stormy

Тем, что всё запускается одним скриптом. Естественно, меня не устроит не первый вариант, не пятый, нужно будет много вариантов перебирать, чтобы сделать лучший. И поэтому любые ковыряния вручную - это просто мешает. Проще запустить один скрипт, который сделает весь процесс создания видео, чем каждый раз ковырять что-то вручную.

Короче, два ролика остались без звука, ну и фиг с ними. Теперь такой простой вопрос - какой есть swf плеер, который может играть видео? Максимально простой, без всяких javascript, чтобы можно было подать из html три параметра - ширину, высоту и имя файла, и чтобы он их играл?

movietrouble
() автор топика

Бомм-бомм-бомм. Успел. Правда, к двум роликам так звук и не прикрутил.

Вот они, кстати:

http://sob.xp3.biz/20038/splash.flv

http://sob.xp3.biz/20038/video1.flv

http://sob.xp3.biz/20038/video2.flv

http://sob.xp3.biz/20038/video3.flv

первый: imagemagick, mencoder, lame, трава нарисована в tuxpaint

второй: recordmydesktop, sox, lame, mencoder

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

Теперь такой простой вопрос - какой есть swf плеер, который может играть видео?

Зачем вам прошлый век? Перекодируйте видео в теору и подключайте <video src="...«>. В стандартах можете посмотреть другие свойства этого тега. Полноэкранный режим работает отлично.

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