2010-05-19 20 views
0

Je développe actuellement un moteur audio qui est utilisé dans le logiciel de messagerie vocale en réseau. Tout fonctionne bien - capture/lecture/mixage des canaux.DirectSound affecte le volume du système sur WinXP

Le problème est de l'utiliser sous Windows XP. J'ai reçu des rapports d'utilisateur avec des informations que leur volume système global est défini sur zéro après le lancement de l'application. Je suppose que cela se produit à cause du conflit WaveOut/DSound. Comment puis-je forcer DSound à ne pas affecter le volume du système? Le périphérique de lecture est initialisé: DirectSoundCreate8 (& GUID, & pAudio, NULL);

et:

pAudio-> SetCooperativeLevel (ParentWnd, DSSCL_PRIORITY);

Je ne suis actuellement pas en mesure de déboguer l'application, car j'utilise Vista et tout est OK.

J'espère que vous pouvez m'aider avec ce problème! Merci beaucoup!

Cordialement, Anton.

+0

Bonjour à nouveau, autant que j'ai compris le problème est que PRIMARY BUFFER SetVolume méthode change également le volume du système sur WinXP. Comment puis-je forcer DSound à ne pas affecter le volume du système XP? !! S'il vous plaît, aidez! Cordialement, Anton – Dalamber

Répondre

0

Quelle que soit la raison pour laquelle vous ne définissez pas le volume sur les tampons secondaires? Travail terminé!

Si vous définissez déjà le volume sur les tampons secondaires, tout ce dont vous avez besoin est un multiplicateur global pour multiplier chaque volume qui est défini sur un tampon par.