• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в оценке работ на конкурсе "Таинственные миры" 2024!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык
    Ссылка на тему с работами участников- тык

Gothic ½ Speech Converter / Конвертер озвучки - Native WAV to Vorbis OGG

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
  • Первое сообщение
  • #1
Конвертер озвучки GothicI/Gothic II - Native WAV to Vorbis OGG
GSC_20_Rus.jpg
GSC_20_Ukr.jpg
GSC_20_Eng.jpg

GSC_20_Ukr2.jpg
GSC_20_Rus2.jpg


Описание:
Gothic SpeechConverter - пакет инструментов для Gothic1, Gothic2(NoTR) и их модификаций позволяющий в автоматическом режиме, с минимальным участием пользователя конвертировать озвучку в VDF или MOD томах из стандартного формата файлов IMA ADPCM WAV в сжатый Vorbis OGG с расширением .WAV, что позволят сжать озвучку чуть более чем в два раза с сохранением качества не отличимого на слух от оригинального.


Системные требования:
*Windows XP или более новый.
*Установленный в игру Union или SystemPack 1.8, в которых внедрена поддержка воспроизведения Vorbis OGG.
*Для операций конвертирования каждого VDF или MOD тома с озвучкой требуется не менее 2Гб свободного места на накопителе, на котором установлена игра. При слиянии нескольких томов с озвучкой в один новый том может потребоваться в нексолько раз больше свободного места, в зависимости от количества и размера исходных конвертируемых томов.


Пакет инструментов включает:
Gothic_SpeechConverter.bat - командный файл, выполняющий все операции.
FileToOpen.exe - файл, требуемый для поддержки работы скрипта с диалоговым окном открытия файлов.
CoColor.exe - файл, требуемый для поддержки детальной колоризации консольного окна.
choice_xp.exe - файл, требуемый для работы выбора пунктов меню в Windows XP, подключается автоматически.
GothicVDFS.exe - утилита для автоматической распаковки VDF или MOD томов с файлами озвучки и создания новых томов с конвертированной в Vorbis OGG озвучкой.

Конвертер FFmpeg - включает три разных сборки: x64\x86\XP для поддержки как наиболее актуальных, так и проверенных временем Windows, нужная сборка определяется и задействуется автоматически:
ffmpeg_x64.exe - официальная сборка от gyan.dev для 64-битных Windows 7 и более новых.
ffmpeg_x86.exe - специальная сборка от sudo-nautilus для 32-битных Windows 7 и более новых.
ffmpeg_XP.exe - специальная сборка от rwijnsma для Windows XP.

По тестам конвертирование озвучки Gothic1 (~7300 файлов) через ffmpeg_x86.exe (32-bit) заняло 16 минут, через ffmpeg_x64.exe (64-bit) заняло 12 минут, что на 25% быстрее.


Установка и использование:
Распаковать содержимое архива Gothic_SpeechConverter_xxx.7z
- в Gothic\data или Gothic2\data для работы со стандартными VDF томами c озвучкой.
- в Gothic\data\modvdf или Gothic2\data\modvdf для работы MOD томами c озвучкой.

Запустить Gothic_SpeechConverter.bat, выбрать нужный пункт и ждать завершения выполнения всех операций.

Доступные пункты меню:
1 - Выбор томов с озвучкой в формате VDF для базовых игр Gothic1, Gothic2(NoTR) или томов MOD для их модификаций.
2 - Переключение установки TimeStamp с автоматического на принудительный с датой 31.12.2003
3 - Отображение расширенной информации об используемых компонентах, версии и сборке FFmpeg.
4 - Переключение цветовой схемы консольного окна.
5 - Переключение языка между русским, украинским и английским.
6 - Выход.

Процесс конвертации:
1. После выбора одного или нескольких VDF или MOD томов с озвучкой, оные будет автоматически распакованы при помощи GothicVDFS.exe
2. Далее при помощи ffmpeg начнется процесс конвертирования распакованных файлов из стандартного формата .WAV (IMA ADPCM) в Vorbis OGG
3. Для того чтобы игра смогла воспроизводить файлы конвертированной озвучки, все расширения .OGG будут заменены на .WAV
4. Если в меню VDF TimeStamp включен режим AUTO, TimeStamp для нового тома с конвертированной озвучкой будет сформирован из даты изменения исходного оригинального тома.
Если выбрана ручная установка VDF TimeStamp: 31.12.2003, то в новый том будет установлена соответствующая дата.
Перед началом упаковки нового тома с конвертированной озвучкой будет изменена системная дата на заданнай TimeStamp, после завершения процесса упаковки текущая дата будет восстановлена.
5. Конвертированные файлы будут автоматически запакованы при помощи GothicVDFS.exe в новый VDF или MOD том с приставкой _Vorbis (Исходные оригинальные тома при этом не удаляются!)
Если для конвертации было выбрано несколько томов с озвучкой, все тома после завершения конвертации будут слиты в один том.
Новое имя файла, комментарий VDFS в новом томе с озвучкой и автоматический TimeStamp по умолчанию будут считаны с последнего выбранного тома.
После завершения всех операций будет воспроизведен стандартный звуковой сигнал Windows, отобразится количество обработанных файлов, затраченное на обработку время, размер исходных оригинальных томов, размер нового тома, степень сжатия в процентах, после чего можно будет вернуться в главное меню.

P.S.
Для ознакомления с работой скрипта, файл Gothic_SpeechConverter.bat можно открыть в обычном текстовом редакторе с поддержкой DOS кодировки, например Notepad++, многие строки имеют комментарии.


Скачать:
Файлы архива упакованы последней версией 7zip с максимальным сжатием и для успешной распаковки необходимо использовать максимально свежие версии архиваторов!
С DropBox: Gothic_SpeechConverter_v2_0.7z
 
Последнее редактирование:

N1kX


Модостроитель
Регистрация
13 Ноя 2009
Сообщения
5.847
Благодарности
5.275
Баллы
910
2гб у одного vdf/mod файла.
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
а есть ограничения? я так понял что тома изначально ограничивали по весу под CD диски.
Изначально да, еще раньше использовалась файловая система FAT32, у которой ограничение на размер файла не более 4Гб. До того как начали использовать SystemPack и Union замечал что файлы с слишком длинными именами файлов не считывались игрой.
Игра старая 32-битная, с расширением адресного пространства (LAA HACK) может использовать не более 4Гб ОЗУ, кто знает, как будет читать большие тома, лучше об этих нюансах могут знать кодеры, например Gratt,

2гб у одного vdf/mod файла.
Судя по скрину выше, у Архолоса озвучка занимает 4.37Гб. Я так понимаю, это уже MW 7 объединял - интересно как будет работать в игре.
 
Последнее редактирование:

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.923
Благодарности
926
Баллы
275
Myxomop, том 2 гб с копейками в игре работает нормально.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
могут знать кодеры, например @Gratt,
Архолоса озвучка занимает 4.37Гб
Файловые системы SystemPack и Union работают с беззнаковыми целыми и могут принимать индексы внутри файловых томов вплоть до 4 гб. Классический vdf том хранит индексы в 4байтовом (32битовом) поле, именно поэтому том не может быть большего размера. Однако если же файл внутри тома НАЧИНАЕТСЯ до 4 гб, но его ДЛИНА выходит за 4 гб, то такой файл будет без проблем прочитан (если размер файла не более 2 гб), потому что движок на своей стороне принимает индекс относительно файла, а не тома.
ЗЫ но нужно понимать, что размер тома складывается не толко из данных, но и из хедера + файловой таблицы.
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
Gothic SpeechConverter v1.7
* Имя файла ffmpeg_x86_xp.exe переименовано в ffmpeg_XP.exe
* Обновлен конвертер FFmpeg x64\x86 до версии 6.0, FFmpeg XP до версии 5.2
ffmpeg_x64.exe - официальная сборка от gyan.dev для 64-битных Windows 7 и более новых.
ffmpeg_x86.exe - специальная сборка от sudo-nautilus для 32-битных Windows 7 и более новых.
ffmpeg_XP.exe - специальная сборка от rwijnsma для Windows XP.
* Оптимизация оформления интерфейса консольного окна символами псевдографики DOS.
* В 5 пункт меню добавлена расширенная информация об используемых компонентах.
* Процент выполнения операции конвертирования теперь отображается с дробными числами.
* После завершения конвертации добавлено определение размеров исходного и сжатого тома озвучки, а также степень сжатия в процентах.

MW 7,
Интересно было бы глянуть , будет ли разница в сжатии и времени обработки 4Гб озвучки Архолоса в новой версии конвертера.
 

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.923
Благодарности
926
Баллы
275
Gratt, так резюмируя стоит ли использовать один большой том для озвучки или лучше несколько небольших? :)

Интересно было бы глянуть , будет ли разница в сжатии и времени обработки 4Гб озвучки Архолоса в новой версии конвертера.
запустил. через пару часов отпишусь.
 
Последнее редактирование:

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
так резюмируя стоит ли использовать один большой том для озвучки или лучше несколько небольших?
Без разницы. Просто чтобы суммарный вес был не более 4 гб.
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
суммарный вес файлов в одном томе?
Ну Gratt, вроде про тома выше отвечал, к тому же общий размер файлов многих модов давно превышает 4Гб и это относится не только к озвучке, но и вообще к любым данным в томах.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
Суммарный вес всего тома.
Допустим черный меморилайн это 4 GB, в который ты пытаешься запихать свой том.
296 байтов займет заголовок тома
80 байтов * количество файлов и папок тома
Сами данные в размере больше или равно 4 GB. Вот если данные с учетом всего прочего выйдут (точкой начала) за пределы 4 GB меморилайна (заштрихованная область), то они будут невалидны. Произойдет переполнение индекса и условный файл с ожидаемым началом 4.15 GB превратится в действительный 0.15 GB.

1683311068466.png
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
Gratt,
Картники! *thumbs up*
Т.е. если MW 7, удалось запихать в том игры оригинальных файлов озвучки на 4.3Гб, то вместо последних трехсот мегабайт озвучки, игра будет пыаться искать файлы из первых трехсот мегайбайт?
А в случае перепаковки такого тома в 4.3Гб при помощи стандартной тузлы GothicVDFS, распакуются успешно все файлы для последующей конвертации и сжатия в том в 2Гб?
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
последних трехсот мегабайт озвучки, игра будет пыаться искать файлы из первых трехсот мегайбайт?
Да

А в случае перепаковки такого тома в 4.3Гб при помощи стандартной тузлы GothicVDFS, распакуются успешно все файлы для последующей конвертации и сжатия в том в 2Гб?
Нет, так как 32 битный индекс лежит в заголовке файла (в той структуре что весит 80 байтов) и он будет неверный уже на этапе запаковки тома.

ЗЫ если оригинальный GothicVDFS работает с signed integer значениями то, возможно, он не может адекватно запаковывать/распаковывать тома более 2 GB, но это лишь моё предположение.
 
Последнее редактирование:

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
Нет, так как 32 битный индекс лежит в заголовке файла и он будет неверный уже на этапе запаковки тома.
Получается защиту "от дурака" от переполнения в GothicVDFS не добавили...
 

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.923
Благодарности
926
Баллы
275
Интересно было бы глянуть , будет ли разница в сжатии и времени обработки 4Гб озвучки Архолоса в новой версии конвертера.
тоже самое
стараяновая
1683313765201.png
1683313736951.png
2 174 430 729 байт
2 174 328 921 байт

 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
Ну почти на 100байт сильнее ужал, правда счетчик чего-то поломался, видимо не может считать 4.3Гб нужно дорабатывать :D
 

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.923
Благодарности
926
Баллы
275
правда счетчик чего-то поломался, видимо не может считать 4.3Гб нужно дорабатывать
нет. я просто содержимое шести томов пережимал, запаковав в один том.

Код:
::GothicVDFS.exe /x %vdfname%.vdf
GothicVDFS.exe /x KM_Speech1PL.mod
GothicVDFS.exe /x KM_Speech2PL.mod
GothicVDFS.exe /x KM_Speech3PL.mod
GothicVDFS.exe /x KM_Speech4PL.mod
GothicVDFS.exe /x KM_Speech5PL.mod
GothicVDFS.exe /x KM_Speech6PL.mod
1683314454431.png
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.923
Благодарности
926
Баллы
275
3 - Ручной ввод имени другого VDF.
после ввода имени, добавить бы выбор расширения для файла. на днях хочу конвертировать звук для пси мода. там тоже файлы mod.
Пост автоматически объединён:

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

попробовал пережать звук из проекта D36 Gothic Russobit-M Fix. Архив получился чуть меньше 284 мб.

1683366030901.png


Myxomop, у тебя выводится информация о размере тома в Mb, хотя фактически ты берешь размер в байтах.
Код:
Set /a CompressedVDF=CompressedVDF/1000000
можно поправить
Код:
Set /a CompressedVDF=CompressedVDF/1048576
 
Последнее редактирование:

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
после ввода имени, добавить бы выбор расширения для файла. на днях хочу конвертировать звук для пси мода. там тоже файлы mod.
Попробую сделать универсальное определение расширения через проверку условием, или прямое считывание имени файла.

и я подумал, что в принципе для объедения нескольких архивов в один можно сделать отдельный батник. после пояснений @Gratt стало очевидно что тома можно смело укрупнять. и это может касаться не только для озвучки, но и других ресурсов (например текстур).
После твоего примера модификации скритпа возникла идея сделать отдельным меню пакетную обработку с объединением в один том, где будет например 7 слотов переменных, куда будут заносится имена файлов томов для распаковки в общую папку, а нажатием на 8 будет запускаться процесс конвертации и последующей упаковки в один том.

можно поправить
Ну, интерес пользователей и дельные предложения двигают разработку! *thumbs up*
 

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.923
Благодарности
926
Баллы
275
где будет например 7 слотов переменных
цифру лучше брать с запасом, так как часто еще есть тома с фиксом/патчем звука. например в оф. немецкой версии со стима G2NotR идёт два тома патча на озвучку. на англ. версию по моему два "патча" оф. и один неоф.
опять же кол-во томов можно запросить у пользователя в начале работ :)
 
Сверху Снизу