Hallo Leute,
Spiele ich via NAS und
eine "normale" WAV-Datei ab, funktioklappert alles.Code:QSound::play("dingsbums.wav");
Erwische ich unter den WAVs eins mit RIFF-Format, herrscht Stille.
Was ist der Grund?
so long,
BlueJay
Hallo Leute,
Spiele ich via NAS und
eine "normale" WAV-Datei ab, funktioklappert alles.Code:QSound::play("dingsbums.wav");
Erwische ich unter den WAVs eins mit RIFF-Format, herrscht Stille.
Was ist der Grund?
so long,
BlueJay
Vermutlich beherrscht NAS dieses Format nicht.
Ciao,
_
Qt/KDE Entwickler
Debian Benutzer
NAS oder Qt, das ist die Frage!
Habe aber seit gestern den Workaround auf Platte.
so long,
BlueJay
NAS. Qt macht ja glaub ich nix mit dem File, was sollte es denn schon groß damit tun außer Lesen und die Daten an NAS weiterreichen
Ciao,
_
Qt/KDE Entwickler
Debian Benutzer
Hm, dann habe ich noch eine Frage:
Mit dem gentoo musste ich etwas tricksen, weil das ebuild Fehler meldete.
Habe mir das qds gezogen und compiliert.
Dann habe die entstandenen Libraries zu den anderen libs im Betriebssystem kopiert (sonst kein Start).
Dann qdstest aufgerufen, der startet auch brav, bleibt aber beim Abspielen eines (normalen WAVs) stumm. aRts selbst ist aktiv (process manager).
Leider kann ich nicht sehen, was los ist, weil das komplette Menu sowie ein ziemlicher Teil des Hilfe-Textes von dem "Soundlader" komplett verdeckt wird.
so long,
BlueJay
Wenn du nur die aRts Sache brauchst, könntest du den entsprechenden Code aus dem aRts Plugin von QDS direkt verwenden.
QDS ist ansich für Applikationen gedacht, die plattformübergreifend bleiben wollen, also nicht direkt mit systemspezifischen Sachen linken können.
Anderenfalls kann ich versuchen, dir Hilfestellung beim Debuggen zu geben, hatte in den letzten Monaten leider keine Zeit für QDS
Ciao,
_
Qt/KDE Entwickler
Debian Benutzer
An so was habe ich gedacht, allerdings kann ich dem Modul nur unter NAS Töne entlocken, und das kann mein Prog ja jetzt schon.Zitat von anda_skoa
Da scheint noch irgend eine Bibliothek zu fehlen oder nicht am richtigen Platz zu sein.
so long,
BlueJay
--
Linux gentoo
Athlon 1200 Duron
Wenn du die Dateien des aRts Plugins direkt verwendest, musst du auf jeden Fall dafür Sorge tragen, dass init_QSound() vor der ersten Benutzung der QSound API aufgerufen wird, weil sonst das Standardbackend initialisiert wird.Zitat von BlueJay
Die Libs gegen die du in diesem Fall selbst linken musst, findest du leicht aus dem arts.pro raus.
Ciao,
_
Qt/KDE Entwickler
Debian Benutzer
Jo, dummerweise ist die Variable ARTSINCLUDE u.a. in meinem System nirgendwo gesetzt, aber die kde/3.3-Libs scheinen eine gute Ecke zu sein.Zitat von anda_skoa
Aber ich denke mal, das ich das heute nicht mehr schaffe
so long,
BlueJay
Die gibt es ansich auch nicht, muss man derzeit immer händisch setzen. Aber damit der Entwickler weiß, welche Informationen QMake braucht, hab ich dafür Variabeln im .pro File.Zitat von BlueJay
Bei einer KDE Installation kann man ARTSINCLUDE auf das KDE include Verzeichnis setzen und ARTSLIBS auf das KDE Lib Verzeichnis
Ciao,
_
Qt/KDE Entwickler
Debian Benutzer
Genauso steht es jetzt, arts compilierte prima,Zitat von anda_skoa
und blauäugig, wie ich bin, habe ich das Directory mit den neuen libs in die spooky.pro mit reingehängt:
in ./arts_plug sind auch die libs.Code:INCLUDEPATH += . ./german ./arts_plug
main.cpp bekam folgende zusätzlichen Einträge:
... und den init_QSound meckert er mir an als nicht gefunden:Code:#include <arts.h> ... ... printf("setze arts-sound\n"); if (init_QSound()>0) printf("aRts-Sound erhalten!\n"); else printf("kein aRts-Sound, benutze NAS!\n"); ... starte_all();
Das Ding steht auch nicht im aRts-Header (?), also war ich wohl irgendwie beim Einbinden zu blöd. Sorry, bin erst ein halbes Jahr Linuxer/Qt-User.Code:g++ -c -pipe -Wall -W -O3 -mtune=athlon -march=athlon -pipe -DQT_NO_DEBUG -I/usr/qt/3/mkspecs/linux-g++ -I. -I. -Igerman -Iarts_plug -I/usr/qt/3/include -o main.o main.cpp main.cpp: In function `int main(int, char**)': main.cpp:347: error: `init_QSound' undeclared (first use this function) main.cpp:347: error: (Each undeclared identifier is reported only once for each function it appears in.) make: *** [main.o] Error 1
so long,
BlueJay
Du kannst das einfach am Anfang deiner main.cpp deklarieren.
In QDS brauch ich die Deklaration nicht, weil da kein Header eingebunden wird, sondern über QLIbrary das Symbol im Plugin gesucht wird.
Ciao,
_
Qt/KDE Entwickler
Debian Benutzer
Das hat das Problem erst mal vom Compiler zum Linker verschoben,
ich mache erst morgen weiter.
so long,
BlueJay
Hm, bin mit meionem Latein erst mal am Ende.
Auch das "mitgelieferte" qdstest bringt es nicht fertig, was anderes als den NAS zu benutzen.
Ich muss dazu dagen, dass ich *kein* arts-devel Package installiert habe, sondern mit einer "anwendertypischen" Installation von gentoo arbeite, also nur das "eingeschleppte" Library-Zeugs habe.
Und wenn das so ein Aufstand wird, passt das auch nicht zur Zielgruppe.
Irgendwie scheinen sich NAS und aRts spinnefeind zu sein, nicht mal mit artsdsp wird was durchgelassen.
so long,
BlueJay
Irgendwelche Linkerfehler?Zitat von BlueJay
Muss nichts heißen, da ist immerhin Pluginloading dabei, das auch schiefgehen kann.Auch das "mitgelieferte" qdstest bringt es nicht fertig, was anderes als den NAS zu benutzen.
Da es kompiliert scheinst du alles zu haben.Ich muss dazu dagen, dass ich *kein* arts-devel Package installiert habe, sondern mit einer "anwendertypischen" Installation von gentoo arbeite, also nur das "eingeschleppte" Library-Zeugs habe.
Man müsste ansich nur die Verzeichnisse für die aRts Header und aRts Libraries automatisch suchen.Und wenn das so ein Aufstand wird, passt das auch nicht zur Zielgruppe.
Geht wahrscheinlich einfacher, wenn man eine KDE Installation vorraussetzt, da kann man dann mit kde-config arbeiten.
Ciao,
_
Qt/KDE Entwickler
Debian Benutzer
Lesezeichen