Flash, Vmware und Sound
Manchmal führt kein Weg an einem Flash vorbei. So zum Beispiel der Projektmanagement-Kurs, an dem ich derzeit teilnehmen darf. Nur, leider, bleibt die E-Learning-Vorbereitung unter Linux stumm.
Beim Versuch, die Flashpräsentation unter Windows in meiner VMware zum Laufen zu bringen, ist mir aufgefallen, dass VMware und das Flash-Plugin für den Firefox unter Linux beide dasselbe Problem haben: Sie verwenden OSS, während auf meinem Notebook schon seit längerer Zeit ALSA zum Einsatz kommt.
Abhilfe für Flash: aoss firefox schiebt zwischen das Flashplugin und den Soundtreiber einen Indirektionslayer, der das Flashplugin unter Linux plötzlich Geräusche machen lässt. Sehr fein.
Leider funktioniert das für VMware nicht: aoss basiert auf LD_PRELOAD, und LD_PRELOAD wird für suid-root-Binaries, wie der VMware Player eins ist, wohl ignoriert. Die Dokumente, die ich im Web finde, erwähnen die Problematik entweder gar nicht (das sind wohl die Leute, die ständig als root arbeiten) oder empfehlen, die libaoss.so auch suid root zu setzen. Das treibt mir allerdings den Angstschweiß auf die Stirn. Geht das noch anders? Oder finde ich mich damit ab, dass mein Windows bis auf weiteres stumm bleibt?
Comments
Display comments as Linear | Threaded
Florian Laws on :
Wo siehst Du denn das Problem, die libaoss.so suid root zu setzen?
Ich interpretiere das als einen Marker für den ld.so, dass root diese Bibliothek abgesegnet hat, der weiter keine Auswirkungen hat.
Marc 'Zugschlus' Haber on :
Ich habe das nicht im Detail nachgelesen, aber ich habe Bedenken, dass bei einer suid root library irgendwelcher Code als root ausgeführt werden könnte anstelle mit den Rechten des aufrufenden Benutzers.
Wäre Deine Interpretation wahr, dann könnten doch fast alle Libraries "ab Werk" mit gesetztem suid-Bit ausgeliefert werden.
Maik on :
Die Kernel-OSS-Emulation von ALSA verwenden? Damit gibts ein "echtes" /dev/dsp. Einziger Makel, abgesehen von der generellen Unschönheit veralteter APIs: Gleichzeitige Nutzung durch mehrere Anwendungen ist nicht möglich (außer, die Soundkarte enthält einen Hardwaremixer, das ist aber selten und bei OnBoard nie der Fall). Sobald eine Anwendung darauf hängt, macht nix anderes mehr Töne.
Für Flash könntest du statt der aoss-Krücke auch die Flash Player 9 Beta nehmen. Instabiler als die offiziell stabile 7er-Reihe ist sie auch nicht, und sie benutzt nativ ALSA. Insbesondere Flash Video (z.B. Youtube) läuft damit wesentlich besser.
Marc 'Zugschlus' Haber on :
Ich glaube, die benutze ich eh - unfreiwillig? Jedenfalls existiert /dev/dsp, und wenn der vmplayer versucht, auf /dev/dsp zuzugreifen, kriegt er ein EBUSY.
Ich glaube, man merkt, dass ich mich mit Multimedia unter Linux bisher eher zurückhaltend beschäftigt habe.
kju on :
Es ist ja gerade das Problem der OSS-Emulation, daß dort halt nur ein Gerät kann. Und das Flash 9 Beta nicht schlechter läuft, kann ich nicht bestätigen. Bei mir gibts damit nur Probleme und nach einiger Laufzeit frisst es auch immer mehr Resourcen.