 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Caran

Anmeldungsdatum: 11.03.2007 Beiträge: 290 Wohnort: Lörrach
|
Verfasst am: 23.08.2007, 20:48 Titel: ID3-Tag auslesen |
|
|
Hey Leute!
Für alle die es interessiert:
Ich habe mal eben eine Sub zum Auslesen der ID3-Tag Daten von mp3-Dateien geschrieben. Der Code schaut so aus:
Code: | Sub ID3TAG(byval filename as string, byref songtitel as string = "", byref _
interpret as string = "", byref album as string = "", byref _
erscheinungsjahr as string = "", byref genre as integer = -1,byref _
kommentar as string = "")
Dim tag as string
f = freefile
OPEN filename FOR BINARY AS #f
a = (LOF(f)-128):seek f,a
line input #f,tag
b = instr(tag,"TAG")
songtitel = mid(tag, b + 3, 30)
interpret = mid(tag, b + 33, 30)
album = mid(tag, b + 63, 30)
erscheinungsjahr = mid(tag, b + 93, 4)
genre = val(mid(tag, b + 127, 1))
kommentar = mid(tag, b + 97, 30)
CLOSE #f
end sub |
Ich hoffe der Code erklärt sich soweit von selbst.
Beim Genre klappt da allerdings etwas nich so ganz wie es soll (Falls jemand irgend eine Ahnung hat was ich da nich ganz richtig mache bitte melden).
Der Genre wird als Zahl ausgegeben. Die Musikrichtungen und deren dazugehörigen Werte lassen sich hier nachschlagen:
http://www.flashworker.de/tutorial/58/001.html
Ansonsten gibts da nich mehr viel zu sagen. Also viel Spaß damit.
MfG Caran |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 23.08.2007, 20:55 Titel: |
|
|
Hi, an sich nützlich, aber zu 50% Die restlichen 50% sind für mich persönlich wichtig, weil ich ID3v2-Tags verwende und keine ID3v1 Tags, die du ausliest  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 23.08.2007, 22:14 Titel: |
|
|
übrigens, in diesem fall würde sich eher ein TYPE als Rückgabetyp eigenen statt der vielen Parameter mittels byref. versuche einfach mal eine FUNCTION, die einen Typ zurückgibt, das ist eine schöne übung
kleine hilfestellung:
Code: |
type typID3
.....
end type
Function ID3TAG(byval filename as string) as typID3
....
End Function
|
_________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4699 Wohnort: ~/
|
Verfasst am: 24.08.2007, 00:35 Titel: |
|
|
Und der Typ lässt sich evtl. später wunderbar erweitern, ohne dass sich der Funktionsaufruf ändert
Will heißen: wenn die Funktion ausgebaut wird, braucht ein altes Programm, das die Funktion einbindet, deswegen nicht umgeschrieben werden. Es wertet dann eben nicht alle Angaben des neuen Typs aus, funktioniert aber trotzdem. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
Caran

Anmeldungsdatum: 11.03.2007 Beiträge: 290 Wohnort: Lörrach
|
Verfasst am: 24.08.2007, 10:29 Titel: |
|
|
Mit Type zu arbeiten war mir vor Kurzem noch ziemlich fremd, aber es hat in der Tat so seine Vorteile.
Zitat: | das ist eine schöne übung
| Ich werd das auch noch üben. Ich hab halt erst mit byref angefangen da ich das auch noch nich so kannte. |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|