Fehler in XNA Audio API?

Mit der Audio API von XNA schlage ich mich ja schon länger herrum… Immer wieder erzeugen meine Versuche die Lautstärke zu ändern(auf gültige Werte versteht sich…) seltsamme Fehler. Ich hatte länger mit einer CrossThreadCallMessagingExeption zu kämpfen, bis sie auf einmal nicht mehr auftrat.

Ich hatte das Problem als erledigt abgetan. Heute kommt beim starten plötzlich ein Fehler: Die Zeile

SoundEffect.MasterVolume = 0.15f;

Erzeugt eine AccessViolationExeption!

Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.

??? Was soll das denn heissen? Im Internet finden sich Hinweise, dass dieses Problem auftritt wenn man in .NET mit unsafe Code(sprich Zeigern) arbeitet und diese dann in auf Systemspeicher zeigen. Da .NET nicht für unsafe Code gemacht ist, geht es davon aus, dass der RAM einen Fehler hat und deshalb ein (interner) Zeiger kaputt ist.

Fazit? Da ich nicht mit Zeigern arbeite und mir keines Fehlers bewusst bin, gehe ich von einem Fehler in der XNA Audio API aus! Ein Blick auf den Stacktrace zeigt:

bei Microsoft.Xna.Framework.Audio.KernelSoundEffect.InitializeSingletonXAudio2()
bei Microsoft.Xna.Framework.Audio.KernelSoundEffect.SetMasterVolume(Single masterVolume)
bei Microsoft.Xna.Framework.Audio.SoundEffectUnsafeNativeMethods.SetMasterVolume(Single volume)
bei Microsoft.Xna.Framework.Audio.SoundEffect.set_MasterVolume(Single value)
bei tKoD.AudioManager.set_SFXVolume(Single value) in D:\c_sharp\Programme\The Kingdom of Darkness\tKoD\sonst. Manager\AudioManager.cs:Zeile 41.
bei Game1..ctor() in D:\c_sharp\Programme\The Kingdom of Darkness\tKoD\Game1.cs:Zeile 38.
bei tKoD.Program.Main(String[] args) in D:\c_sharp\Programme\The Kingdom of Darkness\tKoD\Sonstige Dateien\Program.cs:Zeile 13.

Das da tatsächlich etwas mit Unsafe im Spiel ist.

Da ich da wohl nichts machen kann warte ich auf einen Fix von Micrsoft…oder eine seltsamme Selbstheilung wie letztes mal…drückt mit die Daumen!

Ähnliche Beiträge:

About Niklas

Ich bin Niklas Rother, der Autor dieses Blogs. Ich schreibe hier über meine Erfahrungen mit XNA, (speziell bei der Entwicklung meines Spiels, The Kingdom of Darkness), über meine anderen Programme, und was mir sonst noch so technisches einfällt. Momentan erscheint hier ca. 1x pro Woche ein Artikel...
This entry was posted in Programmieren, XNA and tagged , , , . Bookmark the permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>