Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

ID3v2 tags schreiben?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 29.12.2007, 01:47    Titel: ID3v2 tags schreiben? Antworten mit Zitat

hi,

ich habe mal eine frage, weiß jemand, wie man in einer mp3 datei nachträglich ID3v2 tags schreiben kann?

ich würde das gerne so in der art aufrufen wollen

writetag c:wavemp.mp3 titelname albumname kommentar

es gibt zwar wohl im lame.dll irgendwie die möglichkeit aber ist mir irgendwie zu unübersichtlich und blick da nicht wirklich durch ;-(


für hilfereiche tipps wäre ich sehr dankbar...

gruß tom
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 29.12.2007, 01:58    Titel: Antworten mit Zitat

Hilft dir das hier weiter?
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 29.12.2007, 12:11    Titel: schreiben? Antworten mit Zitat

hi,

erstmal danke für den tip.

hmmm den code im thread habe ich mal mit einer mp3 datei getestet und
das lesen klappt soweit gut. Nur ich weiß nicht genau, wie ich meine daten schreiben kann???

wie muß ich das genau eingeben ?

Datei = "c:\test.mp3"

TAG.Songname="irgendeinnanme"
TAG.artist="artistname"
result=PUT_ID3V1TAG(Datei,id3tag)


IST WOHL NICHT RICHTIG ;-(
wie muß ich das korrekt schreiben ???


wäre nett, wenn mir das jemand korregieren könnte zwinkern

gruß tom


[code]
' Beispielcode fürs Auslesen und Schreiben eines id3v1 Tags aus einer MP3-Datei
' für FreeBASIC, getestet mit v0.16 stable für Windows (11.07.2006)
'
' Auf Basis des ActiveVB Tipps Nr. 483
' von Sebastian Steiner, sebastian{unterstrich}steiner(ätt)gmx[punkt]de,
' http://www.sebastian-steiner.de/
'
' Dieser Source kann frei verwendet werden. Für eventuelle Schäden
' wird nicht gehaftet.
'

TYPE TagInfo
TAG AS STRING * 3
Songname AS STRING * 30
artist AS STRING * 30
album AS STRING * 30
YEAR AS STRING * 4
comment AS STRING * 30
genre AS STRING * 1
END TYPE

DECLARE FUNCTION GET_ID3V1TAG(FilePath AS STRING, TAG AS TagInfo) AS INTEGER
DECLARE SUB PUT_ID3V1TAG(FilePath AS STRING, TAG AS TagInfo)

DIM result AS INTEGER
DIM Datei AS STRING
DIM id3tag AS TagInfo

Datei = "c:\test.mp3"
result=GET_ID3V1TAG(Datei,id3tag)
CLS
PRINT
PRINT " ID3v1 Tag der MP3-Datei ";
COLOR 10
PRINT Datei
COLOR 7
PRINT
IF result=0 THEN
COLOR 12
PRINT "Auslesen fehlgeschlagen!"
COLOR 7
SLEEP: END
END IF
PRINT " Songname: "; id3tag.Songname
PRINT " Interpret: "; id3tag.Artist
PRINT " Album: "; id3tag.Album
PRINT " Jahr: "; id3tag.YEAR
PRINT " Kommentar: "; id3tag.comment
PRINT " Genre Nr. "; ASC(id3tag.genre)
PRINT
SLEEP: END


FUNCTION GET_ID3V1TAG(FilePath AS STRING, TAG AS TagInfo) AS INTEGER
DIM FNum AS UINTEGER
WITH TAG
FNum = FREEFILE
OPEN FilePath FOR BINARY AS #FNum
GET #FNum, LOF(FNum) - 127, .TAG
IF .TAG <> "TAG" THEN
GET_ID3V1TAG = 0
CLOSE #FNum
EXIT FUNCTION
END IF
GET #FNum, , .Songname
GET #FNum, , .artist
GET #FNum, , .album
GET #FNum, , .YEAR
GET #FNum, , .comment
GET #FNum, , .genre
CLOSE #FNum
GET_ID3V1TAG = 1
END WITH
END FUNCTION

SUB PUT_ID3V1TAG(FilePath AS STRING, TAG AS TagInfo)
DIM FNum AS UINTEGER
DIM TPos AS UINTEGER
WITH TAG
FNum = FREEFILE
OPEN FilePath FOR BINARY AS #FNum
TPos = LOF(FNum)
GET #FNum, TPos - 127, .TAG
IF .TAG = "TAG" THEN TPos = TPos - 127
.TAG = "TAG"
PUT #FNum, TPos, TAG
CLOSE #FNum
END WITH
END SUB[/cod
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 29.12.2007, 14:20    Titel: hat sich erledigt ... Antworten mit Zitat

problem hat sich erstmal erledigt...

habe es doch mit dem lame encoder gemacht...


gruß tom
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
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.

 Impressum :: Datenschutz