- cdda://<DRIVE>/?track=<TRACK_NUMBER>
DGL https://delphigl.com/forum/ |
|
@Audorra - Digitale 3D-Audiobibliothek https://delphigl.com/forum/viewtopic.php?f=14&t=8820 |
Seite 1 von 4 |
Autor: | igel457 [ Sa Nov 21, 2009 20:20 ] |
Betreff des Beitrags: | @Audorra - Digitale 3D-Audiobibliothek |
Meinungen hierzu bitte hierher. Andreas |
Autor: | Lord Horazont [ Sa Nov 21, 2009 20:25 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Klingt nach ernsthafter Konkurrenz für FMOD. Bitte noch Pulseaudio-Ausgabe hinzufügen - viele weitverbreitete Linux-Distributionen (Fedora, Ubuntu u.m.) setzen darauf, daher wäre eine saubere Schnittstelle zu PA schon gut. Vorallem gibt es nicht so viele, die das gut machen. Aber ich bin gespannt wies weiter geht .... Auf jeden Fall vielversprechend! greetings |
Autor: | Flash [ Sa Nov 21, 2009 20:34 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Klingt wirklich gut - und vorallem nützlich! Du solltest in der Projektbeschreibung nochmal auf die zugrundeliegende Plattform hinweisen. Soweit ich das verstanden habe geht es hier um Pascal. Das ist bei DGL aber nicht mehr selbstverständlich. ![]() |
Autor: | igel457 [ Sa Nov 21, 2009 22:18 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Hallo, danke für die Antworten. @Lord Horazont: Kein Problem, ich füge es in die ToDo-Liste ein. Die Anforderungen, die ich an die Ausgabe-API stelle sind eigentlich relativ gering: Ich muss nur ein Ausgabegerät öffnen können (am Besten mit Mehrkanalton) und Daten daran streamen können. Alles weitere erledigt meine Bibliothek. @Flash Schon geschehen... |
Autor: | Ziz [ Sa Nov 21, 2009 22:52 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Das klingt echt verdammt gut! Weiter so, ich bin echt gespannt wie ein Flitzebogen. |
Autor: | TAK2004 [ So Nov 22, 2009 18:31 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Ich empfehle dir die Idee mit Alsa support zu verwerfen und auf PulseAudio zu setzen. Alsa war das alte Sound System und wird seit ner weile durch PulseAudio ersetzt. So ist bei Fedora z.B. schon seit Version 10 default PulseAudio installiert und Alsa muss nach installiert werden. PulseAudio ist noch hier und da ein bischen wakelig aber funktioniert mitlerweile auf den meisten Systemen besser und mit mehr Funktionalität. Solltest du dann mit einer Linuxunterstützung anfangen, dann wäre es Ratsamer gleich auf PA zu setzen, da Alsa deprecated ist. Das Projekt sieht gut aus aber wie es damit programmieren lässt, werde ich nicht erfahren :\ (C++ Programmierer). |
Autor: | igel457 [ So Nov 22, 2009 21:41 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Danke für den Hinweis, dann werde ich stattdessen PulseAudio verwenden ![]() Zunächst möchte ich allerdings libao testen, welche ein sehr kompaktes API bereitstellt - vielleicht funktioniert das so gut, dass ich auf Systemspezifische Bindings verzichten kann. |
Autor: | Ziz [ So Nov 22, 2009 22:48 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Ich behaupte das Gegenteil: Nutze BEIDES! PulseAudio ist noch LANGE davon entfernt eine uneingeschränkt gute Lösung zu sein. Ich habe es bei mir z.B. runterschmeißen müssen, da es eklatante Probleme gab. Davon abgesehen, dachte ich immer, dass PulseAudio eine Art emuliertes ALSA mitbringt (oder so). |
Autor: | TAK2004 [ Mo Nov 23, 2009 00:02 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Pulseaudio ist ein Client-Serverbasiertes Netzwerkprotokoll, welches die Audiodaten in Form von TCP/IP übermittelt. Aufgrund von den Loopbackadapter geht das nahezu ohne verlust und erlaubt dazu noch viele coole features, wie SoundServer,Netzwerk Streaming und so weiter. Da ist allerdings auch der Fehlerteufel begraben, denn es muss jede Deviceanfrage von extern über den Daemon gesynct versendet werden. Mit Fedora11 hat man PA soweit korrigiert und stabilisiert, dass es nun so ziemlich bugfrei ist und auf den wenigstens Hardwaresystemen noch probleme hat. Leider sind die Bibliotheken wie gstreamer, ffmpeg und co nich so flink und man findet jetzte noch Bugs im Tracker wie gstreamer stellt global Volume sporadisch bis auf 0% runter. Totem, Rhythmbox und wie die ganze Software heisst basiert auf diesen Libs und damit gibt es schon mal Fehler aber die haben dann sehr selten noch mit PA zu tun. PA hat default ein ALSA emulator mit als package installiert(fedora distros zumindestens) und somit laufen alle ALSA Programme ebenfalls. Seit PA gibt kann ich nun endlich Mumble, Musik, Flash und andere Soundquellen für Audio Ein- und Ausgang überhaupt gleichzeitig nutzen. Selbst Wine läuft dank PA endlich Problemlos ![]() Der größte Vorteil an PA ist, dass man nur noch eine Audiobibliothek benötigt, da diese unter allen bekannten unix/linux und windows OS läuft(wie sdl,openal,libao). Ein weiterer Vorteil ist die API von PA, ein Grund für das weg gehen von ALSA war, weil die API so umständlig und groß ist, dass ständig Fehler in Software entstehen, die Alsa nutzen. Ein Mumble/Ventrilo,/Teamspeak mit PA zu schreiben beläuft sich in Rahmen von 200-300 Zeilen Code, wovon locker 90% Logik und GUI sind. PA baut aktuell noch intern auf ein Minimalistisches Alsa und/oder OSS auf und bietet nach außen eine schlanke einfache API. |
Autor: | NerdIII [ Mo Nov 23, 2009 20:04 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Das es PulseAudio gibt habe ich noch garnicht mitbekommen. Bin noch auf dem Stand OSS ist deprecated und ALSA ist state-of-the-art. Bei mir läuft alles mit ALSA und auch parallel. Nur das Flash Plugin stolpert oft nach einiger Zeit. (Wine läuft auch - wenn das Sequenzer Modul geladen ist) Ich sehe das also so wie Ziz. Gib den Leuten erst mal Zeit sich mit PulseAudio auseinanderzusetzen. Hätte mich voll erwischt, wenn du kein ALSA unterstützt ![]() Werde bei Zeiten aber mal gucken ob ich umsatteln sollte oder ich mir damit nur einen unnötigen Wrapper um ALSA einhandele. |
Autor: | abu [ Sa Jan 02, 2010 21:33 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Eine schöne Bibliothek hast du da gemacht ![]() ich möchte eine Art digitale Lichtorgel programmieren. Ganz einfach gesagt, wenn der Computer grade einen Bass abspielt brauche ich eine Meldung die ich weiter verarbeiten kann. Gibt es in der Bibliothek etwas was ich dafür benutzen könnte ? lg Björn |
Autor: | Lord Horazont [ Sa Jan 02, 2010 21:38 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Dafür wird es am besten sein, wenn du dir die Werte einer Fourier-Transformation (s. Fourieranalyse) schnappst. Diese wird ja von Audorra auch unterstützt, das heißt, du musst die Berechnung nicht einmal selbst durchführen. Du schaust einfach, ob in dem entsprechenden Tonfrequenzband ein entsprechender Ausschlag ist und schon kannst du feststellen, ob ein Basston vorliegt. Viel Erfolg |
Autor: | Lord Horazont [ So Jan 03, 2010 18:12 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Denk mal darüber nach, ob du deine cdda-Pfadangabe nicht eher noch einmal anpassen willst, um zwischen Windows und Linux möglichst wenig unterschiede zu haben. Denn der Pfad zu einem Laufwerk unter Linux ist ja meistens Länger als nur ein Schritt, es könnte also auch mal cdda:///dev/cdrom0 rauskommen. Einfacher wäre es dann, die Tracknummer z.B. mit ? abzuspalten (um im URL-Stil zu bleiben). Übrigens finde ich es reichlich schwer, Audorra unter Linux mit FPC zum kompilieren zu bekommen. An vielen Stellen machst du Sachen, die der FPC nicht wegsteckt oder die unter 64-bit ungültig sind. Wenn du Objekte oder Pointer auf Zahlen casten willst, nutze dafür bitte ptrint. Der passt sich der Pointergröße auf dem jeweiligen System an. Auch finde ich keine lib für Acinerella, welches man für die eine Demo ja unbedingt braucht. Auch wäre es schön, wenn du die einzelnen Audorra-Units irgendwie kennzeichnen würdest, was unbedingt laufen muss, damit Audorra läuft und was nur „schmückendes Beiwerk“ ist. Vielleicht Au*.pas vs. AuX*.pas oder sowas. greetings |
Autor: | igel457 [ So Jan 03, 2010 19:56 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Hi, erstmal Danke für die Antworten. abu hat geschrieben: Vielleicht kannst du mir sagen ob sie für mein Projekt geeignet ist... Ja, das geht damit ohne Probleme. Einfach die FFT-Analyse einbinden und in einem Timer die Frequenzbänder überprüfen. Lord Horazont hat geschrieben: Übrigens finde ich es reichlich schwer, Audorra unter Linux mit FPC zum kompilieren zu bekommen. Hm... Unter 32-Bit Linux läuft es bei mir ohne Probleme - ich habe es einfach aus dem SVN geholt und es lief auf anhieb... Wie es mit 64-Bit aussieht habe ich leider - mangels istalliertem 64-Bit Betriebsystem - nicht sagen. Da wäre ich recht froh, wenn mir jemand helfen könnte. Lord Horazont hat geschrieben: Auch finde ich keine lib für Acinerella, welches man für die eine Demo ja unbedingt braucht. acinerella.sf.net -> Herunterladen (aus dem CVS-Archiv) -> Compilieren -> fertig ![]() Lord Horazont hat geschrieben: Auch wäre es schön, wenn du die einzelnen Audorra-Units irgendwie kennzeichnen würdest, was unbedingt laufen muss, damit Audorra läuft und was nur „schmückendes Beiwerk“ ist. Vielleicht Au*.pas vs. AuX*.pas oder sowas. Alles in den Unterordnern "src/drivers", "src/protocols" und "src/decoders" ist optional. Der (überwiegende) Teil der Units im Stammverzeichnis wird auf jeden Fall benötigt. Lord Horazont hat geschrieben: Denk mal darüber nach, ob du deine cdda-Pfadangabe nicht eher noch einmal anpassen willst, um zwischen Windows und Linux möglichst wenig unterschiede zu haben. Denn der Pfad zu einem Laufwerk unter Linux ist ja meistens Länger als nur ein Schritt, es könnte also auch mal cdda:///dev/cdrom0 rauskommen. Einfacher wäre es dann, die Tracknummer z.B. mit ? abzuspalten (um im URL-Stil zu bleiben). Ja, das stimmt, daran habe ich irgendwie nicht mehr gedacht. Der neue Stil ist nun: Code:
Nochmal Danke, Andreas |
Autor: | Lord Horazont [ So Jan 03, 2010 20:06 ] |
Betreff des Beitrags: | Re: @Audorra - Digitale 3D-Audiobibliothek |
Das track= kannste dir theoretisch sogar auch noch sparen ![]() Achja, genau, CVS, da hat das holen nicht (richtig) funktioniert. Ich habe nach der Anleitung auf SF als Modulname einfach mal acinerella angegeben. Er hat auch was runtergeladen. Dann hab ich versucht, in dem src-Verzeichnis make aufzurufen und wurde mit Fehlern bombardiert (größtenteils dinge, die fehlten oder nicht richtig deklariert waren). Hm. Ich habe natürlich einfach pauschal versucht *alle* Units zu kompilieren (außer die Windows-Abhängigen) und nicht nur die, die für das Sample gebraucht werden. Die mpg123 z.B. ist nicht kompilierfähig, weil du eine Zuweisung ala: prozedurpointer := GetProcAdress machst. Das geht nicht gut, weil der Prozedurpointer typisiert ist, der Rückgabewert von GetProcAdress allerdings nicht. Da hilft es, den Prozedurpointer vorher auf Pointer zu casten: Code:
greetings |
Seite 1 von 4 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |