Hallo zusammen,
ich möchte gerne die freie Musik-
DB MusicBrainz abfragen um Meta-Infos zu bestimmten mp3 auf meiner HDD zu erhalten (z.B. Album, Interpret, Cover Pic, etc.)
MusicBrainz bietet auf der Website ein Client
SDK an - nur leider nicht für Delphi. Auch das Wiki enthält nur Infos/Header-Files zur Abfrage per C++.
Der Service kann über eine
DLL "angerufen" werden. Übergibt man im einen "Fingerabdruck" (Bitprint) eines MP3s das sich in der MusicBrainz-
DB befindet, bekommt man die besagten Infos zurück.
Auf der Mailingliste hab ich folgenden Delphi Code gefunden:
Delphi-Quellcode:
type TMusicBrainz = pointer;
const MBDll='musicbrainz.dll';
implementation
function CreateMB:TMusicBrainz; external MBDll name 'mb_New';
procedure DestroyMB(var MB:TMusicBrainz); external MBDll name
'mb_Delete';
procedure GetVersion(MB:TMusicBrainz;Minor,Major,Rev:pointer); external
MBDll name 'mb_GetVersion';
procedure TForm1.Button1Click(Sender: TObject);
var Lib:integer;
MB:TMusicBrainz;
Info:TBitprintInfo;
FileName:array[0..255] of char;
P1,P2,P3:pointer;
a,b,c,d,e:integer;
begin
MB:=CreateMB;
P1:=@a;
P2:=@b;
P3:=@c;
GetVersion(MB,P1,P2,P3);
DestroyMB(MB);
end;
Geht nur leider nicht :/
Kann mir vllt jemand sagen, wie ich die DLL richtig einsetze?
Die
DLL gibts hier:
http://ftp.musicbrainz.org/pub/music...2sdk-2.1.2.zip
C# language bindings hier:
http://ftp.musicbrainz.org/pub/music...tNet-2.1.1.zip (falls das jmd weiterhilft..)
Dank Euch!!
cip