mAirList ignoriert Soundkarten-Zuweisung

Tagchen!

Also, ich habe für Player 1-3 die Kanäle Front, Hinten und S/W meiner Auron USB und für die Cartwall und PFL die Kanäle Front und Hinten meiner Realtek Soundkarte zugewiesen (wie schon in mAirList 2.2.). Alles wunderbar.

Starte ich jetzt mL und lade eine Playlist, klappt auch alles, die Elemente werden auf den jeweiligen Soundkarten der Player/Cartwall/PFL ausgespielt. Schliesse ich jetzt mL und starte es wieder, wird grundsätzlich ALLES auf den Frontkanälen der (Onboard-)-Realtek ausgespielt. In der COnfiguration, die ich danach dann sofort öffne, sind die Kanäle nach wie vor korrekt angegeben. Speichern, fertig. Und dann geht der Spass wieder von vorne los…

Wo liegt mein Fehler?

Das ist in der Tat nicht normal.

Kannst du mal bitte zur Kontrolle den Inhalt der devices.ini beobachten, ob er sich zwischendurch irgendwann ändert?

Hiho,
ich hatee ähnliches Phänomen allerdings bei Firewire (im Rechner sind 3 Firewire master Karten eingebaut).
Alles eingestellt und es lief.
Karte ab und an einem anderem Port wieder dran, schon ging alles über einen Kanal (in der Config war es aber noch ok).
Karte wieder auf urpsürnglichen Port und alles war wieder in Ordnung.

Daher die Frage 8da du ja eine USB karte hast)… wurde der USB Port gewchselt oder ist die karte immer an dem gleichen Port?

Grüße

Peter

Hi Piet!

Der Port ist der gleiche, Karte wurde nie abgezogen, nachdem mL 3.0.9. istalliert wurde.

@Torben: Ich klemme meine devices.ini mal mit dran, meines Erachtens ändert sich dort nichts.

Edit: Die Bass.ini packe ich mit dazu, vielleicht habe ich da irgendein Einstellungsfehler.


devices.ini (276 Bytes)

bass.ini (2.4 KB)

Wenn jetzt einfach nur die Lautsprecherzuordnung verloren gehen würde, dann hätte ich ja gesagt, es ist ein Problem mit der Soundkarte bzw. den Treibern bzw. den BASS-Flags.

Wenn aber ein Player plötzlich sogar auf einer ganz anderen Soundkarte spielt, dann spricht es eher dafür, dass die Konfiguration nicht richtig eingelesen wird.

Ich habe dir mal das folgende Script erstellt. Damit kannst du während mAirList läuft die verwendeten Soundkarten aller Player ins System Log (Doppelklick auf Statuszeile des Hauptfensters) schreiben lassen und mit den Soll-Werten vergleichen. Ich bin gespannt, was dabei herauskommt.

var
  i, j: integer;
begin
  for i := 0 to Engine.GetPlaybackControlCount -1 do
    for j := 0 to Playlist(i).GetPlayerCount - 1 do begin
      SystemLog('Playlist ' + IntToStr(i+1) + ', plyer ' + IntToStr(j+1) + ', playback: ' +
        Instance.GetDeviceConfig.BuildDevice(ptOrdinaryPlayer, i, j, -1, false).GetDisplayName);
      SystemLog('Playlist ' + IntToStr(i+1) + ', player ' + IntToStr(j+1) + ', PFL: ' +
        Instance.GetDeviceConfig.BuildDevice(ptOrdinaryPlayer, i, j, -1, true).GetDisplayName);
    end;

  for j := 0 to Engine.GetCartwallControl.GetPlayerCount - 1 do begin
    SystemLog('Cart player ' + IntToStr(j+1) + ', playback: ' +
      Instance.GetDeviceConfig.BuildDevice(ptCartPlayer, -1, j, -1, false).GetDisplayName);
    SystemLog('Cart player ' + IntToStr(j+1) + ', PFL: ' +
      Instance.GetDeviceConfig.BuildDevice(ptCartPlayer, -1, j, -1, true).GetDisplayName);
  end;
end.

Wollt ihr mal lachen? Jetzt funktioniert es… Brat’ mir doch einer 'nen Storch…

Das Script habe ich als “Sound.mls” im Hauptverzeichnis abgespeichert, ist das korrekt? Im Statusfenster wird dann allerdings nur angezeigt, das es geladen wurde, mehr (außer den anderen Angaben) steht dort dann aber auch nicht.

Edit: Kommando zurück, es funktioniert wieder nicht. Ausserdem wird nach jedem Start bzw. Beenden von mL die devices.ini gespeichert (sehe ich am Änderungsdatum), so wie bei einigen anderen ini.Dateien auch, mit Ausnahme der Skin.ini.

Ich habe den Eindruck, das mL die Einstellungen nur dann ausliest, wenn ich es in der Config abgespeichert habe. Nach dem anschliessenden Start funktioniert es auch. Starte ich dann mL wieder neu, wird wieder nur die im System angegebene Standard-Soundkarte benutzt (welches die Realtek-Onboardkarte ist).

Zur Information: Ich verwende Windows 7 64bit. Mit Version 2.2.3 gab es keine Probleme.

Du musst das Script unter irgendeinem Dateinamen (.mls-Endung) in einem beliebigen Ordner speichern und dann über “Datei -> Script ausführen” öffnen. In der Konfiguration zu registrieren brauchst du es nicht.

Von Windows 7 habe ich gelesen, dass es Schreib- und Lesezugriff auf Dateien unterhalb von C:\Programme (wo auch die Konfiguration von mAirList liegt) teilweise blockiert bzw. in einen ominösen AppData-Ordner umleitet. (Ich selbst habe Windows 7 noch nicht testen können.) Vielleicht liegt da das Problem? Hast du mal probiert, mAirList als Administrator zu starten? Oder, andere Möglichkeit, kopiere mal den gesamten mAirList-Ordner an irgendeine andere Stelle und starte es von dort.

Hihi… mL ist nicht auf C: installiert. Keines meiner Programme befindet sich dort, es sei denn, es wird beim Systemstart benötigt. Alle anderen Programme haben eine eigene Partition, der Übersicht halber.

Ich werde mL jetzt noch mal als Admin starten und dann das Script ausführen. Mal sehen, was passiert.

Witzig… jetzt kann ich nicht mal mehr eine Playlist öffnen… örks… Ausserdem ist es nicht möglich, auf das Netzwerk von mAirList aus zuzugreifen, das Problem besteht aber schon länger. Habs nur noch nicht angemeldet.

Sorry für Doppel/Dreifach-Post: Ich muss jetzt los, Geld verdienen. Ich werde mich heute abend weiter damit auseinandersetzen und ggf. mL neuinstallieren.

Brauchst Du noch ini-Dateien von mir? Dann jage ich die gleich noch hoch. Ansonsten bis “später”.

Grus, Maic.

Soundkartenproblem scheint gelöst. Ob das jetzt nun an 3.0.10 liegt weiss ich nicht, jedenfalls läuft es so jetzt.