![]() |
CDDB - Wie geht das?
hallo zusammen,
ich brauche mal wieder eure hilfe... :stupid: ich habe in meinem programm einen CD Ripper eingebaut, nun fehlt aber noch eine CDDB-Funktion, also dass das programm die CD erkennt und die ID3-Tags aus dem internet abrufen und einfügen kann. nun weiss ich aber nicht wie ich das ganze realisieren kann. die suche hat auch nicht viel genützt. ich wäre froh für tutorials, tipps, beispielprogramme, usw. ich hoffe ihr könnt mir helfen. gruss urbanbruhin |
Re: CDDB - Wie geht das?
![]() hier steht auf den letzten seiten was über das prinzip. |
Re: CDDB - Wie geht das?
Es gibt Provider, die so eine DB zur Verfügung stellen. Meist bieten sie auch eine API an, um sie zu benutzen. Allerdings nicht immer umsonst, das heißt Entwickler müssen eine Gebühr bezahlen, um Zugang zu der DB zu bekommen.
|
Re: CDDB - Wie geht das?
hi,
@DGL-luke danke für den link, leider steht da nicht viel nützliches für mich drin. @Luckie Zitat:
muss ich auch bezahlen, wenn mein programm freeware ist? urbanbruhin |
Re: CDDB - Wie geht das?
Freedb, die Inhalte der freedb-DB stehen unter der GPL.
![]() Kannst somit völlig kostenlos an die Informationen kommen und das natürlich auch in dein programm ein bauen. |
Re: CDDB - Wie geht das?
danke für deine antwort, Tubos!
ich habe mal gesucht, und schliesslich diese komponente gefunden: Cddbcomp runtergeladen, package geöffnet und gestaunt: Zitat:
wieder gesucht und gesucht :coder: ...und...gesucht :coder: ...und....nichts gefunden :shock: hat jemand eine ahnung wie ich das problem beseitigen kann? |
Re: CDDB - Wie geht das?
Hi!
Ich habe Tcddb auch vorkurzem installiert. Also, zuerst einmal brauchst du ICL (Internet Component Suite), ![]() Dann habe ich die Pakete baseclx und kylixclx (oder so ähnlich) einfach entfernt, weil ich kein Kylix habe und die Units auch nicht hatte. Hat wunderbar funktioniert, und die Cddb-Komponente funktioniert ganz prima! :-D mfg, Dj_Base |
Re: CDDB - Wie geht das?
danke für deine antwort Dj_Base!!
auf die idee wär ich echt nie gekommen, jetzt funktioniert die komponente. jetzt muss ich nur noch wissen wie sie funktioniert... hast du schon ein programm mit der komponentr geschrieben? ich werd mal ein bisschen rumprobieren... |
Re: CDDB - Wie geht das?
Hi!
Jo, das habe ich -> ![]() In der readme-Datei findest du eine sehr gute Anleitung, die beschreibt, wie das Programm läuft. Du solltest auf jeden Fall einen Blick in die Demo werfen! Besonders den Button "HTTP Query and Read" ! Könntest du mir berichten - wenn es soweit ist - ob du auch bei deinen Abfragen öfters mal die Olsen Brothers bekommst ;) ? Wir könnten uns dann ja mal kurzschließen und gemeinsam über Probleme beraten! :-D Grüße, Dj_Base |
Re: CDDB - Wie geht das?
hi,
wo finde ich denn den code von deinem programm? gruss urbanbruhin |
Re: CDDB - Wie geht das?
ich bekomm beim installieren immer die meldung "[Error] Cddb.pas(1120): Incompatible types: 'PAnsiChar' and 'Pointer'"
|
Re: CDDB - Wie geht das?
Zitat:
Werde mal schauen, wenn mein Programm auch fertig ist, so dass auch andere davobn profitieren können, ob ich es dann in Open-Source reinstelle... mfg, Dj_Base |
Re: CDDB - Wie geht das?
Zitat:
wäre das zu viel wenn du diesen code einfach hier rein posten würdest? aber muss ja nicht sein... werde nochmals ein paarmal die demo anschauen, aber irgendwie kapiere ich den code immernoch nicht :gruebel: gruss urbanbruhin |
Re: CDDB - Wie geht das?
hallo, ich bins nochmal!
also ich bin jetzt soweit, dass ich den CD-Titel von der FreeDB abrufen kann. nun weiss ich aber nicht, wie ich die einzelnen ID3-Informationen von jedem Track bekomme. @Dj_Base Könntest du mal die Procedure posten, mit der die Track-Informationen abgerufen werden? Das würde mir wahrscheinlich weiter helfen. Gruss urbanbruhin |
Re: CDDB - Wie geht das?
Hi!
Also du kannst die einzelnen Informationen mit folgendem Code abrufen:
Delphi-Quellcode:
Hoffe, das wird dir helfen...
Cddb1.CDinfo.Artist //Der Interpret
Cddb1.CdInfo.Year //Das Jahr Cddb1.CdInfo.Title //Album Cddb1.CdInfo.Tracks[i] //Track Nr. i Cya, Dj_Base |
Re: CDDB - Wie geht das?
hallo,
danke für den code!! funktioniert wunderbar, nur muss ich halt noch den track-titel und den interpret aus dem "Cddb1.CdInfo.Tracks[i]" auslesen, aber das ist ja nicht so schwierig, da die informationen ja mit "/" getrennt sind... gruss urbanbruhin |
Re: CDDB - Wie geht das?
Eigentlich ist diese Cddb-System dazu gedacht,dass es sich um Alben handelt, die enthalten sind, und nicht um Sampler! Bei Alben gibt es ja nur einen Interpreten.
Aber du hast recht: Bei den meißten Einträgen sind die verschiedenen Interpreten und Artisten durch einen Slash oder Backslash getrennt, aber halt nicht immer. Da muss man vorsichtig sein, denn es kommt schon mal vor, dass es ganz normaler Titel auch einen Slash enthält: So zum Beispiel bei der CD "Buena Vista Social Club" ;) Aber es ist ne gute Idee, so eine Funtion noch einzubinden... Cya, Dj_Base |
Re: CDDB - Wie geht das?
ach so, da ist nicht immer ein slash drin :gruebel:
dann muss ich mir halt noch etwas überlegen, damit es dann auch richtig funktioniert. leider habe ich nur eine einzige original-CD, also viel testen kann ich nicht :mrgreen: naja, funktionieren wirds sicher, das ist nur eine frage der zeit... ach ja, weisst du wofür die Datei "LocalCDDB.dll" wichtig ist? Das Programm funktioniert ja auch ohne diese datei :gruebel: Greetz urbanbruhin |
Re: CDDB - Wie geht das?
Hallo!
Sie soll wohl es einfacher machen, die lokale CDDB-Datenbank (das gleiche wie freedb.org nur halt mit bereits jemals vorher gerippten Tracks auf der HD) abzufragen & benutzen, habe das aber noch nicht verfolgt. Ich würde aber - wenn ich nicht mit anderen Ripprogrammen kooperieren wollen würde - eine eigene Lokale Datenbank anlegen. Z.B. ein TXT-File mit den Einträgen DiscID, Interpret, Album, Year, Track1, Track2, usw... oder so etwas in der Art... Gruß, Dj_Base P.S.: Kann ich mir deinen bisherigen Ripper mal irgendwo anschauen? ;) |
Re: CDDB - Wie geht das?
hallo,
dann denke ich jetzt mal, dass er einfach auf die lokale DLL zugfeift, wenn keine Internetverbindung vorhanden ist. Aber weisst du ob die auch mal aktualisiert wird? oder ob man das mit einem befehl machen kann? Zitat:
Zitat:
![]() Gruss urbanbruhin |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz