Sound effects missing with Rapture 3D

Support for running, installing or compiling OpenMW

Before you submit a bug report for the first time, please read: Bug reporting guidelines
DDQW
Posts: 8
Joined: 13 Aug 2018, 21:51

Sound effects missing with Rapture 3D

Post by DDQW »

Hi there,

i use Rapture 3D for HRTF (in my opinion it is superior to OpenAL Soft). But ih have a funny problem:

Music Works
Speech Works

locational Audio (for speech in this case) works pefectly well.

But all the Sound Effects are missing for a weird reason.


Does anynone have an idea why this is the case?
Chris
Posts: 1625
Joined: 04 Sep 2011, 08:33

Re: Sound effects missing with Rapture 3D

Post by Chris »

Do you have the log output? Are there any audio-related errors?
DDQW
Posts: 8
Joined: 13 Aug 2018, 21:51

Re: Sound effects missing with Rapture 3D

Post by DDQW »

Code: Select all

Loading config file: C:\Users\Woelki\Documents\My Games\OpenMW/openmw.cfg... done.
Loading config file: ./openmw.cfg... done.
OpenMW version 0.44.0
Revision: ef85b1393a
Using default (English) font encoding.
OSG version: 3.4.1
Loading settings file: ./settings-default.cfg
Loading settings file: C:\Users\Woelki\Documents\My Games\OpenMW/settings.cfg
Adding BSA archive C:\Program Files\OpenMW 0.44.0\Data Files\Morrowind.bsa
Adding BSA archive C:\Program Files\OpenMW 0.44.0\Data Files\Tribunal.bsa
Adding BSA archive C:\Program Files\OpenMW 0.44.0\Data Files\Bloodmoon.bsa
Adding data directory F:\Usenet\ThElderScr3IIMoMorrowindGOTYGOG\ThElderScr3IIMoMorrowindGOTYGOG\Data Files
Adding data directory C:\Program Files\OpenMW 0.44.0\Data Files
Detected game controller: XInput Controller
Initializing OpenAL...
Opened "Rapture3D"
  ALC Version: 1.1
  ALC Extensions: ALC_ENUMERATE_ALL_EXT ALC_ENUMERATION_EXT ALC_EXT_CAPTURE ALC_EXT_DEDICATED ALC_EXT_DEFAULT_FILTER_ORDER ALC_EXT_EFX ALC_EXT_STATIC_BUFFER
  Vendor: Blue Ripple Sound Limited - Copyright 2007-2018
  Renderer: Rapture3D v12.9.5
  Version: 1.1
  Extensions: AL_EXT_BFORMAT AL_EXT_DOUBLE AL_EXT_EXPONENT_DISTANCE AL_EXT_FLOAT32 AL_EXT_FOLDBACK AL_EXT_IMA4 AL_EXT_LINEAR_DISTANCE AL_EXT_MCFORMATS AL_EXT_MULAW AL_EXT_MULAW_BFORMAT AL_EXT_MULAW_MCFORMATS AL_EXT_OFFSET AL_EXT_SOURCE_RADIUS AL_EXT_STEREO_ANGLES
HRTF status unavailable
Allocated 256 sound sources
Low-pass filter supported
EAX Reverb supported
Enumerated output devices:
  Rapture3D
Loading content file Morrowind.esm
Loading content file adamantiumarmor.esp
Loading content file AreaEffectArrows.esp
Loading content file bcsounds.esp
Loading content file Better Clothes_v1.1.esp
Loading content file Tribunal.esm
Loading content file Bloodmoon.esm
Loading content file Better Heads.esm
Loading content file Better Heads Bloodmoon addon.esm
Loading content file Better Heads Tribunal addon.esm
Loading content file EBQ_Artifact.esp
Loading content file entertainers.esp
Loading content file LeFemmArmor.esp
Loading content file master_index.esp
Loading content file RealSignposts.esp
Loading content file Siege at Firemoth.esp
Playing Music/Special/morrowind title.mp3
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
Failed to open image: Resource 'textures/bb/bb_decalf_rg.dds' not found
Failed to open image: Resource 'textures/bb/bb_decalf_br.dds' not found
Loading cell -5, 3
Loading cell -5, 4
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
Loading cell -5, 5
Loading cell -4, 3
Loading cell -4, 4
Loading cell -4, 5
Loading cell -3, 3
Loading cell -3, 4
Loading cell -3, 5
Failed to open image: Resource 'textures/bb/bb_decalf_im.dds' not found
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
warning fallingScript line 46, column 6 (endif)
    endif without matching if/elseif
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
Playing music/explore/mx_explore_2.mp3
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound3D:1180
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
>>>>>>>>> AL error Invalid parameter. (40963) @ MWSound::OpenAL_Output::playSound:1150
Quitting peacefully.
Funny thing is it says hrtf unavailable but the speech dfinitly is hrtf
Chris
Posts: 1625
Joined: 04 Sep 2011, 08:33

Re: Sound effects missing with Rapture 3D

Post by Chris »

Looks like Rapture3D doesn't like the source's play offset being set before the buffer. I recall hearing about a similar issue elsewhere.
DDQW wrote: 14 Aug 2018, 06:52 Funny thing is it says hrtf unavailable but the speech dfinitly is hrtf
It says the HRTF status is unavailable, so it can't tell you if HRTF is on or not. Standard OpenAL doesn't say anything about HRTF, you may have it or you may not depending on what the implementation cares to do, so the app won't know (an extension that allows requesting/querying it through OpenAL isn't in wide-spread use, only OpenAL Soft has it currently).
DDQW
Posts: 8
Joined: 13 Aug 2018, 21:51

Re: Sound effects missing with Rapture 3D

Post by DDQW »

can i help you in any way to get this working? i contacted blueripple sound they looked at the source code and they think the game is not checking the extensions correctly.

maybe i can get you in contact with them?
Chris
Posts: 1625
Joined: 04 Sep 2011, 08:33

Re: Sound effects missing with Rapture 3D

Post by Chris »

I don't see how it has anything to do with extensions. The problem is Rapture3D does not seem to accept setting the source's playback offset prior to the buffer being attached. I can see why it wants to behave that way (makes certain state tracking simpler), but the spec does not mention that kind of interaction between the current buffer and setting a playback offset on a non-playing source.
The spec wrote:When setting AL_BYTE_OFFSET on a source which is already playing, the playback
will jump to the new offset unless the new offset is out of range, in which case an
AL_INVALID_VALUE error is set. If the source is not playing, then the offset will be
applied on the next alSourcePlay call. An alSourceStop, alSourceRewind, or a second
alSourcePlay call will reset the offset to the beginning of the buffer.
The same thing is mentioned for the other AL_*_OFFSET properties. So that behavior would be correct if the source was playing, but in this case it's stopped/rewound, meaning the offset should be stored and apply on the next alSourcePlay call whenever that may be (e.g. after setting the buffer), rather than right away.

As for getting it to work, it shouldn't be too hard. It simply needs to reorder some lines to set the offset after the buffer. It just needs a bit of care to ensure things are cleaned up properly in case of an error.
User avatar
psi29a
Posts: 5355
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Sound effects missing with Rapture 3D

Post by psi29a »

By it, you mean Rapture3D, in that their drivers do not follow the spec?
Chris
Posts: 1625
Joined: 04 Sep 2011, 08:33

Re: Sound effects missing with Rapture 3D

Post by Chris »

psi29a wrote: 19 Aug 2018, 08:53 By it, you mean Rapture3D, in that their drivers do not follow the spec?
Yes, their driver doesn't follow the apparently intended behavior of the spec (given the wording, and how Creative's drivers work (and OpenAL Soft, which was based on Creative's software driver)). However, it shouldn't be difficult for OpenMW to work around the issue by simply reordering some calls, and ensuring proper cleanup with the reordering.
User avatar
psi29a
Posts: 5355
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Sound effects missing with Rapture 3D

Post by psi29a »

I would think it would be in their best interest to follow the spec and be compatible, we could work around a vendor's problem but we should at least warn the end user so that they can put pressure on the vendor to fix their driver. Would that be appropriate?
User avatar
AnyOldName3
Posts: 2666
Joined: 26 Nov 2015, 03:25

Re: Sound effects missing with Rapture 3D

Post by AnyOldName3 »

I don't think we should work around vendor-specific issues if we're following the spec unless the person complaining is the one actually implementing the workaround. If another dev fixes it, they could have been working on something they're more interested in that affects more people, but if someone with the skill to fix it is personally annoyed enough to solve the problem, there's not much point in not merging the change they're likely to end up making anyway.

I sort of have a similar quandary with shadows right now. Some Mesa users have reported that a certain change I made to the shaders has a huge performance hit, but I've got a patch that works around it. The patch makes things uglier and harder to understand, and really Mesa shouldn't have a huge performance penalty for a change which makes no difference on every other GPU driver that's been tested.
Post Reply