Current time: 15.07.2020, 07:02 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Стабильная работа со звуком без вылетов
Author Message
Ben Offline

Posts: 29
Post: #1
Музыка 
Известно, что данная проблема была решена в HD моде.

Однако, было интересно узнать подробности рецепта. Давно еще когда-то пробовал просто взять новые библиотеки, идущие вместе с HD модом - mss32.dll и MP3DEC.asi, но звук глючил (пробовал на ванильном SOD). После декомпиляции HD мода методом тыка решил попробовать занопить 6 байт начиная с 0x599B31 с помощью инжектированной Dll.
Не помогло, хотя, как оказалось, идея была правильной - просто код по данному адресу выполняется очень рано.

Итоговое решение именно такое, желательно только пропатчить экзешник до запуска. Как объяснил автор GLWrapper, Verok, там вызывается функция, устанавливающая размер фрагмента в 100. А при ее затирании используется значение по умолчанию.

Небольшая проблема в том, что на некоторых современных системах при любых MSS32.dll и MP3DEC.asi идет отставание звука от картинки. На игровых форумах советуют отключать аппаратное ускорение звука
(через dxdiag). В Вин 7 такой возможности нет, в отличие от XP, так что особо упорные копируют dsound.dll c XP. Говорят, это решает и более общие проблемы со звуком (но не всегда).
17.06.2020 00:24
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 12683
Post: #2

Ben, спасибо за исследование. Как думаешь, стоит ли принудительно включать dsound.dll с XP, или на Win7/10/Wine это вызовет больше проблем, чем пользы. Люди о каких ОС писали?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
17.06.2020 00:29
Find all posts by this user Quote this message in a reply
Ben Offline

Posts: 29
Post: #3

Ну, если инфу по хакингу-патчингу я предоставил точную, то с dsound.dll сам не пробовал ("одна бабка сказала"). Посты нагугливал старые, речь шла о Семерке. У кого-то - да, больше проблем, чем пользы. Но многим помогает.
17.06.2020 00:32
Find all posts by this user Quote this message in a reply
Ben Offline

Posts: 29
Post: #4

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

Ну и жесткий патчинг экзешника, на самом деле, необязателен. Скажем, при использовании ASI плагина, который патчит указанные байты в памяти - все работает, как запланировано. Видимо, при DLL injection, который я изначально использовал, подгрузка в память поздновато происходит.
ASI плагин - это по сути, обычная DLL, только расширение поменять. Подгружаются в память ASI файлы даже обычной ванильной игрой, с помощью библиотеки MSS. Без HD мода ASI файлы кладутся в корень игры, с HD модом - в _HD3_Data.
18.06.2020 21:51
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 12683
Post: #5

Ben, засада с этим звуком. А на каких системах были лаги с библиотеками HD мода?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
18.06.2020 22:39
Find all posts by this user Quote this message in a reply
Ben Offline

Posts: 29
Post: #6

(18.06.2020 22:39)Berserker Wrote:  Ben, засада с этим звуком. А на каких системах были лаги с библиотеками HD мода?

Я, честно сказать, вообще не большой знаток железа. Любой геймер знает про видюхи и звуковухи больше меня. А я работаю над своими задачами на чем придется.
Собственно, у меня почти везде были эти лаги, например, на моноблоке на работе Ab
Дома вот только стоит PC старенький, Core 2 Duo, Gigabyte GA-P35-S3G. Здесь все отлично.
18.06.2020 23:10
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 3698
Post: #7

Ben, я полагаю, имелось ввиду на каких "операционках", а не "железе"



Image: 237506073ac7.gif
18.06.2020 23:15
Visit this user's website Find all posts by this user Quote this message in a reply
Ben Offline

Posts: 29
Post: #8

Да я на Семерке все работаю.

(18.06.2020 22:39)Berserker Wrote:  Ben, засада с этим звуком. А на каких системах были лаги с библиотеками HD мода?

Ну, получается что в большинстве случаев проблемы решаемы. Либо ванильные библиотеки работают без вылетов, либо хдмодовские без лагов. Как-то так.
В Героях 2 вот MP3 нет, и проблем таких нет. Наверно, и в Героях 3 можно MP3 переконвертировать и использовать другой формат.
(This post was last modified: 18.06.2020 23:27 by Ben.)
18.06.2020 23:27
Find all posts by this user Quote this message in a reply
Ben Offline

Posts: 29
Post: #9

Оказывается, GLWrapper может работать с WAV вместо MP3. Заменил в папке MP3 на вейвы - все нормально, все работает. Объем, конечно, немалый, на 830 МБ файлов WAV получилось.

Исходники открыты, если что - https://github.com/Verokster/HeroesGL
Шкурка может и не стоит выделки, но если есть интерес...

В общем, решения проблем со звуком ныне вагон и маленькая тележка.
(This post was last modified: 19.06.2020 01:12 by Ben.)
19.06.2020 01:09
Find all posts by this user Quote this message in a reply
daemon_n Away

Posts: 1971
Post: #10

win 10 - игра с HD mod !!! без него нет проблем
если отлючить звуки (не музыку), не проигрывается музыка !!!


HoMM3 ERA 2.9.14 HD RUS/ENG v1.31 (27.06.20)Yandex/Google
Топ Дискорд Сервер по Эре.
20.06.2020 02:49
Visit this user's website Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2020 MyBB Group