Показать сообщение отдельно
Старый 18.09.2018, 17:47   #21
Жрец Нефтиды
Модератор
 
Аватар для Жрец Нефтиды
 
Регистрация: 15.07.2012
Адрес: Санкт-Петербург
Сообщений: 1,395
Сказал(а) спасибо: 344
Поблагодарили 539 раз(а) в 368 сообщениях
Вес репутации: 624
Жрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond repute
По умолчанию Качественное преобразование swf Shockwave в видео

Формат swf Shockwave принципиально отличается от остальных форматов, таких, как h264, XViD, VC-1, mpeg-2 и т.п. Формат Shockwave – это векторный формат. В Shockwave видео хранится в виде формул, описывающих контуры изображений. Это чем-то похоже на шрифт Times New Roman: буквы и размером 15, и размером 115 будут одинаково гладкими.
Термин "конвертация" неточен по отношению к преобразованию Shockwave в другие кодеки. Мы можем конвертировать, скажем, VC-1 в XViD. Если же исходником является swf Shockwave, и из него нам нужно получить видео, сжатое каким-либо другим кодеком, то тут произойдёт нечто иное. Исходник swf будет воспроизведён плеером Adobe Flash Player Active X. В момент воспроизведения видео будет захвачено программой и сжато каким-либо кодеком. А захват – дело тонкое. Например, если мы выполним операцию захвата два раза подряд при внешне одинаковых условиях, то конечные файлы будут слегка отличаться. Не сильно, но всё-таки будут. Это не есть признак брака.
В некоторых программах предпринята попытка использовать, вместо Adobe Flash Player Active X, свой собственный альтернативный плеер-декодер. Сколько раз я попробовал эту магию запустить – столько раз она и глюкнулась. Видимо, в отношении формата Shockwave программистов Adobe никто не может догнать. Так что будем считать захват видео с Adobe Flash Player Active X самым лучшим способом преобразования swf Shockwave в видео.
Теперь мы подошли к первой очень важной тонкости. Понятие "разрешение" для swf Shockwave весьма условно. Возьмём для примера файл OgreGUIHelp.swf, который зачинщик турнира выложил в посте № 4. Медиаинфо даёт разрешение 576x443. Большинство программ-преобразователей swf в видео выдаст конечный результат с разрешением, округляем до чётного, 576x444. Посмотрим такое видео и увидим, что буквенные изображения смазались и совсем не различимы. Если мы в программе-преобразователе зададим большое разрешение, то захват всё равно будет произведён с разрешением 576x443, и уже потом изображение будет отмасштабировано. Что абсолютно не улучшит качество.
Для получения качественного результата нам нужно заставить Adobe Flash Player Active X воспроизводить swf с большим разрешением. Именно такое видео мы будем захватывать. Просмотрев множество программ, я нашёл только одну, которая может это сделать. Программа называется "Тундерсофт флэш ту видео конвертер" [Для просмотра данной ссылки нужно зарегистрироваться] В Сети также бродит русифицированная версия данной программы.
Запускаем программу, открываем swf. В окне "Import" жмём "Advanced…". В графе "Flash player" вводим повышенные разрешения. Важно, чтобы они максимально точно соответствовали отношению разрешений swf, и были чётными. Поясню на нашем примере. Допустим, мы хотим иметь на выходе высоту изображения 1080. Тогда ширина равна 1080*576/443=1404. Если ты решил встать на скользкую тропинку монтажа и тебе нужно будет вырезать какую-либо часть изображения и представить её в большом формате, то можно просто данные разрешения умножить на 4. То есть ввести 2304 на 1772.
OK.
Идём на вкладку "Setting". И вот тут мы подошли ко второй очень важной тонкости. Всеми нейронами жреческого головного мозга нам нужно осознать, как программа будет работать. На первом проходе Тундерсофт захватит видео с флэш плеера и сожмёт его кодеком, а также одновременно захватит аудио в несжатом формате wav. Вот на этом бы и следовало остановиться. Но нет. Программа выполнит ещё два прохода: пережмёт видео, а потом снова пережмёт видео одновременно с аудио. Задумайся над этим. Другие программы поступают аналогичным образом.
Поэтому нам потребуется жреческая хитрость. Жмём "Help" – "Locate log file". Открылась папка. В ней открываем папку "Temp". И не закрываем: в неё будут записываться файлы.
Выходной формат выбираем avi. Поверь – он даст лучший результат по параметру качества. Битрейт задаём "Высокий". А не число. При таком подходе у первичного захваченного файла квантизёр для I и P кадров будет постоянный и равный 2, а B кадров не будет. Что есть очень хорошо. Что мы зададим для аудио – значения не имеет, скоро поймёшь, почему.
Жмём на "Convert". "Mode" выставляем "Auto". В этом режиме во время захвата окно плеера закроется, что благотворно скажется на отсутствии потерянных кадров. Ставим птицу у "Auto finish". Жмём на "Play and Capture".
Захват пошёл. Во время захвата не делай никаких других действий на компьютере. Уж потерпи.
Итак, пока идёт первичный захват, и в скобках ты видишь (1 / 3), ты держишь руку на мыши, глубоко дышишь и ничего не делаешь. Как только увидел (2 / 3), то из двух avi файлов в папке "Temp" выявляешь тот, который побольше и не изменяется в размерах, и копируешь его в любое другое место. Успеть это тебе надо сделать, пока (2 / 3) не переросло в (3 / 3). Также успей скопировать файл wav – он только один. После этого программу можно выгружать – дальнейшие результаты её работы нам не нужны.
Файл wav – это звуковой исходник, захваченный с флэш плеера. Его параметры не зависят от того, что мы задали в Тундерсофте для аудио. Этот wav имеет битность 32, что явно много. Понижаешь битность до 16 при помощи Фубар – он округляет точно по законам математики. При помощи Виртуал Даба соединяешь в прямоточном режиме видео и wav. Качественный файл avi готов. Просмотри его на плеере BE, и убедись, что текстовые составляющие видны очень чётко. Можешь скормить этот avi монтажке.
Разумеется, вся данная разработка нужна только в том случае, если без монтажа не спится. Конечно же, лучше всего просматривать swf в исходном качестве. Для этого тебе потребуется установить плеер Active X из поста № 16, а файл swf лучше всего просматривать на плеере BE.
Жрец Нефтиды вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
kurkoff1965 (18.09.2018)