Jump to content

  • Log In with Google      Sign In   
  • Create Account


why dsound CommitDeferredSettings call regopenkeyex?


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
3 replies to this topic

#1 ChenA   Members   -  Reputation: 131

Like
0Likes
Like

Posted 14 May 2013 - 05:13 AM

i use vtune to analyse my application, but i found a unexpected hotspot.

 

IDirectSound3DListener8::CommitDeferredSettings, i don't know why this function will call RegOpenKeyEx.

 

my os is win7 64.

any suggestion will be appreciated, thanks.

 


dsound.jpg


hehe.

Sponsor:

#2 SimonForsman   Crossbones+   -  Reputation: 5810

Like
0Likes
Like

Posted 14 May 2013 - 05:34 AM

It is expensive to change the listener settings in DirectSound, which is why you use the CommitDeferredSettings function (to apply all changes at once), as for why it involves the registry i'm not sure.

 

It shouldn't really be a hotspot though since you shouldn't have to call that function all that often. (once per listener and frame should be enough, and you probably don't need more than one listener)


Edited by SimonForsman, 14 May 2013 - 05:35 AM.

I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

#3 InvalidPointer   Members   -  Reputation: 1373

Like
0Likes
Like

Posted 14 May 2013 - 05:57 AM

I would venture that it's changing the Windows speaker settings, but I'm not an expert on such things.


clb: At the end of 2012, the positions of jupiter, saturn, mercury, and deimos are aligned so as to cause a denormalized flush-to-zero bug when computing earth's gravitational force, slinging it to the sun.

#4 ChenA   Members   -  Reputation: 131

Like
0Likes
Like

Posted 14 May 2013 - 07:11 PM

It is expensive to change the listener settings in DirectSound, which is why you use the CommitDeferredSettings function (to apply all changes at once), as for why it involves the registry i'm not sure.

 

It shouldn't really be a hotspot though since you shouldn't have to call that function all that often. (once per listener and frame should be enough, and you probably don't need more than one listener)

thanks, i just use one listener, and i just call CommitDeferredSettings once every frame.


hehe.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS