PDA

Просмотр полной версии : Возможно ли в VirtualDub совершить подгонку звука?


Mic
18.06.2008, 20:27
Возможно ли в VirtualDub совершить подгонку звука?
Подробнее: весь фильм и изображение и звук идут нормально, и где-то минут за десять до конца фильма звук стал спешить, а изображение осталось в нормальном режиме.
Возможно ли в VirtualDub изменить всё на норму?
Если да, то может кто-нибудь обьяснит мне как. Только шаг за шагом, подробно, а то я дилетант...
И именно в VirtualDub, а не в VirtualDubMod.

Dimon_
18.06.2008, 20:46
"В лоб" - видимо невозможно. Любой из Дабов умеет работать со звуковым потоком только целиком в файле, не по кусочкам. т.е. можно сдвигать ВЕСЬ поток относительно видеоряда вперёд (опережение) или назад (запаздывание).

Я бы делал Вашу задачу всё-таки как-то по-другому. Дабом выгнал бы поток во внешний WAV-файл, а уж его бы кромсал на нужные куски и двигал их в каком-нибудь звуковом редакторе. И уже поправленный WAV-файл снова бы подцепил в Дабе к изображению.

Есть, правда, идейка, как решить Вашу проблему только Дабом. :)
Но уж больно "акробатически" получается. Во внешнем звуковом редакторе проще и нагляднее, ИМХО.

agor
18.06.2008, 20:59
Если спешка не прогрессирующая, разрезаете на 2 куска (до спешки и после), и вставляете в кусок со спешкой задержку по звуку (VDmod->Stream->Stream List->R Click->Interleavig->Delay audio track). Если OK, склеиваете назад.

Dimon_
18.06.2008, 21:24
agor, вот под "акробатически" нечто подобное я и имел в виду. Но Вашим методом может тоже не получиться. Всё дело в том, что Дабы, сдвигая аудиопоток, не заполняют освободившиеся участки ничем, они только ставят значение, насколько надо задерживать или опережать.

Не очень понятно выразился, да? Ну вот, допустим, есть у нас фрагмент. Мы ставим задержку в 10 мс. Это значит, что при воспроизведении сначала будет 10 мс пауза, а в конце будет 10 мс излишек. Излишек Даб отрежет. А в начале паузу не заполнит ничем. Просто выставит значение для задержки.
И этот фрагмент, сам по себе, взятый отдельно, будет играться нормально. Но как только Вы его подклеете в конец какого-либо другого фрагмента, с правильными синхронами, эта дырка опять стащит на себя весь следующий за ней аудиопоток. В итоге не получится вообще никакого результата.
Поэтому нужна "акробатика". Я ж говорю - проще в аудиоредакторе. :)

agor
18.06.2008, 21:29
agor, вот под "акробатически" нечто подобное я и имел в виду. Но Вашим методом может тоже не получиться. Всё дело в том, что Дабы, сдвигая аудиопоток, не заполняют освободившиеся участки ничем, они только ставят значение, насколько надо задерживать или опережать.

Попробуйте VDM и вы увидите, что это не так. (Конец не доролняется, а начало очень даже)

Dimon_
18.06.2008, 21:50
agor, я всё делаю в VDM. Много лет. В данный момент у меня 1.5.10.2 build 2542. И на эти грабли я наступал. И я знаю, что это так. И я совершенно точно уверен в каждом своём слове.

Попробуйте самостоятельно, в качестве домашнего задания...
1. Возьмите маленький кусочек видео+звук.
2. Выставьте audio skew correction, ну, скажем в 1000 мс. Для наглядности.
3. Проиграйте несколько раз, чтобы убедиться, что в начале идёт секундная тишина.
4. Сохраните его в режиме direct sream.
5. Откройте ещё раз. В очередной раз убедитесь, что в начале идёт секундная тишина. Никуда она не делась. Так?
6. Теперь сохраните аудиопоток в wav-файл.
7. Откройте этот wav-файл любым звуковым редактором.
8. Ахалай-махалай. Ляськи-масяськи! Удивлены? Паузы как не бывало!
9. Секрет фокуса прост - в начале и не было никакой паузы. Никто её ничем не заполнял. Хотя при проигрывании такого фрагмента пауза-таки, да, будет.

agor
19.06.2008, 15:53
я всё делаю в VDM. Много лет
Да я тоже его не вчера увидел. :)
6. Теперь сохраните аудиопоток в wav-файл.
Смысл? Работа с WAV не интересна ибо перекодирование.
Попробуйте самостоятельно, в качестве домашнего задания...
Не в школе вроде. Чем заниматься ерундой уж лучше ... сделаю что-нибудь полезное для архива. :)

Поробуйте взять кусок видео со звуком. Сдвинте звук и сохраните. Далее склейте его с исходником. По вашей версии паузы в звуке быть не должно.
Можно попробовать еще одну вещь. Возьмите видео и значительно сдвинте звук. Отрежте кусок < задержки. Исходя из вашей логики - звука не должно вообще быть. А он есть. И даже демуксится и не нулевой длины.

Dimon_
19.06.2008, 16:05
Возьмите видео и значительно сдвинте звук. Отрежте кусок < задержки. Исходя из вашей логики - звука не должно вообще быть. А он есть. И даже демуксится и не нулевой длины.

Э-хе-хе. Это называется "Подмена смысла" и "Выдавание оппоненту его же слов, в качестве своего аргумента".

Ладно. Закончим разговор.
Работайте в VDM. И я тоже в нём буду работать. И пусть каждый из нас, согласно вашим словам, делает, по мере возможности, что-то полезное для Архива.

troll
19.06.2008, 17:18
Dimon_ прав. При приклеивании в VDM avi-шки со сдвинутым звуком к другой avi-шке пауза теряется.

Uswer
19.06.2008, 18:48
agor, Dimon_, спокойнее :)

Turtle
19.06.2008, 19:20
Попробовал через frameserver — вроде работает, т.е. выгоняем звук в wav, вешаем прямопотоковый исходник без звука frameserver'ом, открываем его в новом окне, подключаем этот wav, находим около проблемного места тихое, останавливаем framesever, заходим в него и вырезаем на том месте несколько кадров, затем снова его пускаем, переоткрываем в рабочем окне, слушаем и смотрим, что получилось, и т.д.

Т.е. в этом способе wav останется той же длины, а в нужных местах становится возможным оперативно вставить/удалить кадры.

agor
20.06.2008, 16:05
Да я тоже его не вчера увидел.
Лучше бы я таки только вчера его увидел. Было бы хоть оправдание.

to Dimon_
"Был неправ. Вспылил. Считаю свои действия безобразной ошибкой. Буду искать повод загладить свою вину"

Dimon_ ты ПРАВ!!!

Dimon_
20.06.2008, 16:37
agor, не берите в голову. http://kolobok.us/smiles/light_skin/don-t_mention.gif
Нет. На самом деле. Проблема не стóит того, чтобы об неё ломать копья.
Повторю фразу, предложенную выше - давайте лучше, по мере возможности, будем делать что-то нужное для Архива. А какими инструментами - дело десятое. http://kolobok.us/smiles/light_skin/preved.gif

Ищинкум
20.06.2008, 16:49
http://kolobok.us/smiles/light_skin/preved.gif http://www.kolobok.us/smiles/standart/rofl.gif

agor
20.06.2008, 17:01
agor, не берите в голову.
Не получится. Мало того, что уверенно нес глупость, так вот теперь сижу вспоминаю где мог накосячить и оно попало в архив.
(Плохо, что при этом скипается или ускоряется видео, а при малых (плюсовых) задержках не в начале это не очень заметно)

Dimon_
21.06.2008, 12:46
Если есть серьёзные косяки - пользователи о них пишут в разделе обсуждения качества рипов, это раз. Содержимое Архива постепенно обновляется, это два.
И, три, ну какой смысл Вам сейчас себя накручивать, если сырцов этого всё равно не осталось...

Kinoman
24.08.2008, 12:48
Если не в тему,то извиняюсь,как можно или в каком редакторе ускорить звуковую дорожку?Вопрос с тем возник,что оригинальную взяли скорость уменьшили на 18ms и теперь ни Vdub,ни его модом не могу подогнать ее к видео.В Sony Sound Forge нашел опцию только уменьшения скорости,я в тупике.

Dimon_
24.08.2008, 13:11
Kinoman, именно в Sony Sound Forge теоретически и надо.

Если речь идёт об изменениях по времени меньше нескольких секунд, то изменения тона будут практически не слышны. Поэтому Effects/Pitch/Shift. Двигаете полоску "Cents", при УБРАННОЙ галке Preserve duration.

Вообще там есть Process/Time Stretch. Изменение как раз времени звучания без изменения тона.

Но. В данном конкретном случае я бы действительно не стал использовать Sound Forge, и вот почему. У него очень грубое округление времени результата. Т.е. плюс-минус 1/10 секунды. Второй знак после запятой, не точне. А у Вас речь о 18ms. Так точно он не сделает.
Есть более тонкий и точный инструмент для такой работы: Prosoniq TimeFactory. Работает дольше, но результат всегда изумительный. Ссылок не даю, не обижайтесь. Софт далеко не фриварный, а публикация лекарств здесь - оффтопик.

Kinoman
24.08.2008, 14:21
Dimon ,у меня Sony Sound Forge руссифицирован и поэтому я не нашел этого :(
Мне вообще надо ускорить на 18ms,эти все вышеперечисленные действия помогут в этом?

Likurg
04.04.2009, 20:29
Я в VirtualDube синхронизировал и получается отлично. Что касается пустых мест, то если видео и аудио отличается по длине, вам никакой звуковой редактор не поможет.

Dimon_
05.04.2009, 01:42
Likurg, поможет-поможет. Важно только знать, почему они отличаются по длине. Если звуки и видео совсем отличаются, потому что в принципе различны (скажем видео от зарубежного фильма, а звук от дублированной дорожки, из которой цензура половину сцен выкинула), - то де, звуковой

Dimon_
05.04.2009, 01:44
Likurg, поможет-поможет. Важно только знать, почему они отличаются по длине. Если звуки и видео совсем отличаются, потому что в принципе различны (скажем видео от зарубежного фильма, а звук от дублированной дорожки, из которой цензура половину сцен выкинула), - то да, звуковой редактор не поможет, тут в монтажке надо сцены резать.
А если не совпадает, потому что есть разбег или смещение (из-за того, скажем, что лента была 24 кадра в секунду, а плейер 25) - то очень поможет. см сообщение #18 в этой ветке.