Autor Thema: [QEMU] AC97 driver - Kein Sound  (Gelesen 8147 mal)

Ch40zz

  • Beiträge: 12
    • Profil anzeigen
Gespeichert
« am: 07. February 2016, 23:19 »
Hey Leute :)
Bin relativ neu hier, super wiki und forum habt ihr :D
Nun zu meinem Problem:
Dank des Tutorials in der wiki konnte ich mir schnell den AC97 driver für Intel ICH (0x8086, 0x2415) kopieren und testen (Man findet ja kaum verwertbare Informationen zu den Specs, in den Intel Docs steht nicht viel dazu).
In Virtualbox läuft alles ziemlich gut, die WAV wird komplett ohne Fehler abgespielt.
Jedoch funktioniert das ganze in QEMU nicht. Benutze momentan "-soundhw all" in der commandline, das Gerät wird auch gefunden und erkannt.
Außerdem wird im Windows-Sound Mixer QEMU anezeigt wenn ich die play flags in den port schreibe, nur leider hört man keinen Ton und die Interrupts triggern nicht.
Vielen Dank im Vorraus :)

PS: Ist das normal dass der Interrupt nach dem abspielen des Sounds durchgehend gespammed wird? o.o
« Letzte Änderung: 07. February 2016, 23:26 von Ch40zz »

Svenska

  • Beiträge: 1 792
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 08. February 2016, 03:00 »
PS: Ist das normal dass der Interrupt nach dem abspielen des Sounds durchgehend gespammed wird? o.o
(Achtung: Post komplett ohne Ahnung vom Thema!)
Ich kann mir gut vorstellen, dass der Interrupt ein "Puffer ist leer, bitte Daten einfüllen"-Zeichen ist und so lange aktiv bleibt, bis du entweder neue Daten einfüllst oder ihn abschaltest. Pegelgesteuerte (level-triggered) Interrupts lassen sich in Hardware relativ einfach implementieren. Ob das in deinem Fall auch so ist, sagt das Datenblatt... mit AC97 habe ich mich noch nicht befasst.

PS: Willkommen im Forum! Hab ich ganz vergessen. ;-)

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 08. February 2016, 10:27 »
Ebenfalls komplett ohne Ahnung vom konkreten Chip, aber ich würde davon ausgehen, dass Daten nachfüllen allein nicht reicht, sondern man den Interrupt irgendwie acken muss (oft durch Schreiben in ein Interruptstatusregister).
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

Ch40zz

  • Beiträge: 12
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 08. February 2016, 12:24 »
Ok danke Leute :D
Hab endlich mal das echte Datenblatt gefunden (http://download.intel.com/design/chipsets/datashts/29065503.pdf)
Da steht alles drin wegen den Buffern und Interrupts.

Hab mir QEMU Manager gedownloaded, und siehe da, die alte QEMU Version unterstützt Sound! :D
Musste nur eine andere Auflöung für meine GUI suchen, es unterstützt wohl noch keine 1920x1080.
Danke an alle :)
« Letzte Änderung: 08. February 2016, 15:39 von Ch40zz »

 

Einloggen