-
Notifications
You must be signed in to change notification settings - Fork 174
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hybrid Reverb problems when Convolution portion over 0.25s #398
Comments
@devil304 Unfortunately, we are unable to reproduce this issue on our end. Could you provide us with some more information about your setup, such as one of the following:
Any other information you can provide about the circumstances in which the crash occurs would be helpful. Thanks! |
Yes, I will provide screenshots and crush dump as soon as possible when I return to audio tasks in project. I'm currently doing other stuff. I should get back to audio in a week top. |
@lakulish Here are screenshots and dump, same Unity and Steam Audio versions as in first post. As you can see here, there is audio on mixer group selected in Audio Source but there is nothing going through to Listener Based Reverb mixer group or to master. Other Mixer Groups weren't used in this test. Second Audio source didn't have selected any audio mixer group but there was complete silence from game. When I changed Hybrid Reverb Transition Time to 0.25 everything worked fine. Position of player and Audio Sources was the same for 0.518 and 0.25 values. Here is dump, Editor Crashed when stopping game with 0.518 value. As in previouse cases caught with debbuger attached to Unity Editor from start so it should be complete memory/crash dump. (it's 11.5GB so I compressed it to 7z) |
@devil304 Thanks for providing this information! We were able to reproduce the issue. The crash is occurring because the hybrid reverb transition time (0.518 seconds) is greater than the reverb IR duration (0.25 seconds). This is why the crash disappears when the transition time is set to 0.25 or less. I am committing a fix for this shortly. If you are able to build phonon.dll from source, you can do so and test out the updated code, and let me know if the issue persists. Otherwise, updated binaries with the fix will be available as part of the next Steam Audio release, and in the meantime, you can increase the reverb IR duration to be greater than the transition time, to work around the crash. |
… when the transition time is greater than the IR duration See also #398
I didn't use real-time reverb anywhere and baked has longer duration. But I assume Hybrid Reverb uses real-time duration anyway. |
@lakulish I compiled steam audio from source few times, but I always have problems with that, maybe you can give me some tips. |
@devil304 The real-time duration setting is used in two ways: 1) it is used for real-time reverb, and 2) it is also used when loading baked reverb data and using it at run-time. This is subtle difference: in your case, you've set baked duration to 4.2s, so the baked data contains 4.2s IRs, but since your real-time duration is 0.25, when the baked data is loaded, only the first 0.25 are loaded for each IR. As for compiling Steam Audio, yes, unfortunately the version of Radeon Rays we use requires VS2015. You may need to install VS2015 Community Edition (i.e., the whole IDE, instead of just the build tools). Switching to a newer version of Radeon Rays will let us use newer compilers, but they dropped OpenCL support in newer versions, and switched to Vulkan. This would require us to make major changes and switch our GPU kernels to Vulkan as well, which is a non-trivial task. An alternative might be to hand-craft a patch to Radeon Rays which manually ports their build scripts from Premake to CMake. In the meantime, if you're not using the GPU features of Steam Audio, you can disable Radeon Rays and TrueAudio Next temporarily. The |
Thanks for information! I will try to compile new version using whole VS2015 on Monday and will let you know if something goes wrong. |
@lakulish It seems to work on new version (I compiled steam audio using VS2015 without a problem)
(I only censured my system paths) |
I was building it on Windows 11 using VS2015 (android build also) |
@devil304 Yes, we have run into issues with building FFTS, which can vary depending on platform, compiler version, etc. For this reason, we are considering phasing out FFTS and using PFFFT on Android. There is a CMake flag, |
It's fixed in version compiled from current code in repository. You can close it now or leave it open until new version will be released. |
System Information
Please provide the following information about your system:
Issue Description
When Convolution portion of hybrid reverb is set over 0.25s (0.25s is ok, but for example 0.3s starts breaking) sound will disappear or engine will crash (soon or on stop or on play)
I'm using 6 audio sources playing in loop and all of them are using baked listener-based reverb through Unity Audio Mixer
Steps To Reproduce
Steps to reproduce the behavior:
If you are able to provide a minimal project or minimal source code that reproduces the issue, include a link to the project/code here.
I can't
Crash Dump
Will provide later
The text was updated successfully, but these errors were encountered: