ErikPshat
19.03.2015, 13:41
[FAQ] Создание PMF роликов
на примере
Prince of Persia: Revelations
Что нам понадобится?
Prince of Persia: Warrior Within (http://nnm-club.me/forum/viewtopic.php?p=4224447) ПК версия лицензия (Ubisoft) - это версия с исходным качеством.
Русификатор (http://nnm-club.me/forum/viewtopic.php?t=468237) от официальной локализации фирмы "Акелла" или её ПК версия
Nova Software Extractor (https://www.pspx.ru/forum/showthread.php?t=105463) - для распаковки файлов *.bik
RAD Video Tools (https://www.pspx.ru/forum/showthread.php?t=105462) - для проигрывания и установки кодеков для Bink файлов формата *.bik
PSP версия (http://www.emuparadise.me/PSP_ISOs/Prince_of_Persia_-_Revelations_(Europe)/156138) игры на 5-ти языках.
Xvid4PSP (https://rutracker.org/forum/tracker.php?submit=1&o=1&nm=Xvid4PSP) / Зеркало (https://nnmclub.to/forum/tracker.php?submit=1&o=1&nm=Xvid4PSP) под Win64 - для кодирования *.bik в AVI (Офсайт (https://winnydows.com/ru/))
Umd Stream Composer (https://www.pspx.ru/forum/showthread.php?t=103400) - для кодирования AVI в MPS
CTFtool GUI v5 beta2 (https://www.pspx.ru/forum/showthread.php?t=84046) - для конвертирования MPS в PMF
Hex Workshop v6.8.0.5419 (http://rsload.net/soft/editor/11680-hex-workshop.html) - для редактирования заголовка PMF
Параметры видео и аудио для подготовки ролика для кодирования в Umd Stream Composer:
Параметры Видео - AVI (Huf-YUV, YUY2, RGB24), 64x64 min - 480x272 max, 29.97p, Progressive
Параметры Аудио - WAV, AVI, 44.1kHz, 16bit, Mono, 2ch (Stereo, Dual mono)
Инструкция по применению
Скачиваем и устанавливаем Prince of Persia: Warrior Within (http://nnm-club.me/forum/viewtopic.php?p=4224447) ПК версия лицензия (Ubisoft)
Если нет русской версии от Акелла, то устанавливаем Русификатор (http://nnm-club.me/forum/viewtopic.php?t=468237) от официальной локализации фирмы "Акелла". Во время установки не снимаем галочку "Делать бэкап". После установки русификатора, все локализованные файлы заменятся в игре, а их оригиналы от Ubisoft сохранятся в бэкап, в папку "Prince of Persia Warrior Within\Taverna_Rus\backup". Таким образом мы будем знать, какие файлы подвергались переводу.
На данном этапе нас интересуют видеоролики из папки "Video", но все файлы *.BIK пожаты и не поддаются воспроизведению, кодированию или редактированию. Поэтому, устанавливаем программу Nova Software Extractor (https://www.pspx.ru/forum/showthread.php?t=105463) и запускаем её.
На первой вкладке "Форматы" устанавливаем флажек на формате BIK (Bink Video), нажимаем кнопку "Выбрать", заходим в папку, например Prince of Persia Warrior Within\Video\Cine, удерживая кнопку SHIFT щёлкаем первый и последний файл в этой папке. Таким образом все файлы выделятся. Нажимаем кнопку "Открыть"
10813
Напротив следующей строки нажимаем 2-ую кнопку "Выбрать" и указываем пустую папку, куда сохранять извлечённые файлы.
Нажимаем кнопку "Начать", все выбранные файлы просканируются в новом окне и отобразятся.
Нужно нажать в левом нижнем углу кнопочку [+], в открывшемся окошке оставить метку *.* - все файлы пометятся галочками.
Теперь нажать кнопку "Извлечь" - файлы извлекутся в указанную папку. Можно закрыть программу.
10814
Устанавливаем RAD Video Tools (https://www.pspx.ru/forum/showthread.php?t=105462) - для проигрывания и установки кодеков для Bink файлов формата *.bik
После установки, распакованные файлы BIK можно просматривать в программе или конвертировать в другой формат.
Но мы будем конвертировать BIK через XviD4PSP (http://winnydows.com/ru/%D1%81%D0%B2%D0%B5%D0%B6%D0%B0%D1%8F-xvid4psp-daily-%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B0/). Конвертер состоит из одного файла и не требует установки, т.е. портабельный.
Запускаем конвертер XviD4PSP и производим последовательно пронумерованные действия, как на картинке ниже:
10815
Вообще, все настройки производятся только в 2-ух окнах: Codecs и Filters, поэтому будем переключаться только между ними и проверять их. Далее, настраиваем параметры видео, для этого нажимаем шестерёнку справа напротив кодека FFVHUFF или сверху в меню иконку Filters, выполняем инструкцию на рисунке ниже:
10816
Если выбирали пакетно сразу группу файлов, то нужно будет, в левом окне задач с видеофайлами, выделять каждый файл в отдельности и производить настройки для каждого файла отдельно. Затем, когда все файлы настроены, нажимаем "Start" кодирования, можно идти спать, а все файлы по очереди скодируются по заданным параметрам без вашего участия. Чтобы скрыть окно задач слева, нужно нажать в меню кнопочку "Tasks".
На последнем рисунке выше, показан простейший и наиболее часто употребляемый способ настроек параметров видео. Всё легко и просто. Вы только указываете конечное разрешение и программа сама автоматически обрежет видео ровно посередине до заданных вами размеров. То есть, программа сначала сделает пропорциональный Resize (масштабирование) из 800х600 до 480х360, а затем сделает Crop (обрезку) лишней высоты 360 до 272.
Но, ситуацию можно разрулить и другим способом, более ручным и тонким. Для этого, как вы заметили, есть дополнительные кнопочки. И многие начинают теряться, как ими пользоваться и для чего. Можно поступить наоборот, сначала сделать Crop "квадратного" видео 800х600 до формата 16:9 = 800х456, а затем просто смасштабировать до 480х274. Но так как пропорции исходника математически не масштабируются в точности до 272, а получается 274, то программа делает ещё раз Crop, чтобы убрать эти 2 пикселя. Инструкция ниже:
10817
Более подробнее об этом моменте...
Первый простейший способ подразумевает обрезку на автомате ровно посередине.
Этот же способ подразумеват обрезку вручную, когда вы хотите, например, сверху обрезать меньше, потому что головы засняты на видео вверху кадров, а снизу желаете срезать больше.
После выбора Pixel format: RGB24, необходимо выбрать, в блоке Resize, необходимое конечное разрешение 480х272, там же, программа покажет нам аспект 1,765. Это соотношение ширины к высоте: 480 : 272 = 1,765. Далее перходим к ручной обрезке, в блоке Crop, вручную подгоняем обрезку сверху и снизу, до тех пор, пока программа не покажет вам максимально приближенный аспект к 1,765. Это видно в конце строки Crop (где стоит галочка). Точно попасть на 1,765 не всегда удаётся, т.к. исходное видео математически может не делиться к этому знаменателю. Можно нажать кнопочку 16:9, чтобы программа подсказала, какие числа нужно обрезать, чтобы было посередине, и опираясь на эти подсказки, вы можете, меньше мучаясь с ручным подбором, уменьшить обрезку сверху, а снизу столько же добавить.
Так же, внизу программы виден лог - это порядок выполнения скрипта конвертации. Там будет видно, что в первой строчке появится Crop 800х456, а затем автоматическая операция Resize и снова Crop. Все подгонки вычислений, при ручном редактировании кропа, программа производит автоматически, к выставленному вами конечному разрешению 480х272.
Когда все настройки закончены, нажимаем в меню кнопку "Start" и наблюдаем кодирование.
Теперь переходим к кодированию звука. Каждый канал извлекается по отдельности. Делаем так, как показано на рисунке ниже:
10818
Далее переходим на вкладку Filters, там всё ещё проще:
10819
Затем жмём Start и кодируем.
То же самое производим с каждой дорожкой: переключаемся на вкладку Codecs, выбираем следующую дорожку, она переместится на первое место, но под своим номером. Не забывайте на каждой дорожке указывать её номер в названии выводимого файла в пути.
Переходим к кодированию в UMD Stream Composer...
Запускаем программу. Нажимаем кнопку "Новый" или "Файл -> Новый". В окошке вписываем "Название клипа" и "Название проекта"и жмём "Далее".
10820
Выставляем количество аудиопотоков и ставим галочку "PSP формат видео (для игр)" и жмём "Готово".
10821
В программе нажимаем кнопку "Источник видео", в открывшемся окошке жмём "Открыть" и указываем на AVI-видео.
10822
Нажимаем на кнопку "Источник аудио", в открывшемся окошке жмём "Открыть" и указываем на первую дорожку WAV-аудио.
10823
Каждую дорожку добавляем отдельно, т.е. каждый раз активируем в программе следующую дорожку и нажимаем на кнопку "Источник аудио" и добавляем дорожку. Нельзя в одном окошке добавлять все аудио, иначе они выстроятся в одну дорожку одна за другой последовательно. На рисунке более понятно:
10824
В результате должно получится вот так:
10825
Нажимаем кнопку "Настройки видео", выставляем "Средний битрейт: 512-608-768" и "Максимальный битрейт: 1200-1300-1500".
Битрейт от ваших предпочтений, я пробовал 512, получилось, как на PSP, рекомендую побольше, 608 или 768.
10826
Нажимаем слева вверху кнопку "Старт...", выбираем "Encode + Multiplex" и стартуем кодирование или выбираем в меню "Выполнить -> Кодирование + Финализация". Смотрим на процесс кодирования:
10827
Результат кодирования 00001.MPS будет лежать в документах в папке под названием проекта по следующему пути:
C:\Users\Ваша_Учётная_Запись\Documents\UmdStreamComposer\MuxWork\CINE0100\00001
Забираем этот файл, 00001.MPS, и кидаем в папку CTFtool GUI v5 beta2 (https://www.pspx.ru/forum/showthread.php?t=84046) для компиляции в PMF.
Выполняем в консоли команду: CTFtool_GUI -convert pmf -input 00001.MPS
Проще, создаём текстовой документ, вставляем туда эти строчки: @echo off
CTFtool_GUI -convert pmf -input 00001.MPS
pause
Сохранем с расширением *.bat и запускаем. Забираем полу-готовый 00001.pmf.
Но, то ли разработчики "pmffix" и "CTFtool_GUI" не знали что нужно патчить, то ли у них не получилось реализовать, но этот полу-готовый 00001.pmf нужно ещё доработать и выставить в заголовке необходимую длительность видео.
Запускаем Hex Workshop v6.8.0.5419 (http://rsload.net/soft/editor/11680-hex-workshop.html) или другой хекс-редактор.
Открываем в нём оригинальный файл PMF от PSP и сразу же наш 00001.pmf, видим такую спецификацию:
10828
Из оригинала нам необходимо перенести данные видеопотока в наш кастомный файл. Делаем по инструкции:
10829
Либо, можно копировать нужные нам байты с помощью утилиты Swiss File Knife (sfk) (http://stahlworks.com/dev/swiss-file-knife.html) следующей командой: @echo off
sfk partcopy ORIGINAL.PMF 0x50 0x60 00001.pmf 0x50 -yes
pause
Пример пакетного (https://www.pspx.ru/forum/showpost.php?p=1095890) конвертирования.
Всё! Переименовываем 00001.pmf под названием исходного видео. Можно видео вставлять в образ.
на примере
Prince of Persia: Revelations
Что нам понадобится?
Prince of Persia: Warrior Within (http://nnm-club.me/forum/viewtopic.php?p=4224447) ПК версия лицензия (Ubisoft) - это версия с исходным качеством.
Русификатор (http://nnm-club.me/forum/viewtopic.php?t=468237) от официальной локализации фирмы "Акелла" или её ПК версия
Nova Software Extractor (https://www.pspx.ru/forum/showthread.php?t=105463) - для распаковки файлов *.bik
RAD Video Tools (https://www.pspx.ru/forum/showthread.php?t=105462) - для проигрывания и установки кодеков для Bink файлов формата *.bik
PSP версия (http://www.emuparadise.me/PSP_ISOs/Prince_of_Persia_-_Revelations_(Europe)/156138) игры на 5-ти языках.
Xvid4PSP (https://rutracker.org/forum/tracker.php?submit=1&o=1&nm=Xvid4PSP) / Зеркало (https://nnmclub.to/forum/tracker.php?submit=1&o=1&nm=Xvid4PSP) под Win64 - для кодирования *.bik в AVI (Офсайт (https://winnydows.com/ru/))
Umd Stream Composer (https://www.pspx.ru/forum/showthread.php?t=103400) - для кодирования AVI в MPS
CTFtool GUI v5 beta2 (https://www.pspx.ru/forum/showthread.php?t=84046) - для конвертирования MPS в PMF
Hex Workshop v6.8.0.5419 (http://rsload.net/soft/editor/11680-hex-workshop.html) - для редактирования заголовка PMF
Параметры видео и аудио для подготовки ролика для кодирования в Umd Stream Composer:
Параметры Видео - AVI (Huf-YUV, YUY2, RGB24), 64x64 min - 480x272 max, 29.97p, Progressive
Параметры Аудио - WAV, AVI, 44.1kHz, 16bit, Mono, 2ch (Stereo, Dual mono)
Инструкция по применению
Скачиваем и устанавливаем Prince of Persia: Warrior Within (http://nnm-club.me/forum/viewtopic.php?p=4224447) ПК версия лицензия (Ubisoft)
Если нет русской версии от Акелла, то устанавливаем Русификатор (http://nnm-club.me/forum/viewtopic.php?t=468237) от официальной локализации фирмы "Акелла". Во время установки не снимаем галочку "Делать бэкап". После установки русификатора, все локализованные файлы заменятся в игре, а их оригиналы от Ubisoft сохранятся в бэкап, в папку "Prince of Persia Warrior Within\Taverna_Rus\backup". Таким образом мы будем знать, какие файлы подвергались переводу.
На данном этапе нас интересуют видеоролики из папки "Video", но все файлы *.BIK пожаты и не поддаются воспроизведению, кодированию или редактированию. Поэтому, устанавливаем программу Nova Software Extractor (https://www.pspx.ru/forum/showthread.php?t=105463) и запускаем её.
На первой вкладке "Форматы" устанавливаем флажек на формате BIK (Bink Video), нажимаем кнопку "Выбрать", заходим в папку, например Prince of Persia Warrior Within\Video\Cine, удерживая кнопку SHIFT щёлкаем первый и последний файл в этой папке. Таким образом все файлы выделятся. Нажимаем кнопку "Открыть"
10813
Напротив следующей строки нажимаем 2-ую кнопку "Выбрать" и указываем пустую папку, куда сохранять извлечённые файлы.
Нажимаем кнопку "Начать", все выбранные файлы просканируются в новом окне и отобразятся.
Нужно нажать в левом нижнем углу кнопочку [+], в открывшемся окошке оставить метку *.* - все файлы пометятся галочками.
Теперь нажать кнопку "Извлечь" - файлы извлекутся в указанную папку. Можно закрыть программу.
10814
Устанавливаем RAD Video Tools (https://www.pspx.ru/forum/showthread.php?t=105462) - для проигрывания и установки кодеков для Bink файлов формата *.bik
После установки, распакованные файлы BIK можно просматривать в программе или конвертировать в другой формат.
Но мы будем конвертировать BIK через XviD4PSP (http://winnydows.com/ru/%D1%81%D0%B2%D0%B5%D0%B6%D0%B0%D1%8F-xvid4psp-daily-%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B0/). Конвертер состоит из одного файла и не требует установки, т.е. портабельный.
Запускаем конвертер XviD4PSP и производим последовательно пронумерованные действия, как на картинке ниже:
10815
Вообще, все настройки производятся только в 2-ух окнах: Codecs и Filters, поэтому будем переключаться только между ними и проверять их. Далее, настраиваем параметры видео, для этого нажимаем шестерёнку справа напротив кодека FFVHUFF или сверху в меню иконку Filters, выполняем инструкцию на рисунке ниже:
10816
Если выбирали пакетно сразу группу файлов, то нужно будет, в левом окне задач с видеофайлами, выделять каждый файл в отдельности и производить настройки для каждого файла отдельно. Затем, когда все файлы настроены, нажимаем "Start" кодирования, можно идти спать, а все файлы по очереди скодируются по заданным параметрам без вашего участия. Чтобы скрыть окно задач слева, нужно нажать в меню кнопочку "Tasks".
На последнем рисунке выше, показан простейший и наиболее часто употребляемый способ настроек параметров видео. Всё легко и просто. Вы только указываете конечное разрешение и программа сама автоматически обрежет видео ровно посередине до заданных вами размеров. То есть, программа сначала сделает пропорциональный Resize (масштабирование) из 800х600 до 480х360, а затем сделает Crop (обрезку) лишней высоты 360 до 272.
Но, ситуацию можно разрулить и другим способом, более ручным и тонким. Для этого, как вы заметили, есть дополнительные кнопочки. И многие начинают теряться, как ими пользоваться и для чего. Можно поступить наоборот, сначала сделать Crop "квадратного" видео 800х600 до формата 16:9 = 800х456, а затем просто смасштабировать до 480х274. Но так как пропорции исходника математически не масштабируются в точности до 272, а получается 274, то программа делает ещё раз Crop, чтобы убрать эти 2 пикселя. Инструкция ниже:
10817
Более подробнее об этом моменте...
Первый простейший способ подразумевает обрезку на автомате ровно посередине.
Этот же способ подразумеват обрезку вручную, когда вы хотите, например, сверху обрезать меньше, потому что головы засняты на видео вверху кадров, а снизу желаете срезать больше.
После выбора Pixel format: RGB24, необходимо выбрать, в блоке Resize, необходимое конечное разрешение 480х272, там же, программа покажет нам аспект 1,765. Это соотношение ширины к высоте: 480 : 272 = 1,765. Далее перходим к ручной обрезке, в блоке Crop, вручную подгоняем обрезку сверху и снизу, до тех пор, пока программа не покажет вам максимально приближенный аспект к 1,765. Это видно в конце строки Crop (где стоит галочка). Точно попасть на 1,765 не всегда удаётся, т.к. исходное видео математически может не делиться к этому знаменателю. Можно нажать кнопочку 16:9, чтобы программа подсказала, какие числа нужно обрезать, чтобы было посередине, и опираясь на эти подсказки, вы можете, меньше мучаясь с ручным подбором, уменьшить обрезку сверху, а снизу столько же добавить.
Так же, внизу программы виден лог - это порядок выполнения скрипта конвертации. Там будет видно, что в первой строчке появится Crop 800х456, а затем автоматическая операция Resize и снова Crop. Все подгонки вычислений, при ручном редактировании кропа, программа производит автоматически, к выставленному вами конечному разрешению 480х272.
Когда все настройки закончены, нажимаем в меню кнопку "Start" и наблюдаем кодирование.
Теперь переходим к кодированию звука. Каждый канал извлекается по отдельности. Делаем так, как показано на рисунке ниже:
10818
Далее переходим на вкладку Filters, там всё ещё проще:
10819
Затем жмём Start и кодируем.
То же самое производим с каждой дорожкой: переключаемся на вкладку Codecs, выбираем следующую дорожку, она переместится на первое место, но под своим номером. Не забывайте на каждой дорожке указывать её номер в названии выводимого файла в пути.
Переходим к кодированию в UMD Stream Composer...
Запускаем программу. Нажимаем кнопку "Новый" или "Файл -> Новый". В окошке вписываем "Название клипа" и "Название проекта"и жмём "Далее".
10820
Выставляем количество аудиопотоков и ставим галочку "PSP формат видео (для игр)" и жмём "Готово".
10821
В программе нажимаем кнопку "Источник видео", в открывшемся окошке жмём "Открыть" и указываем на AVI-видео.
10822
Нажимаем на кнопку "Источник аудио", в открывшемся окошке жмём "Открыть" и указываем на первую дорожку WAV-аудио.
10823
Каждую дорожку добавляем отдельно, т.е. каждый раз активируем в программе следующую дорожку и нажимаем на кнопку "Источник аудио" и добавляем дорожку. Нельзя в одном окошке добавлять все аудио, иначе они выстроятся в одну дорожку одна за другой последовательно. На рисунке более понятно:
10824
В результате должно получится вот так:
10825
Нажимаем кнопку "Настройки видео", выставляем "Средний битрейт: 512-608-768" и "Максимальный битрейт: 1200-1300-1500".
Битрейт от ваших предпочтений, я пробовал 512, получилось, как на PSP, рекомендую побольше, 608 или 768.
10826
Нажимаем слева вверху кнопку "Старт...", выбираем "Encode + Multiplex" и стартуем кодирование или выбираем в меню "Выполнить -> Кодирование + Финализация". Смотрим на процесс кодирования:
10827
Результат кодирования 00001.MPS будет лежать в документах в папке под названием проекта по следующему пути:
C:\Users\Ваша_Учётная_Запись\Documents\UmdStreamComposer\MuxWork\CINE0100\00001
Забираем этот файл, 00001.MPS, и кидаем в папку CTFtool GUI v5 beta2 (https://www.pspx.ru/forum/showthread.php?t=84046) для компиляции в PMF.
Выполняем в консоли команду: CTFtool_GUI -convert pmf -input 00001.MPS
Проще, создаём текстовой документ, вставляем туда эти строчки: @echo off
CTFtool_GUI -convert pmf -input 00001.MPS
pause
Сохранем с расширением *.bat и запускаем. Забираем полу-готовый 00001.pmf.
Но, то ли разработчики "pmffix" и "CTFtool_GUI" не знали что нужно патчить, то ли у них не получилось реализовать, но этот полу-готовый 00001.pmf нужно ещё доработать и выставить в заголовке необходимую длительность видео.
Запускаем Hex Workshop v6.8.0.5419 (http://rsload.net/soft/editor/11680-hex-workshop.html) или другой хекс-редактор.
Открываем в нём оригинальный файл PMF от PSP и сразу же наш 00001.pmf, видим такую спецификацию:
10828
Из оригинала нам необходимо перенести данные видеопотока в наш кастомный файл. Делаем по инструкции:
10829
Либо, можно копировать нужные нам байты с помощью утилиты Swiss File Knife (sfk) (http://stahlworks.com/dev/swiss-file-knife.html) следующей командой: @echo off
sfk partcopy ORIGINAL.PMF 0x50 0x60 00001.pmf 0x50 -yes
pause
Пример пакетного (https://www.pspx.ru/forum/showpost.php?p=1095890) конвертирования.
Всё! Переименовываем 00001.pmf под названием исходного видео. Можно видео вставлять в образ.