Версия для печати темы

Нажмите сюда для просмотра этой темы в оригинальном формате

Форумы RDA _ Общие вопросы _ Синхронизация звуковых дорожек

Автор: Mantisby Четверг, 29 Ноября 2007, 15:51

Хотелось бы, чтобы люди, у которых есть существенный опыт в синхронизации звуковых дорожек, поделились им. Это значительно сложнее, чем добавлять субтитры, по моему опыту. Вот какие проблемы возникали у меня:

1. Синхронизация в случае если звук и видео записаны разных форматах (PAL <-> NTSC).
2. Синхронизация если звук вроде в одном формате, но постоянно убегает/отстает.
3. Какие программы можно использовать.

Я пробовал открывать обе дорожки одновременно в GoldWave и искать одинаковые места в них. Долго и муторно, особенно непонятно что делать, если звук постоянно прыгает в разные стороны.

Автор: kvappa Четверг, 29 Ноября 2007, 16:28

2 userinfoMantisby:
1. Тут более-менее просто. Обычно делаю так: декодирование через BeSweet с изменением FPS на лету. Потом, получившиеся 6 каналов грузятся в Soft Encode и кодируются там. Уровень кадого канала предварительно поднимается где-то на 2,5dB. Вопрос с прочими настройками Soft Encode - отдельная тема для дискуссий и споров. smileold.gif
Сам Besweet кодирует хуже, имхо.

2. Это долго и муторно почти в любом случае. Лучше это понимать сразу. Как - думаю это еще обсудим.

3. Кроме вышеупомянутых, использую Samplitude - довольно мощная и не сказать что простая профессиональная прога. Другие пользуются иными программами. smileold.gif

Автор: Mantisby Четверг, 29 Ноября 2007, 16:59

QUOTE(kvappa @ Четверг, 29 Ноября 2007, 16:28)
2 userinfoMantisby:
1. Тут более-менее просто. Обычно делаю так: декодирование через BeSweet с изменением FPS на лету. Потом, получившиеся 6 каналов грузятся в Soft Encode и кодируются там. Уровень кадого канала предварительно поднимается где-то на 2,5dB. Вопрос с прочими настройками Soft Encode - отдельная тема для дискуссий и споров. smileold.gif
Сам Besweet кодирует хуже, имхо.
*


Помнится хотел я Затойчи собрать, где надо было это сделать. Если не изменяет память, то там это всё не просто. Сначала надо на 6 каналов разложить, потом через lst файл подсунуть это Бисвиту, потом перекодировать, потом Закодировать обратно. И на каком-то шаге у меня глюк вылез, в результате получился свист во всех каналах. ПОтом не было времени разобраться.

Автор: kvappa Четверг, 29 Ноября 2007, 19:03

2 userinfoMantisby:
Менять FPS надо прямо на стадии декодирования в 6 отдельных WAV !

Автор: altar Пятница, 30 Ноября 2007, 0:44

Похоже, это выльется в еще одну длинную инструкцию. Буду писать частями.
Сразу оговорюсь, я буду описывать работу с Dolby Didital AC3, но все основные принципы распространяются и на DTS.

По мере возможности, я буду стараться обосновать выбор методов и инструментов. Постараюсь также объяснить теоретическую основу, а не просто дать набор шагов, "шаг влево-вправо - расстрел". Главный принцип - максимально возможное качество результата и пошаговая обработка, с контролем промежуточных результатов. Когда некоторые шаги можно объединить, но в ущерб качеству - я постараюсь кратко упомянуть такую возможность, но не более.

По стандарту ДВД-Видео, в ac3 кодируются звуковые дорожки, оцифрованные на частоте 48 КГц. Файл ac3 состоит из отдельных фреймов, содержащих 1536 выборок, поэтому их длина для ДВД-Видео - 32 мс (=1536/48000). Фреймы самодостаточны и никак между собой не связаны - поэтому ac3 так легко склеивать и резать.

1) Синхронизация без перекодирования.
Ситуации, когда ничего перекодировать не надо. Такое не часто, но бывает. Скажем, есть оригинальная дорожка, есть перевод. Вы внимательно послушали - дорожка с переводом всем хороша, и длина такая же как у оригинала (почти), и уровень громкости такой же или близкий. Одна закавыка - в оригинале есть заставка компании производителя ДВД, а на дорожке с переводом ее нет. И в конце оригинальной дорожки 0.5 сек тишины дополнительно. Нет проблем, можно отрезать заставку и конец у оригинальной дорожки и приклеить к нашему переводу, работая прямо с ac3. Для склейки достаточно бинарной конкатенации, т.е., в Win коммандной строке - "copy /b file1.ac3 + file2.ac3 result.ac3" склеит file1 и file2 в result. Для резки можно использовать BeSplit с GUI WBIAS (использует WinAmp и AC3 winamp плагин для прослушивания), но я сомневаюсь, что таким образом, на слух, можно быстро достичь удовлетворительных результатов. Что я делаю в таких случаях:
а) раскодирую оригинал и перевод в wav (как - см. ниже)
б) в аудио редакторе сравниваю волновые пики и точно нахожу общую часть обеих дорожек. Теперь я точно, до миллисекунд (и даже точнее) знаю, где мне отрезать заставку и где - концовку у оригинала.
в) Время переводится в фреймы (32 мс - 1 фрейм)
г) Резку и склейку произвожу в бинарном редакторе (привык к Hex Workshop). Маркер начала фрейма - 0B77.

2) Синхронизация с перекодированием
Рассмотрим простейший случай - оригинал в NTSC, хотим приклеить дорожку из PAL издания. С удивлением обнаруживаем, что продолжительность фильма в PAL издании на 4% меньше, чем в NTSC и кинотеатре. Прежде, чем приклеить (и прежде, чем синхронизировать), аудио-дорожку надо растянуть. Про это часто говорят, как про смену FPS (частота кадров) с 25 до 23.976, хотя у аудио, разумеется, никаких кадров нет (фреймы ac3 не имеют никакого отношения ни к PAL, ни к NTSC, ни к фреймам видео).

Здесь будет про 4% ускорение, откуда берется и т.д.

Здесь - почему не стоит пользоваться никакими функциями BeSweet, кроме декодирования в 6 32-бит wav (разница между 16 и 32, dither и т.п.) (и почему приходится использовать BeSweet, т.е., Azid, а не декодировщик в Soft Encode). Никакой обработки, никакого изменения громкости и FPS! Растяжение требует весьма сложных алгоритмов, это следует делать в профессиональном аудио-редакторе.

Далее опишем про волновые пики, работу с аудио-редактором. Изменение уровня громкости - чтобы было как в оригинале, как мерить. Про нормализацию диалога в Dolby Digital.

Далее - рассмотрим ползучий, кусочно-сдвиговый рассинхрон. Ускорение синхронизации через мониторинг фазы (коеффициента корреляции).

Под конец рассмотрим обратное кодирование в ac3 с Vegas.

Автор: kvappa Пятница, 30 Ноября 2007, 2:20

2 userinfoaltar:
В том-то и дело, что в Samlitude пробовал разные алгоритмы, но результат после BeSweet показался лучше. Ибо Time Stretching сильнее и заметнее менял тембровую окраску звука, ускоряя или замедляя, а Pitch Shifting делал звучание рваным.
Поэтому очень интересно - какая программа может делать данные операции на более профессиональном уровне!

Автор: ClashClash Пятница, 30 Ноября 2007, 3:22

Согласен с altar - в BeSweet только декодирования в 6 32-бит wav. Все прочее делаю в Вегасе/Саундфордже. Кодирование в АС3 - тот же Вегас или Soft Encode.

Автор: altar Пятница, 30 Ноября 2007, 4:34

Я давно к Samplitude приглядывался, но похоже они только в новой 10-й версии добрались наконец до уровня профессионального редактора. В 9-й, насколько вижу, у них не было таких необходимейших вещей как Timestretching высокого качества и dithering (опять же высокого качества).

Про BeSweet'овский soundtouch (dll, которая делает преобразования звука для BeSweet): это разновидность алгоритма Верхелста WSOLA (Waveform Similarity Overlap-Add). SoundTouch можно использовать отдельно от BeSweet - http://www.surina.net/soundtouch/. WSOLA работает во временной области, беря куски из оригинального звука и накладывая их друга на друга со сдвигом и затуханием. Самый первый алгоритм для растяжки - фазовый вокодер Портнова - работает в частотной области. Проблема со всеми этими чисто математическими алгоритмами, и WSOLA, и вокодером - в том, что они не учитывают особенностей человеческого слуха. Быстрые переходные области размазываются, ритмическая картина нарушается. Кроме того, нарушается фазовая когерентность в стерео.

Насколько я знаю, WSOLA используется в большом количестве любительских прог. Он использовался и в Cool Edit, и я сильно подозреваю, что остался без изменений и в Audition. Насколько я могу понять, Samplitude использовал еще более примитивную методику - разбиения звука на установившиеся и переходные области и скалирования их по отдельности. Для ритмической музыки это работает, потому что transients не размазываются, но в целом это уступает WSOLA. Я бы не удивился поэтому, если обработка с SoundTouch / BeSweet даст лучший результат, чем с Samplitude 9. Что у Samplitude в 10-й версии - кто знает? Да и где ее взять...

Совсем другого класса алгоритмы - это, что создали Серато, http://www.serato.com/products/pnt/faq/, и Просоник, http://mpex.prosoniq.com/. Эти два алгоритма основаны на моделировании того, как человек воспринимает звук. Среди прочего, Serato и MPEX сохраняют когерентность фазы многоканального звука, без чего объемный звук невозможен. Серато является общепризнанным эталоном и обычно используется в Pro Tools. Один этот алгоритм стоит больше, чем Samplitude. MPEX считается 2-м, но близким по качеству к Серато. MPEX встроен в Нуэндо, Кубейс, Сонар и WaveLab.

Много лет уже пользуюсь WaveLab. В 5-й версии меня устраивает почти все, кроме предела в 2 GB на один файл. Этот лимит давно устранен в 6-й версии (и работа с 5.1 звуком улучшена), но с уходом H2O никто, похоже, не в состоянии сделать народный релиз 6-й версии. cwm34.gif

Автор: kvappa Пятница, 30 Ноября 2007, 4:55

2 userinfoaltar:
Спасибо! Весьма любопытно! Samlitude начал пользоваться много лет назад, потому как тогда мне больше ни в одном редакторе не удавалось тягать 6 каналов без их рассинхронизации друг с другом. Далее - уже привычка. Чувствую, пора переходить на более качественные решения, коли дела обстоят вышеозначенным образом. То что бисвит - не идеал, было понятно и так. Динамику он всё-таки прибивал, да - именно размазанность легкая повлялась и объем картины в конечном 5.1 не столь хороший становился, как в оригинале. Не говоря уже о некотором падении уровня громкости.
Надо будет тогда WaveLab попробовать, действительно.
Кстати, а Серато встроен куда-нибудь? И ВэйвЛаба 6-го с аспирином можно даже не искать?

Автор: shurikkein Пятница, 30 Ноября 2007, 10:32

2 userinfoMantisby:

QUOTE
Я пробовал открывать обе дорожки одновременно в GoldWave и искать одинаковые места в них. Долго и муторно, особенно непонятно что делать, если звук постоянно прыгает в разные стороны.

Это действительно очень муторно. Особенно, если дубляж. Для отлова мест, где идет рассинхронизация, я с другой стороны зашёл. Кодирую видео с быстрыми настройками. Потом запихиваю в syncplay. Дальше карандаш, бумага, калькулятор smileold.gif
можно сравнивать фильмы с разной частотой кадров.
Естественно, предполагается, что в обоих исходниках нет рассинхронизации звука с видео.

Автор: Mantisby Пятница, 30 Ноября 2007, 10:57

QUOTE(kvappa @ Пятница, 30 Ноября 2007, 4:55)
2 userinfoaltar:
ВэйвЛаба 6-го с аспирином можно даже не искать?
*

да, бесполезно

Автор: kvappa Суббота, 01 Декабря 2007, 2:01

А может кто-нибудь рассказать про AC3 Encoder (присутствующий в пакете Sonic Solutions Scenarist)?
Что за зверь и насколько хорош или плох результат кодирования в нем?

Автор: altar Суббота, 01 Декабря 2007, 3:07

Все официальные кодировщики от Долби - одинаковые. Отличаются только версией. В некоторых прогах кодировщик официальный, но с отключенными фичами. В любом официальном будет присутствовать лого Долби - где-нибудь в интерфейсе. Так что, кодировщик в последней версии Сценариста должен быть таким же, что и в последней версии Вегаса. Хотя, там может быть что-то про HD, про это я ничего не знаю.

Автор: Elduderino Понедельник, 03 Декабря 2007, 1:21

Какие параметры для энкодинга рекомендуются в Soft Encode?

Я перевел дубляжную дорогу из AC3 в 6x WAV, перевел их все с WaveLab на 25 fps, и теперь хочу снова свести в AC3, не меняя прочих параметров и характеристик звука.

Автор: altar Понедельник, 03 Декабря 2007, 2:05

Я меряю громкость дорожки с переводом (среднеквадратическое, RMS) в местах, где нет речи/перевода. Если сильно (скажем, > 0.5 дБ) отличается от оригинала - меняю уровень, чтобы уровень громкости совпал. После этого использую те же параметры кодирования, что и в оригинале. Параметры оригинала выдает тот же Soft Encode, только надо проверять внутри самого фильма - в первых фреймах параметры могут быть другие (заставка и проч.).

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

Автор: kvappa Понедельник, 03 Декабря 2007, 2:34

2 userinfoaltar:
А что делаешь с препроцессингом, при этом?
Я его выключаю весь, ибо имхо он звук только портит. Особенно, уже не помню какая из опций, сразу же глушит общий уровень, как только кто-нибудь начинает говорить.

Автор: Elduderino Понедельник, 03 Декабря 2007, 10:57

Еще одна просьба.
У меня почему-то начал глючить Soft Encode, вырубается через несколько секунд после начала кодирования.

Решил воспользоваться советом altar и свести дорожку в Vegas, однако там я не нахожу опций для установки параметров (битрейт, нормализация диалогов, уровень surrounds и center). Есть пресет в Render As..., но его параметры нельзя поменять.

Последним шансом остается BeSweet, но к нему я прибегну только если не останется других альтернатив.

Автор: kvappa Понедельник, 03 Декабря 2007, 16:28

2 userinfoElduderino:

Как именно вырубается Soft Encode? что происходит при этом?
Перезагрузка компьютера не помогает?

Автор: nod Понедельник, 03 Декабря 2007, 17:18

2 userinfoElduderino:
Дополню...
Все же на мой взгляд надо учится делать все в Vegas-е. Были случаи когда простая смена fps не помогала...

Автор: Elduderino Понедельник, 03 Декабря 2007, 17:26

QUOTE(kvappa @ Понедельник, 03 Декабря 2007, 14:28)
2 userinfoElduderino:

Как именно вырубается Soft Encode? что происходит при этом?
Перезагрузка компьютера не помогает?
*


Не помогает. Soft Encode начинает работать, показывает окошко прогресса со счетчиком Elapsed Time. Затем появляется счетчик Remaining Time (показывает, что работы часа на полтора), но секунды через три весь процесс программы бесследно исчезает.

Попробую сегодня сделать через Batch, может сработает так.

Автор: bubamara Понедельник, 03 Декабря 2007, 18:03

Мои пять копеек.

Синхронизацию делаю в Audition. В multitrack view загружаются все интересующие wav (дорожка-пациент и дорожка-эталон) и - вперёд:

1. Общая оценка длительности дорожек, формы сигнала и его уровня. Перевожу - сидим и втыкаем в то, что видим на экране, настраиваясь на предстоящую работу.

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

3. Визуальный контроль результата по волновой форме и контроль на слух в ~10 точках как между контрольными, так и за их пределами. Если всё в порядке - прыгаем от счастья и переходим к п.8. Этот вариант по везению примерно равнозначен угадыванию всех номеров в "спортлото". Настраиваться на него не надо - это как Божий дар.

4. Если при совпадении звука в контрольных точках между ними или снаружи есть рассинхронизация - значит, в синхронизируемой дорожке (пациенте) другой сюжет - или что-то вырезано или что-то лишнее.

5. Сужаем диапазон между контрольными точками, повторяем п.2 - п.4 пока не находим достоверный (максимально продолжительный!) контрольный диапазон, внутри которого всё совпадает. По этому диапазону делаем вторую итерацию ресэмплинга всей дорожки - с нуля, отменив первую, чтобы не терзать лишний раз пациента. Действие основывается на предположении, что разница в "скорости" пациента и эталона - постоянна на всём протяжении фильма. Обычно это бывает так.

6. Делаем пробные разрезы и совмещаем ещё несколько участков, чтобы проверить верность предположения, на котором закончился п.5 Допустим, оно верное (иначе предстоит альтернативный секс с кусочным ресэмплингом пациента).

7. Вырезаем из пациента лишнее и добавляем недостающее. Как вырезать - понятно, а вот добавление - задача творческая. Можно использовать звук из эталона, но это слабо приемлемо при разном уровне и характере сигнала, а также в многоканальном звуке. Если другого варианта нет - приближаем характеристики нужного куска эталона к пациенту и вживляем в последнего.

8. Проверяем звук в начале (заставки кинокомпаний) и в конце (титры). При необходимости подрезаем пациента до размера эталона или, если пациент короче, - добиваем его спереди и сзади пустыми вавами - строго опционально, для красоты и единообразия.

9. Оставляем на столе Audition только нужные треки и экспортируем mixdown в wav (или, при необходимости - несколько дорожек, каждую - в отдельный wav).

Всё.

Разборка - tranzcode или DVD Audio Extractor. BeSweet не использую по причине ужасного алгоритма ресэмплинга. И никому не советую конвертировать fps автоматом через BeSweet - это как раз случай "простого и неправильного" решения, поскольку падение качества при этом заметно даже среднему уху.

Сборка DD - Soft Encode, сборка DTS - Minnetonka DTS Pro Coder. В Soft Encode отключается весь улучшайзинг, "dialog normalization" выставляется в то же значение, что было у оригинала.

Общее правило - минимум последовательных операций над звуковым файлом.

Отдельная песня - удаление шумов и т.п. Тут всё совсем творчески. Из-за сильного ветвления задачи, описание её решения - очень объёмно. Так что лучше познавать самому - методом чтения хелпа к Audition (по крайней мере), проб и ошибок.

Автор: Elduderino Понедельник, 03 Декабря 2007, 18:21

Полезная вещь, bubamara!

А как вы справляетесь с запоминанием последовательности операций над одной дорожкой, чтобы перевести их и на остальные? (если это мультиканальный проект)? Ручками?

И еще раз мой вопрос: существует ли альтернатива Soft Encode для создания качественного (!) мультиканального AC3 с возможностью выставлять свои настройки (битрейт, нормализация диалогов, понижение по center/rear)?

Автор: bubamara Понедельник, 03 Декабря 2007, 19:54

QUOTE(Elduderino @ Понедельник, 03 Декабря 2007, 18:21)
А как вы справляетесь с запоминанием последовательности операций над одной дорожкой, чтобы перевести их и на остальные? (если это мультиканальный проект)? Ручками?


Интересующие wav, стоящие рядом в мультитреке, идентично режутся и растягиваются. Наверное, можно макро написать, но, к счастью, сложная подгонка 5.1 звука - случай исключительно редкий.

QUOTE
существует ли альтернатива Soft Encode для создания качественного (!) мультиканального AC3 с возможностью выставлять свои настройки (битрейт, нормализация диалогов, понижение по center/rear)?
*

Для глобальных проектов, делающихся полностью в одной среде (например, для домашнего видео) использую Minnetonka Dolby Digital Encoder for Adobe Premiere Pro 2.0 - поток видео, конечно, отгружаю в DV для обжатия Канопусом, а вот звук - прямо из Премьера при помощи Миннетонки очень приличный получается. Но насчёт наличия там операций с уровнем фронтов-тылов... не помню.

Автор: ddolgopolov Понедельник, 03 Декабря 2007, 21:08

а обязательно ли каналы разделять в отдельные WAV? почему бы не редактировать один двухканальный?

Добавлено:

QUOTE(Elduderino @ там)
существует ли альтернатива Soft Encode для создания качественного (!) мультиканального AC3 с возможностью выставлять свои настройки (битрейт, нормализация диалогов, понижение по center/rear)?


Nuendo 3? (ну нравится мне эта прога)

Автор: Elduderino Понедельник, 03 Декабря 2007, 22:27

Если каналов всего два - можно и двухканальный. Но если их 6..?

У меня заработал Soft Encode. Ощущение, что исходные WAVы нужно класть на дефрагментированный диск, т.е. в оптимальном случае провести дефрагментацию диска, скопировать их на этот диск, и провести ее снова. И только потом запускать энкодинг.

Автор: ddolgopolov Понедельник, 03 Декабря 2007, 22:44

QUOTE(Elduderino @ там)
провести дефрагментацию диска, скопировать их на этот диск, и провести ее снова

как-то слишком хлопотно blink.gif

Автор: starsoft Понедельник, 03 Декабря 2007, 23:03

QUOTE(Elduderino @ там)
WAVы нужно класть на дефрагментированный диск

Ничего подобного, пользую прогу года 4 и никогда не делал под нее дефрагментацию. Вот что важно - это свободное место на том диске, который используется для временных файлов. Но в случае кодирования из WAV-ов это тоже не слишком критично. Проблема у тебя в системе, а прога - супер.

Автор: Elduderino Понедельник, 03 Декабря 2007, 23:21

Программа-то супер, если б еще не глючила так без предупреждения...
Во всяком случае рецепт с дефрагментацией для меня сработал, и ладно. biggrin.gif

Автор: altar Вторник, 04 Декабря 2007, 0:47

QUOTE(kvappa @ Воскресенье, 02 Декабря 2007, 18:34)
2 userinfoaltar:
А что делаешь с препроцессингом, при этом?
Я его выключаю весь, ибо имхо он звук только портит. Особенно, уже не помню какая из опций, сразу же глушит общий уровень, как только кто-нибудь начинает говорить.
*


В препроцессоре есть разные вещи. Я все оставляю, как есть, по умолчанию.
1) Фильтры. По умолчанию задействованы DC и Low Pass. Оба нужны.
2) -3 дБ attenuation для surround каналов в 5.1. Вот это интересный момент. До сих пор я не задумывался над этим (я, в основном, классикой занимаюсь, т.е. стерео и моно). Я так понимаю, что это нужно, когда делают 5.1 ac3 для двд, т.е., домашнего просмотра, из микса, рассчитанного на кинотеатр. Нужно ли это делать нам при переделке - явно зависит от того, как декодирует BeSweet. Надо посмотреть, не помню.

3) Динамическая компрессия. В отличие от 1) и 2), результат зависит не только от кодировщика, но и от декодера. Если в фильме есть диалог, который должен быть разборчив (т.е., диалога больше, чем просто крики во время драки) и, в то же время, есть очень громкие звуки (типа взрывов), то Film Standard. Если один разговор - Film Light. Если динамический уровень диалога выставлен правильно, то и Динамическая компрессия приводит к хорошим результатам, позволяет разбирать диалог, слышать тихие звуки и не затыкать уши во время взрыва. Другое дело, на российских дорожках с переводом я постоянно обнаруживаю, что уровень диалога выставляется черт-те как, явно кем-то, кто понятия не имеет как этот параметр работает.
Надо глянуть, не помню, как этот параметр определить в имеющейся ac3 дорожке.
Так или иначе, в отличие от 1) и 2), компрессия отключается в усилке (по-крайней мере, если он выдает 5.1 сигнал).

Добавлено:
QUOTE(Elduderino @ Понедельник, 03 Декабря 2007, 2:57)
Еще одна просьба.
У меня почему-то начал глючить Soft Encode, вырубается через несколько секунд после начала кодирования.

Решил воспользоваться советом altar и свести дорожку в Vegas, однако там я не нахожу опций для установки параметров (битрейт, нормализация диалогов, уровень surrounds и center). Есть пресет в Render As..., но его параметры нельзя поменять.

Последним шансом остается BeSweet, но к нему я прибегну только если не останется других альтернатив.
*


В Вегасе все просто - в диалоге Render As достаточно нажать на кнопку Customize и увидите все параметры полного кодировщика Dolby Digital Encoder Pro во всей его красе. Куда более новая версия, чем в Soft Encode, хотя я не уверен, есть ли между ними большая разница по существу.

Автор: Elduderino Вторник, 04 Декабря 2007, 1:03

QUOTE(altar @ Понедельник, 03 Декабря 2007, 22:47)
В Вегасе все просто - в диалоге Render As достаточно нажать на кнопку Customize и увидите все параметры полного кодировщика Dolby Digital Encoder Pro во всей его красе.


У меня "Custom" деактивировано.

http://keep4u.ru/full/071204/92ad1499c6a98bbd75/jpg

Автор: altar Вторник, 04 Декабря 2007, 1:55

Значит не в порядке ac3 плагин. Он активируется отдельно от остального Вегаса - как раз когда щелкаешь на Customize в первый раз. Вот как у меня диалог выглядит, в Вегасе 7:


template по умолчанию называется Default Template, остальные - это то, что я сохранил (т.е., что-то менял в установках)

Добавлено:

QUOTE(ddolgopolov @ Понедельник, 03 Декабря 2007, 13:08)
а обязательно ли каналы разделять в отдельные WAV? почему бы не редактировать один двухканальный?
*


У меня BeSweet выставлен раз и навсегда выдавать шесть 32-бит каналов. Все пустые каналы я сразу удаляю. С точки зрения нормального редактора, нет никакой разницы между двумя файлами, открытыми одновременно, как левый и правый каналы одной дорожки, и одним стерео файлом.

Автор: kvappa Вторник, 04 Декабря 2007, 3:05

2 userinfoaltar:
Да вот в том-то и дело, что что-то из препроцессинга в Soft Encode - звук откровенно портит. Слушаю английскую дорожку, слушаю оригинал русской - музыка на бэкграунде играет с одной громкостью, равномерно. Слушаешь перекодированное: как только начинается диалог - музыка на бэкграунде сразу начинает звучать тише, на первом же слове. Потом уровень опять поднимается, и опять падает. Бесило, помнится, жутко.
Сейчас попробую раскопать про это в архивах форума.

Автор: kvappa Вторник, 04 Декабря 2007, 3:31

2 userinfokvappa:

Ага, нашел таки! Вредитель сельского хозяйства - это "RF Overmudulation Protection"! Из-за него-то громкость и плавает постоянно.

Автор: kvappa Вторник, 04 Декабря 2007, 4:52

Посмотрел на "AC3 Encoder" - он очень похож на чуток проапгрейженый вариант Soft Encode, настройки все те же. Максимальный битрейт - до 640kbps.
Единственный минус - без декодера. Зато на вход принимает и PCM, в том числе.
Да, и графического отображения как в softencode - тоже нет.

В деле - надо проверять, конечно.

Автор: altar Вторник, 04 Декабря 2007, 5:26

QUOTE(bubamara @ Понедельник, 03 Декабря 2007, 11:54)
QUOTE(Elduderino @ Понедельник, 03 Декабря 2007, 18:21)
А как вы справляетесь с запоминанием последовательности операций над одной дорожкой, чтобы перевести их и на остальные? (если это мультиканальный проект)? Ручками?


Интересующие wav, стоящие рядом в мультитреке, идентично режутся и растягиваются. Наверное, можно макро написать, но, к счастью, сложная подгонка 5.1 звука - случай исключительно редкий.

QUOTE
существует ли альтернатива Soft Encode для создания качественного (!) мультиканального AC3 с возможностью выставлять свои настройки (битрейт, нормализация диалогов, понижение по center/rear)?
*

Для глобальных проектов, делающихся полностью в одной среде (например, для домашнего видео) использую Minnetonka Dolby Digital Encoder for Adobe Premiere Pro 2.0 - поток видео, конечно, отгружаю в DV для обжатия Канопусом, а вот звук - прямо из Премьера при помощи Миннетонки очень приличный получается. Но насчёт наличия там операций с уровнем фронтов-тылов... не помню.
*


В WaveLab есть возможность запомнить операции и сделать batch обработку на многих файлах. Но это в самом деле редко нужно.

И Миннетонка и Сони ac3 кодировщики - оболочки вокруг одного и того же Dolby Digital Encoder Pro. Все настройки и результат должны быть идентичны. У Канопусовского Прокодера, в 3-й версии, тоже появился такой же кодировщик. Однако хотя это и простая оболочка, в Прокодере кодировщик пока не работает - выдает все заглушенным децибеллов так на 10. Канопус знает об этом и вроде бы пытается починить.
С Миннетонкой всегда была проблема в том, что keygen для нее появлялся с большим опозданием. Спрашивается, где народная версия для Премьера в CS3?

Автор: altar Вторник, 04 Декабря 2007, 5:42

QUOTE(kvappa @ Понедельник, 03 Декабря 2007, 19:31)
2 userinfokvappa:

Ага, нашел таки! Вредитель сельского хозяйства - это "RF Overmudulation Protection"! Из-за него-то громкость и плавает постоянно.
*


Только я вспомнил, что это надо упомянуть, а уже и сам нашел.

На самом деле, это некая заморочка (а может и баг) в Soft Encode. По умолчанию, RF Overmudulation Protection в нем включено, тогда как во всех более поздних версиях DD Encoder Pro - выключено. Документы от Долби подчеркивают, что по умолчанию это дело должно быть выключено.
Но в Soft Encode дело еще хуже обстоит. В нем нет отдельных установок компрессии для line и RF, хотя внизу там видны два рисуночка, которые иллюстрируют разные виды компрессии в обеих модах - line и RF. Галочка "RF Overmudulation Protection" стоит под выбором моды и "как-бы" относится и к line и RF. По всем документам однако, она должна иметь эффект только на RF. Разумеется, ДВД расчитан на line и любой ресивер работает через line. Если вредитель сельского хозяйства влияет тем не менее на результат, это настоящий вредитель в Soft Encode. Конечно, если знать и отключить, то дело исправляется, но это дает очень серьезный повод не доверять Soft Encode вообще, как социально чуждому.

Еще раз подчеркну - AFAIK, динамическая компрессия используется практически во всех голливудских фильмах, либо Film Standard (типа боевиков), либо Film Light (драма). Рок-концерт имеет динамический диапазон близкий к нулю, и на ДВД записывается с отключенной компрессией. Все это необходимо для комфортного прослушивания и работает только если правильно выставлена нормализация диалога. На русских дорожках с переводом она сплошь и рядом выставлена неправильно.

Кроме того, динамическая компрессия никак не влияет на сам результат кодировки. Все, что происходит - в ac3 добавляются данные анализа громкости, этакая подсказка для декодера. Если пользователь разрешил это декодеру, он будет подсказку использовать. Если домашний театр оборудован в звукоизолированном подвале, то компрессию можно и отключить. Если ресивера нет, а плеер выдает только downmix в стерео, то компрессию обычно отключить невозможно.

Автор: kvappa Вторник, 04 Декабря 2007, 6:00

2 userinfoaltar:
Сейчас посмотрел в "AC3 Encoder" (который от сценариста) - там тоже по дефолту "RF Overmudulation Protection" стоит. Это они явно со зла.

Ладно, попробую еще Вегас поставить.

Автор: altar Вторник, 04 Декабря 2007, 6:18

2 userinfokvappa:
Может Сценарист древний? Ох, никогда не лежала у меня к нему душа.

Добавлено:
Еще такой интересный момент для 5.1: 90-градусный фазовый сдвиг для задних каналов. Кодировщик кодирует задние каналы сдвинутыми, это не просто пометка в заголовке. Кстати, как и с фильтрами - декодировщику эти данные не передаются. По умолчанию эта установка обязательно включена, она не нужна только если запись проводилась на 5 фиксированных микрофонов по углам, чего в природе не бывает. Но мы-то декодируем и кодируем по-новой, а не работаем с оригинальным материалом! Получается, что эта установка должна быть выключена.

Еще бы с 3 дБ приглушением задних каналов разобраться и был бы комплект.

Автор: kvappa Вторник, 04 Декабря 2007, 6:41

2 userinfoaltar:
А что делают фильтры:
DC high pass
Bandwith low-pass
LFE low-pass
?

Если что-то из этого режет низкие частоты, перенося их в LFE, или наоборот - извлекает частоты выше определенной из LFE и распределяет их по другим каналам, то разве не "всё обрезано до нас"? Или мы, на этапе манипуляций со звуком, таки создаем поле деятельности для работы фильтров?

Автор: Elduderino Вторник, 04 Декабря 2007, 10:29

Собственно тоже такой вопрос. Если мы уже взяли имеющуюся дорожку AC3, перевели в WAV, и возвращаем в AC3 без изменений в громкости - какой эффект окажут дополнительно вбитые фильтры и установки уровней...

Автор: altar Вторник, 04 Декабря 2007, 20:00

QUOTE(bubamara @ Понедельник, 03 Декабря 2007, 10:03)
......
2. Попытка синхронизации по максимально удалённым контрольным точкам. То есть по местам, где есть достаточно громкие и резкие общие звуки - выстрелы, удары. Делаем предварительный ресэмплинг дорожки в нужную сторону, чтобы звук в контрольных точках совпал.
......
5. Сужаем диапазон между контрольными точками, повторяем п.2 - п.4 пока не находим достоверный (максимально продолжительный!) контрольный диапазон, внутри которого всё совпадает. По этому диапазону делаем вторую итерацию ресэмплинга всей дорожки - с нуля, отменив первую, чтобы не терзать лишний раз пациента. Действие основывается на предположении, что разница в "скорости" пациента и эталона - постоянна на всём протяжении фильма. Обычно это бывает так.
.......
8. Проверяем звук в начале (заставки кинокомпаний) и в конце (титры). При необходимости подрезаем пациента до размера эталона или, если пациент короче, - добиваем его спереди и сзади пустыми вавами - строго опционально, для красоты и единообразия.
.......

Разборка - tranzcode или DVD Audio Extractor. BeSweet не использую по причине ужасного алгоритма ресэмплинга. И никому не советую конвертировать fps автоматом через BeSweet - это как раз случай "простого и неправильного" решения, поскольку падение качества при этом заметно даже среднему уху.

Сборка DD - Soft Encode, сборка DTS - Minnetonka DTS Pro Coder. В Soft Encode отключается весь улучшайзинг, "dialog normalization" выставляется в то же значение, что было у оригинала.

Общее правило - минимум последовательных операций над звуковым файлом.
*


Тут у меня несколько непоняток.
1. А, еще разок прочитал и понял, что первая непонятка - из-за терминологии. Ты все время говоришь ресэмплинг, а подразумеваешь изменение продолжительности. Под resampling обычно понимают изменение частоты дискретизации, а она у нас постоянна - 48 кГц. Очевидно дело в том, что изменение длины без сохранения высоты в Audition тоже называют resampling - что по сути справедливо, но непривычно по употреблению.

2. Далее, такая дидактическая проблема. Может возникнуть ощущение, что растяжка PAL -> NTSC делается по соотношению длин между контрольными точками. Или это не ощущение, а так и делается? Где-то, что-то потянуть - может быть, но растягивать всю дорожку из PAL в NTSC по соотношению длин между контрольными точками - с этим категорически не соглашусь. Соотношение между длинами одинакового материала в PAL и NTSC совершенно точное - у PAL частота кадров ровно 25, у NTSC - (4/5) * 90000/3003 = 23.976... Откуда могут взяться отклонения, что там у них, тактовая частота плывет? Это маловероятно, самые дешевые кварцевые часы уходят на секунду в месяц. Думаю, что разброс при трансфере не должен превышать 10-20 мс.

Полагаю, что растягивать надо точно по соотношению между скоростями PAL и NTSC. WaveLab позволяет задать точность растяжки вплоть до шага дискретизации. Бьюсь об заклад - любой рассинхрон после этого - либо разница в материале (отсутствуют какие-либо куски), либо - точечные сдвиги. Скажем, точечный сдвиг на 20-100 мс каждые 5-10 мин элементарно может выглядеть, как прогрессирующий рассинхрон, тогда как лечить его надо не растяжением, а локализованным вмешательством, переклейкой/резкой в местах сбоя.

Перед растяжкой на 4% обязательно надо проверить высоту звука, между близкими контрольными точками, желательно в местах с музыкой. Если высота PAL звука больше где-то на 70 центов, чем у NTSC - значит трансфер делали без сохранения высоты звука. А значит и растяжку тогда надо делать без сохранения высоты - она сама упадет до уровня оригинала. Такая растяжка - самое примитивное линейное растяжение, ресэмплинг с локальной интерполяцией. Другое дело, если высота в PAL и NTS. совпадает. Тогда и нам надо ее сохранить. Такие алгоритмы значительно сложнее, я их уже описывал. Справедливости ради следует отметить, что и BeSweet и Cool Edit, а потом и Audition (включая, насколько я понимаю, и 2-ю версии) используют один и тот же алгоритм растяжки - WSOLA. Разумеется, я бы не стал совмещать операции и не позволил бы BeSweet делать растяжку - но не понятно, почему BeSweet бы это сделала хуже, чем Audition. В любом случае, WSOLA - алгоритм невысокого качества.

Только что узнал, что в Audition 3 используется новый алгоритм растяжки - Радиус от iZotope (Adobe говорит, что это одна из 10 главных новых фич в новой версии). По отзывам, Радиус находится в том же классе, что и алгоритмы Серато и Просоника. Другое дело, что про него мало что известно пока, кроме того, что пользоваться им тяжело - нужно выбирать из нескольких алгоритмов и настроек. Серато - это чрезвычайно сильно модифицированный фазовый вокодер, Просоник - wavelet + распознание нейронной сетью. Серато - монополист в Западной Европе при трансфере фильмов на PAL DVD.

3. А почему подбивать под длину оригинала - опционально? Мы же потом будем все это муксить вместе.

4. В "Soft Encode отключается весь улучшайзинг" - это что? Там никакого улучшайзинга вроде нет. Есть несколько фильтров, но они необходимы (а в ситуациях, когда какой можно было бы и отключить, он ни на что не влияет - как в случае с DC фильтром, когда c DC все в порядке).

5. "Общее правило - минимум последовательных операций над звуковым файлом" - ну простые изменения уровня, склейки и обрезки делать не страшно, когда работаешь с 32 бит. А растяжку лучше делать один раз. Dolby Encoder использует до 24 бит информации, но спокойно принимает 32-бит файлы. Все внутренние операции в аудио-редакторах делаются в 32-бит. Поэтому и сбрасываю из BeSweet файлы в 32-бит. Всегда полагал, что в такой ситуации dithering можно не делать, а сейчас задумался - собственно, почему? Если Долби потом просто берет верхние 24 бита, то, по идее, dithering нужен как самая последняя операция с wav в аудио редакторе. Конечно, 24 бит - не 16, вряд ли кто услышит разницу с dithering и без.

Добавлено:
QUOTE(kvappa @ Понедельник, 03 Декабря 2007, 22:41)
2 userinfoaltar:
А что делают фильтры:
DC high pass
Bandwith low-pass
LFE low-pass
?

Если что-то из этого режет низкие частоты, перенося их в LFE, или наоборот - извлекает частоты выше определенной из LFE и распределяет их по другим каналам, то разве не "всё обрезано до нас"? Или мы, на этапе манипуляций со звуком, таки создаем поле деятельности для работы фильтров?
*


DC high pass убирает постоянную составляющую (проблема плохой аппаратуры записи). Если ее нет, он ни на что не влияет. Любой аудио редактор может ее проверить и убрать. Но, поскольку этот фильтр не может ничего испортить, он должен быть включен.

Bandwith low-pass - аккуратно убирает частоты выше полосы пропускания кодировщика (которая зависит от бит-рейт; при рекомендуемой - будет выше 20 кГц). Обязательно, поскольку убирает слышимые искажения за счет anti-aliasing.

LFE low-pass - убирает частоты выше 120 Гц из LFE.

Я полагаю, что все 3 фильтра должны быть всегда задействованы. Любые наши манипуляции со звуком дадут им пищу для работы.

Другое дело, 90-градусный сдвиг и 3 дБ заглушение задних каналов. Сдвиг, полагаю, надо отключить, иначе у нас получится уже 180 градусов от повторного применения. 3 дБ заглушение - зависит от того, как BeSweet раскодирует, компенсирует или нет. Надо провести несколько простых экспериментов, попробую сегодня, если будет время.

Автор: bubamara Среда, 05 Декабря 2007, 2:23

QUOTE(altar @ Вторник, 04 Декабря 2007, 20:00)
Ты все время говоришь ресэмплинг, а подразумеваешь изменение продолжительности.  Под resampling обычно понимают изменение частоты дискретизации, а она у нас постоянна - 48 кГц.  Очевидно дело в том, что изменение длины без сохранения высоты в Audition тоже называют resampling - что по сути справедливо, но непривычно по употреблению.
Ресэмплинг - логически - любая операция, при которой меняется "рисунок" звуковой формы относительно квантов (цифровых сэмплов). То есть производится операция цифрового искажения звука из-за смены точек наложения границ сэмплов. Растяжение/сжатие звука с пропорциональным изменением частоты ресэмплингом не является. С сохранением или непропорциональным изменением частоты - является, ибо для такой операции как раз нужны числовые алгоритмы.

QUOTE
Может возникнуть ощущение, что растяжка PAL -> NTSC делается по соотношению длин между контрольными точками.  Или это не ощущение, а так и делается?  Где-то, что-то потянуть - может быть, но растягивать всю дорожку из PAL в NTSC по соотношению длин между контрольными точками - с этим категорически не соглашусь.  Соотношение между длинами одинакового материала в PAL и NTSC совершенно точное
Именно так. Случай PAL>NTSC (или обратно) я не рассматриваю - как тривиальный. 23.976 / 25 или наоборот - всё, что надо знать.

QUOTE
Скажем, точечный сдвиг на 20-100 мс каждые 5-10 мин элементарно может выглядеть, как прогрессирующий рассинхрон,  тогда как лечить его надо не растяжением, а локализованным вмешательством, переклейкой/резкой в местах сбоя.
Угу. Именно так.

QUOTE
А почему подбивать под длину оригинала - опционально?  Мы же потом будем все это муксить вместе.
Кусок спереди Audition сам добьёт пустым вавом, кусок сзади - малоинтересен, поскольку мультиплекс производится по фронтальному сдвигу. Неоднократно наблюдал на лицензии различную длину аудиодорожек в одном и том же vts.

QUOTE
В "Soft Encode отключается весь улучшайзинг" - это что?  Там никакого улучшайзинга вроде нет.  Есть несколько фильтров, но они необходимы
В сети есть русскоязычное руководство (ссылка на него есть, если правильно не ошибаюсь, и в местном ЧаВо), где сказано: "все галки - убрать, dialog normalization выставить как в оригинале". Так и делаю. Пока. Поскольку с интересом читаю твои разъяснения про фильтры Soft Encode и переосмысливаю процесс.

QUOTE
А растяжку лучше делать один раз.
Именно это я в первую очередь имел в виду под "минимумом последовательных операций". Перед каждым изменением длительности - отменить предыдущее и растягивать оригинал "с нуля".

QUOTE
Всегда полагал, что в такой ситуации dithering можно не делать, а сейчас задумался - собственно, почему?
http://en.wikipedia.org/wiki/Dithering в обязательном порядке делается только при уменшении битности. Если преобразовывать 32->16 - он нужен. В других случаях - затрудняюсь сказать.

QUOTE
Конечно, 24 бит - не 16, вряд ли кто услышит разницу с dithering и без.
В случае с dd и dts - полностью согласен. Искажения, вносимые сжатием - более высокого порядка, чем выпадения битов, которые призван корректировать dithering.

В очередной раз огромное спасибо за порцию пищи для мозга.

Автор: Mantisby Среда, 26 Декабря 2007, 18:00

QUOTE(altar @ там)
Далее - рассмотрим ползучий, кусочно-сдвиговый рассинхрон.

похоже столкнулся с чем-то подобным. Есть East of Eden широкоформатный только с английской дорожкой и дорожка с VHS-rip.
Выделил несколько точек в фильме, подсчитал разницу. Она не постоянная, изменяется от 2.37,390 до 4.58, 850. Причем изменяется неравномерно, к концу фильма явно быстрее увеличивается.
Что можно сделать в таком случае? или проще субтитры прикрутить?

Автор: kvappa Четверг, 03 Января 2008, 8:59

2 userinfoaltar:
А всё-таки! Как в Wavelab-е правильно поменять FPS каналов?
Через Time Stretching? А какие настройки тогда? То что я пробовал сделать, по результату выходило ничуть не лучше чем в samplitude - такой же рваный звук!

Автор: altar Пятница, 04 Января 2008, 8:34

2 userinfokvappa:
Стерео wav (или два моно, открытые вместе, в одном окне) - участок для растяжения должен быть выбран. Жмем T (Time Stretching):


Выбираем High Quality.
Я вычисляю не процентное изменение (там всего три знака после запятой), а напрямую число выборок. Вычисляю в Excel. Предположим, что мы растягиваем из PAL в NTSC. В данном случае - было 449499648 выборок, умножаем на 25/(24000/1001), получаем 468697029. (Если бы умножали на обычное 25/23.976, получили бы 468697497, разница небольшая, но все-таки... Кстати, 24000/1001 - это тактовая частота 90000, поделенная на 3003 (drop-frame), умноженная на 4/5 (3:2 pulldown)). Прямо из Excel число переклеиваю (Ctrl-C, Ctrl-V).

Установки:
1. Preserve Pitch. Сохранять ли высоту - большой вопрос. В очень многих PAL изданиях, высота звука выше, где-то на 70 центов - это значит, что при трансфере с пленки высоту не сохраняли. Значит и нам ее сохранять не надо, она упадет при растяжении до оригинального состояния на пленке. И в этом случае, мы имеем дело с совсем простым алгоритмом - всего лишь resampling. Итак, меряем высоту на участках со строго одинаковым контентом (заведомо разной длины за счет PAL<->NTSC - я нахожу синхроточку, а потом вычисляю нужные длины). Для замера участок должен быть выделен. Жмем Y (Global Analysis), Analyze, записываем значение Pitch. Если у PAL дорожки высота близка к NTSC, активируем опцию. Если высота больше (чуть меньше полутона, где-то 70 центов), значит и нам не надо ее сохранять, деактивируем опцию.

2. Audio Quantize. Если активирована, итоговая длина будет точно такой, как задано. Если нет - может отличаться на несколько мс, зато будет чуть-чуть лучшее качество.

3. Rhythm Accuracy. От - 5 до 5. Чем больше значение, тем выше аккуратность ритмического материала, но общее качество несколько падает. Ритмика важна, скажем, для барабанного боя, для рок музыки. Для нормального фильма или классической музыки - качество важнее (Брамс играл с колоссальном рубато - сохранились ролики, так сейчас почти никто не играет, азиатская игра под метроном никого не трогает)

Все это замечательно, но если сейчас нажать Process, WaveLab сдохнет - файлы слишком большие. В 5-й версии, он не работает больше, чем с 2 ГБ. Для этого скрина у меня были открыты 2 моно файла, как один стерео, каждый файл по 1,67 ГБ. Так что, такие большие дорожки придется разбивать на пару кусков frownold.gif.

Для сохранения фазовой аккуратности, оба канала в стерео должны быть обработаны одновременно (в стерео файле, или в двух моно, открытых одновременно, в одном окне).

Сразу скажу, 5.1 не приходилось растягивать в WaveLab. В 5-й версии, это небольшой напряг. Надо создать монтаж, перейти в моду DVD-Audio, добавить все 6 каналов, раскидать их по правильным позициям, каждый в свой угол. Потом навести курсор точно в точку, докуда растягиваем. На меню на правой кнопке мыши будет Time Stretch to Cursor. Появится тот же диалог, что и раньше, но новая длина будет уже выбрана (по положению курсора) и поменять ее будет нельзя. Что при этом получится на выходе - не знаю. Я сейчас экспериментирую с установками ac3 кодировки - о-о-очень любопытные результаты, даже не знаю, что думать, скоро отпишусь.

Автор: Elduderino Пятница, 04 Января 2008, 11:13

QUOTE
3. Rhythm Accuracy. От - 5 до 5. Чем больше значение, тем выше аккуратность ритмического материала, но общее качество несколько падает.

А для наилучшего качества, какое значение параметра лучше: -5 или 0?

Кстати, altar, у меня по Вегасу вопрос.
Когда делал "Блэйд раннера", у меня опять начал глючить СофтЭнкод. Поэтому я загрузил 6 файлов в Вегас и расставил их соответствующе по 6 каналам. Когда же срендрил финальный звук - получилась полная белиберда. Части центрального канала влезали в фронтовые стереоканалы, все как-то перемешалось. Пришлось отказаться от Вегаса и переустанавливать СофтЭнкод. И вот уже тот сделал все по-людски.

Скриншотов дать не могу, но может, ты знаешь, в чем там проблема?

Автор: altar Пятница, 04 Января 2008, 20:54

Понятия не имею, у меня никогда с Вегасом не было проблем. Разгоняешь точки по углам квадратика, точка для центрального канала в центре спереди. Сабвуфер - меняем моду на LFE. Все, как в Софт Энкоде, только версия кодировщика поновей.

Добавлено:
Rhythm Accuracy - я бы оставил на нуле (если только это не рок-концерт). -5 должен дать наилучшее качество в динамических местах, за счет уменьшения аккуратности ритма. Если ушам доверяешь - экспериментируй.

Автор: kvappa Суббота, 05 Января 2008, 0:16

Поставил сегодня 9-й Samplitude и попробовал оттрансформить треки в нем (до этого пользовался 8-м). Благо, программа позволяет без проблем все каналы махом обработать.
Сделал Time Stretch в режиме Normal, с флагом HQ. И запустил мультитрековый Track bouncing в режиме Ultra High 2 (32-bit Float).
Знаете, а результат мне очень даже понравился! Осталась вся детализация, весь объем, и даже динамика почти не пострадала! Уровень только совсем чуток пришлось поднять, на 0,5ДБ где-то, чтобы оригиналу соотвествовало. После кодирования AC3 небольшая разница есть, конечно, по сравнению с исходником, но если раскодировать дорожку и, ничего не делая с ней, просто закодировать обратно тут же - разница будет примерно в том же диапазоне!
В общем, теперь Besweet, со своей конвертацией FPS, однозначно нервно курит в сторонке! Та же дорожка, полученная через его конвертор, - просто какая-то каша бесформенная! smileold.gif

Автор: altar Суббота, 05 Января 2008, 1:56

QUOTE(kvappa @ Пятница, 04 Января 2008, 16:16)
После кодирования AC3 небольшая разница есть, конечно, по сравнению с исходником, но если раскодировать дорожку и, ничего не делая с ней, просто закодировать обратно тут же - разница будет примерно в том же диапазоне!
*

Вот это меня сейчас очень интересует. Без всякой растяжки, а именно сам цикл: разобрать BeSweet'ом (все фильтры и компрессии отключены), собрать, ничего не меняя, официальным кодировщиком (Вегасом, для определенности), снова разобрать результат BeSweet'ом. Теперь сравниваем результат после 1-й и 2-й разборки. Задача - установить параметры кодировки, чтобы результаты максимально совпадали (в том числе, естественно, по уровню и фазе). Нахожусь в неком недоумении. Какие у кого мысли на сей счет?

Автор: kvappa Суббота, 05 Января 2008, 2:55

2 userinfoaltar:
А кто ж его знает! В любом случае, результат будет отличаться. Ибо рекомпрессия..!

Автор: altar Суббота, 05 Января 2008, 3:02

Да ну, рекомпрессия... Отличия минимальные. Я не об этом, а о "большой картине".
Беру чистую генерированную гармонику в каждом канале 5.1, собираю вегасом. Потом разбираю BeSweet'ом. Сравниваю фазу и уровень в каждом канале с исходником. Не пробовал?

Автор: kvappa Суббота, 05 Января 2008, 3:16

2 userinfoaltar:
Для этого необходимы некоторые специфические знания, чтобы иметь представление - куда и на что смотреть вообще!
Пока что, я могу сравнивать лишь только на слух... frownold.gif

Автор: kvappa Суббота, 05 Января 2008, 4:00

М-да... Внимательно послушал конечный результат - всё равно не то! Бисвит искажает одно, здесь же - искажается другое... Придется придумывать что-то другое.

Автор: altar Суббота, 05 Января 2008, 8:22

2 userinfokvappa:
Ну а с WaveLab, неужели ничего хорошего так и не вышло? Тогда разве что Серрато где поискать, с таким-то слухом...

Автор: kvappa Суббота, 05 Января 2008, 15:49

2 userinfoaltar:
Просто с Wavelab еще не до конца разобрался пока... Как там с многоканальным звуком быть.

Автор: Elduderino Понедельник, 07 Января 2008, 1:36

Я в Wavelab делал только ресэмплинг (т.е. Time Stretch) на каждом отдельном канале (но с одинаковыми параметрами).

Кстати, проблема с Vegas разрешилась. У меня какой-то странный битый попался дистрибутив, в котором нельзя было делать опции AC3 Encoding. Скачал нормальный, потом зарегил кряком и зарегил отдельно модуль AC3 Encoding - и окно опций чудесны образом открылось. smileold.gif

Автор: altar Понедельник, 07 Января 2008, 9:27

2 userinfoElduderino:
Так ты же писал, что у тебя проблема была с центральным каналом, замешанным во фронтальные, а не с опциями? Если опций не было - значит была мифическая "корпоративная" версия, типа того, что раздают на торрентс.ру. На руборде - нормальная таблетка, а Вегас и Forge можно скачать напрямую у Сони.

Насчет центрального канала - у меня такое подозрение, что ты точку по углам и в центр квадратов ставишь, но потом не щелкаешь на точки, изображающие остальные динамики - чтобы их отключить. В каждом квадратике, все динамики (кроме того, куда ты точку наводишь) должны быть серыми, отключенными.

Автор: Elduderino Понедельник, 07 Января 2008, 14:59

QUOTE(altar @ Понедельник, 07 Января 2008, 7:27)
2 userinfoElduderino:
Так ты же писал, что у тебя проблема была с центральным каналом, замешанным во фронтальные, а не с опциями?

Проблема с опциями тоже была, я раньше о ней писал.

QUOTE
Насчет центрального канала - у меня такое подозрение, что ты точку по углам и в центр квадратов ставишь, но потом не щелкаешь на точки, изображающие остальные динамики - чтобы их отключить.
*

Спасибо, в этом и было дело. Прочитал в мануале, в скачанной вчера версии. winkold.gif

Автор: kvappa Среда, 12 Марта 2008, 1:17

Убил почти весь понедельник на эксперименты - и теперь могу точно заявить, что касаемо изменения FPS звука - Wavelab рулит!
Altar, спасибо!

Моя ошибка была в том, что я трогал Quantize и Rhythm Accuracy - а это оказался самый верный способ убить звук (разница в качестве вышла отнюдь не небольшая)! Думал, что при растяжке это хоть как-то поможет от гуляния синхронизации между каналами, ибо заявлялось, что результат может отличаться от установленных параметров на несколько мсек.
На практике же оказалось, что волноваться было не очем. Кто бы мог подумать, что можно перекодировать по-одному какое угодно количество каналов, хоть с сохранением высоты, хоть без - и всё выходит как надо, причем качество на выходе - просто класс! Хоть и получается разница +/- до 3 мсек между каналами (при разнице в длине файлов в 0-1 байт), но никаких проблем в дальнейшем это не создает. По результату - полное ощущение, что каналы были обработаны вместе!
Чудесато, так чудесато! Мысль трансформить каналы по-одному казалась бредовой, когда начинал эксперимент, а в итоге всё получилось!

Настройки именно такие, как указывал Altar:

Но, при установке количества Samples в окне Result, эта зараза довольно сильно "округляет" значение (по совершенно не понятной мне логике), что может привести к уходу синхронизации до 200мсек. Впрочем, любые другие значения округляются точно так же. Увидеть это можно, лишь запустив процесс, либо нажав Close и войдя в Time Stretching снова. У меня всё время происходило округление в большую сторону, и приходилось подбирать циферки, пока не получалось ближайшее меньшее значение - тогда рассинхрон выходил уже ничтожно малый.
Хоть и имеется такая странная проблемка, но зато единожды выставленные значения сохраняются. Далее, достаточно подгружать файлы других каналов, вызывая Time Stratching и сразу запуская процесс - что очень удобно. И достаточно быстро, вдобавок.

Nuendo 3, в этом плане, мне не особо понравился - хоть и есть выбор качества работы MPEX, но на максимальном (4), он обрабатывает каждый канал где-то по 1:45:00 (убиться можно!), а результат не лучше точно выходит. Еще и высоту звука не сохранить никак.

Автор: altar Среда, 12 Марта 2008, 21:20

Ага, отлично.

Насчет Quantize - так она была активирована или нет? Если тянуть по одному каналу, я бы ее активировал. И выборки у меня вроде не округлялись (если не менять потом другие установки).

А целиком 5.1 в аудио монтаже не пробовал пока тянуть?

Автор: kvappa Среда, 12 Марта 2008, 22:12

2 userinfoaltar:
Целиком 5.1 не пробовал, так как не разобрался - как это сделать.
А quantize с Rhythm Accuracy = 0 - не тестил пока. Но думаю, что звук будет рваться всё равно. И тоже был уверен, что quantize нужен - а вышло, что сие не так.

И уверен ли ты, что выборки не округлялись? Точно не уверен, но вроде иногда это может стать заметно даже только после окончания процесса.

Автор: Elduderino Воскресенье, 04 Мая 2008, 22:16

Я прусь.

Два раза просчитывал синхронизацию в WaveLab по разным точкам, чтобы сделать Time Stretch. Оба раза - результат выходит один и тот же.

И тем не менее звук постоянно рассинхронизируется "по ходу". То бишь - то и дело убегает.

Автор: kvappa Понедельник, 05 Мая 2008, 17:59

2 userinfoElduderino:
Я и говорю, что он округляет до каких-то значений ближайших, только ему ведомых.
Так что точное значение не получится всё равно, можно лишь посмотреть - до какого значения идет округление, и найти следующее округленное значение, более близкое к тому что требуется.
А просчитывал синхронизацию в разных точках - это в смысле и зачем? Time Stretch делается только один раз, для 25 <-> 23.976 FPS, и для этого нужно посчитать на калькуляторе новое количество фреймов... по ним дальше и ориентироваться. Ну и на продолжительность тоже поглядывая.

Автор: Mantisby Четверг, 28 Августа 2008, 9:43

QUOTE(Elduderino @ Понедельник, 03 Декабря 2007, 10:57)
У меня почему-то начал глючить Soft Encode, вырубается через несколько секунд после начала кодирования.
*


Аналогичная ситуация. Вырубается в течение 10 секунд после старта. Почему - не могу понять frownold.gif

Пришлось разобраться с Вегасом.

Автор: kvappa Пятница, 29 Августа 2008, 1:46

2 userinfoMantisby:
Возможно, кривой дистрибутив. Если версия ломаная - глюкам удивляться нечего.

Автор: starsoft Пятница, 29 Августа 2008, 12:15

2 userinfoMantisby:
Первое что стОит проверить - достаточно ли места на том диске, куда установлен путь для временных файлов.

Автор: Mantisby Пятница, 16 Января 2009, 0:08

подскажите, в чем удобнее редактировать 5.1 дорожки. Sound Forge промахивается при растяжении, а WaveLab такие файлы не потянет.

sad.gif

Автор: shurikkein Пятница, 16 Января 2009, 0:16

2 userinfoMantisby:

QUOTE
WaveLab такие файлы не потянет.
Неужели один канал превышает 2 гб ? Я тяну именно в wavelab

Автор: kvappa Пятница, 16 Января 2009, 2:50

2 userinfoMantisby:
Ни разу не встречал дорожки, которую не потянул бы WaveLab по одному(!) каналу.
Если было бы стерео - тогда еще могло бы быть. Но и тогда можно его по двум моно-каналам разобрать.

Качества лучше всё равно не будет нигде.

Автор: Mantisby Пятница, 16 Января 2009, 7:22

QUOTE(kvappa @ Пятница, 16 Января 2009, 2:50)
2 userinfoMantisby:
Ни разу не встречал дорожки, которую не потянул бы WaveLab по одному(!) каналу.
Если было бы стерео - тогда еще могло бы быть. Но и тогда можно его по двум моно-каналам разобрать.

Качества лучше всё равно не будет нигде.
*


про качество согласен. а как все 6 моно каналов в нем одновременно редактировать?

Автор: IDDQD Пятница, 16 Января 2009, 7:57

2 userinfoMantisby: О каком редактирование речь идет? Если резка-склейка, то Audition удобнее. Объединяются дорожки в группу в режиме Multitrack. Все последующие действия над дорожкой распространяются на всю группу.

Автор: Mantisby Пятница, 16 Января 2009, 10:27

QUOTE(IDDQD @ Пятница, 16 Января 2009, 7:57)
2 userinfoMantisby: О каком редактирование речь идет? Если резка-склейка, то Audition удобнее. Объединяются дорожки в группу в режиме Multitrack. Все последующие действия над дорожкой распространяются на всю группу.
*


У меня дубляж 5.1, причем очень неприятный - длина дубляжа PAL равна длине оригинала в NTSC. Мне нужно сделать из него нормальный PAL.
При этом просто сжать с соответствующим коэффициентом не получилось - в разных местах звук прыгает вплоть до 500 мс.
Я наметил около 20 точек, каждые 10, а иногда и 5 минут. Пока что думаю сжимать каждый кусок отдельно с контролем по оригиналу. Резать-клеить на дубляже скорее всего не получится.

Audition позволяет точно (до десятков мс) сжимать отрезки?

Я пробовал делать 5.1 wav и грузить его в Sound Forge, но на первом же куске у него промахи при сжатии (выставляю в процентах к исходному) до 400ms. frownold.gif

Автор: IDDQD Пятница, 16 Января 2009, 12:29

QUOTE(Mantisby @ там)
длина дубляжа PAL равна длине оригинала в NTSC

Наводит на мысль, что версии фильмов разные. Скорее всего в NTSC есть сцены, которые на диске, куда был прикруче дубляж, отсутствуют. Нужно проверять по пикам. Сжимать отдельные куски в Audition нереально. Это придется делать с каждым каналом отдельно.

Автор: Mantisby Пятница, 16 Января 2009, 13:07

QUOTE(IDDQD @ Пятница, 16 Января 2009, 12:29)
QUOTE(Mantisby @ там)
длина дубляжа PAL равна длине оригинала в NTSC

Наводит на мысль, что версии фильмов разные. Скорее всего в NTSC есть сцены, которые на диске, куда был прикруче дубляж, отсутствуют. Нужно проверять по пикам. Сжимать отдельные куски в Audition нереально. Это придется делать с каждым каналом отдельно.
*


Нигде упоминания о том, что есть какая-то более полная версия фильма, не видел. На dvdbeaver обзор PAL и NTSC издания - ни слова об этом frownold.gif
К тому же данный дубляж наложен на все BD-HDTV рипы, соответственно вряд ли что-то там пропущено smileold.gif

На торрентсе народ предлагал сравнивать видео, но это муторно, а учитывая дубляж и достаточно малый рассинхрон, мне кажется нереальным frownold.gif

Пробовал делать так - загружал в Wavelab по 2 канала одновременно (фронты вместе, задние вместе, и центр+LFE)- там можно dual mono загрузить, и делал одно и тоже сжатие 3 раза. Но в некоторых местах появилось эхо frownold.gif

Автор: shurikkein Пятница, 16 Января 2009, 14:03

2 userinfoMantisby:видео сравнивать не очень муторно, если использовать syncplay. Иногда удобно искать пропущенные кадры, потом нарезать дорожку.

Автор: Mantisby Пятница, 16 Января 2009, 14:30

QUOTE(shurikkein @ Пятница, 16 Января 2009, 14:03)
2 userinfoMantisby:видео сравнивать не очень муторно, если использовать syncplay. Иногда удобно искать пропущенные кадры, потом нарезать дорожку.
*

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

но вопрос, как оптимально подгонять 5.1 звук, остается открытым.

Пока что варианты:
1. В Audition засунуть в Multitrack View 6 моно каналов.
2. Сделать 5.1 Wave и открыть его в Sound Forge.

и в том, и в другом случае делать Time Stretch несколько раз неудобно.

Автор: kvappa Пятница, 16 Января 2009, 19:22

2 userinfoMantisby:
Один раз меняется FPS на всю дорожку, по одному каналу в Вейвлабе, по очереди. Затем, полученный результат уже рихтуется в Аудишене мультитреком.

Автор: Mantisby Суббота, 17 Января 2009, 9:40

QUOTE(kvappa @ Пятница, 16 Января 2009, 19:22)
2 userinfoMantisby:
Один раз меняется FPS на всю дорожку, по одному каналу в Вейвлабе, по очереди. Затем, полученный результат уже рихтуется в Аудишене мультитреком.
*


понятно, буду пробовать, спасибо!

Автор: XChesser Понедельник, 09 Ноября 2009, 12:20

Time Stretching можно выполнять в RubberBand - это высококачественная свободная библиотека, предназначенная как раз для этой операции. Вместе с библиотекой распространяется и консольное приложение. В репозитории OpenSUSE также нашёлся LADSPA-плагин, позволяющий выполнять растяжение прямо в аудиоредакторе (Audacity, например). В отличие от SoundForge и WaveLab делает своё дело с точностью до сэмпла. На многоядерном процессоре распараллеливает задачу по ядрам (если не ошибаюсь, другие этого пока не умеют). Проглатывает большие файлы, так что дробить дорожку на каналы нет необходимости.
Доступно несколько настроек:

Опции
Rubber Band
An audio time-stretching and pitch-shifting library and utility program.
Copyright 2008 Chris Cannam. Distributed under the GNU General Public License.

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

The following options provide a simple way to adjust the sound. See below
for more details.

-c<N>, --crisp <N> Crispness (N = 0,1,2,3,4,5); default 4 (see below)
-F, --formant Enable formant preservation when pitch shifting

The remaining options fine-tune the processing mode and stretch algorithm.
These are mostly included for test purposes; the default settings and standard
crispness parameter are intended to provide the best sounding set of options
for most situations. The default is to use none of these options.

-P, --precise Aim for minimal time distortion (implied by -R)
-R, --realtime Select realtime mode (implies -P --no-threads)
--no-threads No extra threads regardless of CPU and channel count
--threads Assume multi-CPU even if only one CPU is identified
--no-transients Disable phase resynchronisation at transients
--bl-transients Band-limit phase resync to extreme frequencies
--no-lamination Disable phase lamination
--window-long Use longer processing window (actual size may vary)
--window-short Use shorter processing window
--pitch-hq In RT mode, use a slower, higher quality pitch shift

-d<N>, --debug <N> Select debug level (N = 0,1,2,3); default 0, full 3
(N.B. debug level 3 includes audible ticks in output)
-q, --quiet Suppress progress output

-V, --version Show version number and exit
-h, --help Show this help

"Crispness" levels:
-c 0 equivalent to --no-transients --no-lamination --window-long
-c 1 equivalent to --no-transients --no-lamination
-c 2 equivalent to --no-transients
-c 3 equivalent to --bl-transients
-c 4 default processing options
-c 5 equivalent to --no-lamination --window-short (may be good for drums)

Доступен для Linux, Mac OS X, Windows.
Главный вопрос - вопрос качества - каждый может сам для себя решить, сравнив с тем же эталонным WaveLab. На мой слух библиотека работает очень качественно, не хуже WaveLab точно.

Если интересно, могу описать процесс синхронизации звуковой дорожки в Linux в свободном редакторе Audacity. Для Windows и Mac OS, впрочем, тоже актуально.

P.S. Если вас устраивает знакомый вам аудиоредактор, и свободная лицензия - недостаточная мотивация для перехода на Audacity, не пишите "за". Не хочется писать статью просто "чтобы было".

Автор: shurikkein Понедельник, 09 Ноября 2009, 14:21

2 userinfoXChesser:
Я с линукса сбежал. Пока во всяком случае. Из-за отсутствия нормального софта для блуреев.
Не уверен, что у нас много народа работает с Audacity. По-моему плагин LADSPA, основан на той же библиотеке,что и в besweet.
В audacity , помнится, один из режимов растяжения (кажется, без сохранения высоты) имеет совершенно невменяемую форму расчета. Что-то вроде скорости вращения пластинки
RubberBand не помню такого, это отдельная прога?

Автор: kvappa Понедельник, 09 Ноября 2009, 16:28

2 userinfoXChesser:
А на каком из алгоритмов работает RubberBand?
Пока что, по качеству Time Stretch - WaveLab абсолютно вне конкуренции!

Автор: XChesser Вторник, 10 Ноября 2009, 0:30

2 userinfoshurikkein:
LADSPA - плагин RubberBand имел в виду, а не стандартный. Стандартный там обычный WSOLA.
RubberBand - библиотека, консольное приложение и LADSPA-плагин (от OpenSUSE).
Кстати, расчёт по скорости пластинки, по-моему, как раз удобная вещь. Ведь при синхронизации коэффициент растяжения вычисляется именно как отношение, например, 25/23.976. Так что это скорее плюс, чем минус. Но речь всё же шла о RubberBand.

QUOTE
Пока что, по качеству Time Stretch - WaveLab абсолютно вне конкуренции!

Учитывая, что RubberBand не участвовал в сравнении, я бы не стал так говорить winkold.gif А по сравнению с WSOLA, конечно, WaveLab лучше biggrinold.gif
Алгоритм свой собственный у них. Подробнее http://www.breakfastquay.com/rubberband/technical.html.
Сравните его напрямую с WaveLab. Мои уши говорят мне, что результат по крайней мере не хуже.

Автор: shurikkein Вторник, 10 Ноября 2009, 0:42

2 userinfoXChesser:

QUOTE
расчёт по скорости пластинки, по-моему, как раз удобная вещь
значит, я недопонял, как им пользоваться....
RubberBand понюхаем, послухаем smileold.gif

Автор: Kuningas Среда, 02 Декабря 2009, 11:50

Ну что, господа, кто пробовал Rubberband?

Автор: shurikkein Воскресенье, 20 Декабря 2009, 1:30

а этот "резиновый бэнд" существует в удобоваримом виде для винды? Работа в консоли под виндой не прельщает...

Автор: XChesser Воскресенье, 20 Декабря 2009, 14:36

Нет, только в консоли. Там всё просто: для PAL=>NTSC, например, команда такая будет:

CODE
rubberband -T 25025:24000 input.wav output.wav

Автор: shurikkein Воскресенье, 20 Декабря 2009, 14:44

2 userinfoXChesser:
понимаю, что просто, но достаточно муторно smileold.gif
главное, что был под винды бесплатный плугин на основе rubberband, но сгинул. sad.gif
http://www.kvraudio.com/get/3343.html

Автор: XChesser Воскресенье, 20 Декабря 2009, 15:12

2 userinfoshurikkein:
Судя по скриншоту выставить точное значение там вообще нереально.
Если надо GUI, можно на любом языке написать примитивную оболочку - параметров очень мало там.

Автор: shurikkein Воскресенье, 20 Декабря 2009, 15:42

2 userinfoXChesser:
подскажите, плиз. Сохранение высоты тона и без сохранения. Какие параметры надо ставить для -р ?
так понимаю, что -Т 25000 24000 изменит темп без сохранения высоты тона, а если надо с сохранением?

Автор: shurikkein Воскресенье, 20 Декабря 2009, 16:29

2 userinfokvappa:
разложил звук с помощью AC3tools, на выходе получил wav с перегрузкой, хрипят каналы в некоторых местах. Если раскладываю с помощью плугина к адобу перегрузки нет.

Автор: XChesser Воскресенье, 20 Декабря 2009, 17:35

2 userinfoshurikkein:
Честно говоря, с питчем пока не разбирался за ненадобностью.
Из оффициального дока понял, что для этого используется одна из 2 опций по выбору:
-p<X>, поднимает тон на X полутонов.
-f<X>, изменяет частоту в X раз.

Автор: shurikkein Воскресенье, 20 Декабря 2009, 20:28

2 userinfoXChesser:

QUOTE
за ненадобностью

Я всегда сравниваю с оригинальной дорожкой с блурея на предмет высоты тона.
Наши дорожки с R5 через раз сделаны.
QUOTE
-p<X>, поднимает тон на X полутонов.
-f<X>, изменяет частоту в X раз.

это я тоже прочитал, вопрос , какие значения ставить.
Видимо, придется подбирать в адобе.

Автор: XChesser Воскресенье, 20 Декабря 2009, 21:17

QUOTE
Наши дорожки с R5 через раз сделаны.

Это как? В смысле половина из них с сохранением тона?
QUOTE
это я тоже прочитал, вопрос , какие значения ставить.

Я полагаю, нужно ставить
CODE
-f.959040959

Но лучше всё-таки проверить smileold.gif

Автор: shurikkein Понедельник, 21 Декабря 2009, 0:12

2 userinfoXChesser:

QUOTE
В смысле половина из них с сохранением тона?

Да.

Автор: starsoft Понедельник, 21 Декабря 2009, 13:36

Так че - хорошая утилита? СтОит сварганить для нее GUI?

Автор: XChesser Понедельник, 21 Декабря 2009, 14:27

По мне, так программа хороша. Но я буду пользоваться консольной версией smile.gif
Для многих GUI, наверное, был бы востребован - подождём мнения других.
Если возьмётесь его писать, думаю, лучше не агрегировать всё в исполняемый файл, а оставить консольный экзешник как есть, написав обёртку. Это чтобы можно было безболезненно обновлять rubberband, не трогая GUI.

Автор: starsoft Среда, 23 Декабря 2009, 4:49

Смастерил GUI, который запускает консольный ехе-шник с нужными параметрами.
Взять http://rapidshare.com/files/324626905/RBandGUI.zip.html или http://www.sendspace.com/file/1sed7c. Кому не лень - опробуйте, скажите что не правильно.

Автор: kvappa Среда, 23 Декабря 2009, 16:59

2 userinfostarsoft:
Супер! Надо будет опробовать, спасибо! А то одна только мысль о командной строке - уже как-то напрягала. smileold.gif
Правда, смогу потестить уже только в январе теперь.

Автор: XChesser Среда, 23 Декабря 2009, 17:29

Запустил, посмотрел. Приятный интерфейс smile.gif
Несколько замечаний:
Adjastement => Adjustment
Во многие поля не удаётся ввести дробные значения.
При выборе "Raise pitch by 0 semitones" в консоли пишется '--pitch' без значения. Не знаю, работает ли это как '--pitch 0'. Запускал в Linux через Wine - только интерфейс смог оценить. В консольной версии под Linux такое не прокатывает.
Не получается свернуть приложение (хотя, возможно, это Wine виноват).

Если уж совсем придираться, то ещё вот:
В разных местах регистр первых букв слова разный.

Корректность передачи аргументов для этой программы проверить трудно, так что будем надеяться, что команда, отображаемая в окне, как есть и запускается.

Ещё есть предложение добавить профили. Скажем, 4:
NTSC=>PAL без сохранения тона
PAL=>NTSC без сохранения тона
NTSC=>PAL с сохранением тона
PAL=>NTSC с сохранением тона

Спасибо за труды! thumbup.gif

Автор: shurikkein Среда, 23 Декабря 2009, 17:58

2 userinfostarsoft:
спасибо за труд

QUOTE
В разных местах регистр первых букв слова разный
не вижу такого, нормально всё выглядит (win7-64)

Автор: starsoft Среда, 23 Декабря 2009, 23:45

2 userinfoXChesser:
Спасибо за замечания, исправлю.
'--pitch' действительно неверно, ошибка в коде. Может и сработало бы без параметра, но лучше не рисковать.
В каких полях кроме "Stretch" и "Raise pitch" нужны дробные значения? Я сделал только для этих двух исходя из описания утилиты.
Добавил пипку для минимизации.
Регистр букв - вроде бы как должно быть, в заголовках все первые строчные, в названиях параметров - обычные правила строчных и прописных.
Команда, отображаемая в окне - это и есть командная строка, из этого окна она и идет в консоль запуска. Можно скопировать ее и запустить в своем консольном окне.

Скажи какой набор параметров соотвествует каждому из профилей - и сделаю профили.

Автор: XChesser Четверг, 24 Декабря 2009, 1:31

2 userinfostarsoft:
Потыкал консольную версию - дробные значения допустимы абсолютно во всех полях группы "Pitch Ratio Options".

QUOTE
Регистр букв - вроде бы как должно быть, в заголовках все первые строчные, в названиях параметров - обычные правила строчных и прописных.

В таком случае надо бы заменить:
Debug Level => Debug level
Command line => Command Line
Впрочем, это всё такие мелочи! userinfoshurikkein вообще не понял, о чём я, - настолько это несущественно.

А вот для профилей сам пока ещё не знаю параметры для стретчинга с сохранением тона. Это на будущее.
Можно пока сделать первые 2 профиля:
PAL=>NTSC: '--tempo 1001:960'
NTSC=>PAL: '--tempo 960:1001'

При вводе дробных надо потестить, какой разделитель используется. Может оказаться так, что разделитель зависит от локали - тогда и в GUI надо так же сделать. А может получиться наоборот: требуется точка, а в проверке будет использована системная локально-зависимая функция, которая в русской версии запятую будет пропускать, а в английской - точку.
В Linux-версии только точка. Как и всегда smile.gif

Автор: starsoft Четверг, 24 Декабря 2009, 9:23

Обновил програмку. Взять http://rapidshare.com/files/325189254/RBandGUI.zip.html или http://www.sendspace.com/file/2wt0lu.

Для преобразования дробных используется дифолтный метод - 6 значащих цифр не считая разделителя. Разделитель - точка. Поскольку код утилиты кроссплатформенный, я думаю что в любой реализации там будет точка. Я выставил в системе запятую, утилита параметры с запятой округлила до целых значений, а с точкой взяла как есть дробными.

Автор: shurikkein Суббота, 26 Декабря 2009, 2:18

Похоже, авторы через другое место сделали biggrinold.gif
Растяжение 25-->23.976 с сохранением тона
-f 1 (т.е. по умолчанию)
Растяжение 25-->23.976 без сохранения
-f 0.95904
время обработки приблизительно одинаковое 480 секунд и 520 секунд соответственно

У Аудишн растяжение этой же дорожки с сохранением высоты составило около 7 минут (похоже по времени на rubberband)
без сохранения - около 2 минут

получается, в отличие от audition, обработка для высоты тона в rubberband включается всегда. Хорошо это или плохо, не знаю.

При выборе пресета в GUi выставляется значение только для длительности, параметры для частоты или полутона не меняются. Выставишь , например, 25 - будет 25.

Автор: starsoft Суббота, 26 Декабря 2009, 3:12

2 userinfoshurikkein:
Погоди, я мало что понимаю в обработке звука кроме общих принципов. Ты хочешь сказать что для пресета "PAL=>NTSC без сохранения тона" надо выставить "--tempo 1001:960 -f 0.95904" а для "PAL=>NTSC с сохранением тона" надо только "--tempo 1001:960"?

Автор: shurikkein Суббота, 26 Декабря 2009, 9:54

2 userinfostarsoft:
получается так, вчера тянул дорожку , слушал, сравнивал результаты .
Не думаю, что слух меня обманул.
(я, правда, не заморачивался с упрощениями и ставил --tempo 25000:23976)

Автор: XChesser Суббота, 26 Декабря 2009, 12:23

QUOTE
Растяжение 25-->23.976 с сохранением тона -f 1 (т.е. по умолчанию)

Будем знать.
QUOTE
я, правда, не заморачивался с упрощениями и ставил --tempo 25000:23976

Правильнее 25025:24000. Погрешность небольшая, 8 мс с двухчасового фильма, но всё же.

2 userinfoshurikkein:
Главный вопрос: как дела с качеством?

Автор: shurikkein Суббота, 26 Декабря 2009, 12:57

QUOTE
Правильнее 25025:24000
да, так точнее должно быть, если округление не съест.
В адобе и лабе, как ни высчитывай, всё ограничено точностью ratio 104.271
здесь пока не понял.
QUOTE
как дела с качеством

не сравнивал пока.
и тогда встречный вопрос, как и с чем сравнивать?
Растянуть, потом обратно "стянуть", в адобе вычесть из оригинальной дорожки и посмотреть на разницу? так?



Автор: XChesser Суббота, 26 Декабря 2009, 14:03

QUOTE
и тогда встречный вопрос, как и с чем сравнивать? Растянуть, потом обратно "стянуть", в адобе вычесть из оригинальной дорожки и посмотреть на разницу? так?

Неа, ИМХО это не критерий качества. По этому критерию лучшим окажется как раз самый тупой алгоритм, по -моему: ASOLA выиграет у того же WaveLab наверно.
Я бы на слух оценивал. А чтобы не мешали предубеждения, "слепое сравнение" можно устроить. В foobar, например.

Автор: shurikkein Суббота, 26 Декабря 2009, 21:56

Посравнивал звучание двух дорожек, растянутых в адобе и в rubberband, приклеил ас3 к фильму. Не заметил никакой разницы.

QUOTE
В адобе и лабе, как ни высчитывай, всё ограничено точностью ratio 104.271

здесь тоже самое, только запятая перенесена, в командной строке высвечивается:
1.04271
загрузить сэмпл не могу - провайдер тестирует повышенные скорости, поэтому скорость околомодемная biggrinold.gif

Автор: XChesser Суббота, 26 Декабря 2009, 22:11

Проверил в Linux - то же самое. Такое же округление.
Посмотрю, что на выходе получается. Может, это вывод в консоль округляется, чтобы не пугать полным double.

А на выходе вот что:

CODE
rubberband --tempo 25025:24000 ...
...
Using time ratio 1.04271 and frequency ratio 1
...
in: 438806016, out: 457546690, ratio: 1.04271, ideal output: 457546690, error: 0

CODE
rubberband --tempo 25000:23976 ...
...
Using time ratio 1.04271 and frequency ratio 1
...
in: 438806016, out: 457547147, ratio: 1.04271, ideal output: 457547147, error: 0

Как видно, разница есть, т.е. округление производится при выводе на консоль, а сам алгоритм работает с более высокой точностью.

Автор: starsoft Воскресенье, 27 Декабря 2009, 1:50

2 userinfoshurikkein:
2 userinfoXChesser:
Так какой параметр изменения частоты надо поставить для "NTSC=>PAL без сохранения тона"?

Автор: shurikkein Воскресенье, 27 Декабря 2009, 9:31

NTSC=>PAL без сохранения тона
-f 1.04271
так получается

Автор: starsoft Воскресенье, 27 Декабря 2009, 19:55

Обновил програмку для ваших параметров профайлов, проверяйте, говорите что исправить.

Взять http://rapidshare.com/files/326627372/RBandGUI.zip.html или http://www.sendspace.com/file/afbu8p.

Автор: shurikkein Воскресенье, 27 Декабря 2009, 23:52

2 userinfostarsoft:
Спасибо!

Автор: shurikkein Четверг, 31 Декабря 2009, 17:38

Наткнулся на странную сборку. Качнул двд (с тру, golden child), ntsc, четыре звуковых дорожки.
Разобрал DGIndex-ом, три дорожки "нормальные", а одна короткая, расчитанная на 25 фпс, пришлось растягивать.
Внутри двд воспроизводится нормально, без опережения.
Как так можно собрать ? Просто любопытно стало.

Автор: Mantisby Понедельник, 04 Января 2010, 11:31

в двд афаик так быть не должно.

какая продолжительность у нормальной и короткой дорожек?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)