Weiß jemand wie man das Album Cover aus dem ID3 Tag lesen kann?
mit _getID3Tag und _GetExtProperty geht´s ja leider nicht..
Danke
Franz
Weiß jemand wie man das Album Cover aus dem ID3 Tag lesen kann?
mit _getID3Tag und _GetExtProperty geht´s ja leider nicht..
Danke
Franz
Wie steht das denn da drin??? Direkt das bild oder nur ein Pfad oder was genau?
Local $id3 = ObjCreate("CDDBControl.CddbID3Tag")
MsgBox(0, "", $id3.AlbumCover)
geht das?^^... sry ich kanns net testen...
Oder kann man nicht irgendwie rausfinden welche ohhman ich weiss nichmal wie das heisst (Methode????) -.- halt die .irendwas
Was es davon alles gibt?
Das Bild ist im Normalfall irgendwie in die MP3 eingebettet.
Hm bei dem Code fehlt irgendwie ne Angabe welche Datei er nehmen soll und ob MsgBox Bilder anzeigen kann glaube ich nicht.
nein ich sag ja da fehlt die datei aber er hat das alles aus dieser udf genommen:
#include <array.au3>
[/autoit] [autoit][/autoit] [autoit]Global $file = "C:\Downloads\Musik\Chris De Burg - Lady in Red.mp3"
[/autoit] [autoit][/autoit] [autoit]_DLLstartup()
Global $re = _getID3Tag($file)
If @error Then MsgBox(0, 'Error', 'Error - no array returned', 5)
_ArrayDisplay($re)
_setID3Tag($file, 'TrackPosition', 100)
If @error Then MsgBox(0, 'Error', 'Error - setID3Tag', 5)
_setID3Tag($file, 'TitleAlbum', 'Mega')
If @error Then MsgBox(0, 'Error', 'Error - setID3Tag', 5)
$re = _getID3Tag($file)
If @error Then MsgBox(0, 'Error', 'Error - no array returned', 5)
_ArrayDisplay($re)
_DLLshutdown()
;===================================================================================================
[/autoit] [autoit][/autoit] [autoit]============
; 'TitleAlbum', 'Movie', 'Title', 'CopyrightYear', 'CopyrightHolder', 'Comments', 'Label', 'BeatsPerMinute',
; 'LeadArtist', 'PartOfSet', 'TrackPosition', 'Year', 'Genre', 'FileId', 'ISRC'
;===================================================================================================
=============
Func _setID3Tag($h_file, $detail, $value)
Local $oId3 = ObjCreate("CDDBControl.CddbID3Tag")
If Not IsObj($oId3) Then
SetError(1)
Return 0
EndIf
; False means open for read-write
$oId3.LoadFromFile ($h_file, False)
Switch $detail
Case 'TitleAlbum'
$oId3.Album = $value
Case 'LeadArtist'
$oId3.LeadArtist = $value
Case 'Title'
$oId3.Title = $value
Case 'TrackPosition'
$oId3.TrackPosition = $value
Case 'Year'
$oId3.Year = $value
Case 'Genre'
$oId3.Genre = $value
Case 'Comments'
$oId3.Comments = $value
Case 'Label'
$oId3.Label = $value
Case 'FileID'
$oId3.FileId = $value
Case 'IRSC'
$oId3.ISRC = $value
Case 'CopyrightHolder'
$oId3.CopyrightHolder = $value
Case 'CopyrightYear'
$oId3.CopyrightYear = $value
Case 'PartOfSet'
$oId3.PartOfSet = $value
Case 'Movie'
$oId3.Movie = $value
Case 'BeatsPerMinute'
$oId3.BeatsPerMinute = $value
Case Else
SetError(2)
Return 0
EndSwitch
$oId3.SaveToFile ($h_file)
Return 1
EndFunc ;==>_setID3Tag
Func _getID3Tag($h_file)
Local $oId3 = ObjCreate("CDDBControl.CddbID3Tag")
If Not IsObj($oId3) Then
SetError(1)
Return 0
EndIf
$oId3.LoadFromFile ($h_file, False)
Local $idTag_A[15][2]
$idTag_A[0][0] = 'Title'
$idTag_A[0][1] = $oId3.Title
$idTag_A[1][0] = 'LeadArtist'
$idTag_A[1][1] = $oId3.LeadArtist
$idTag_A[2][0] = 'Album'
$idTag_A[2][1] = $oId3.Album
$idTag_A[3][0] = 'TrackPosition'
$idTag_A[3][1] = $oId3.TrackPosition
$idTag_A[4][0] = 'Year'
$idTag_A[4][1] = $oId3.Year
$idTag_A[5][0] = 'Genre'
$idTag_A[5][1] = $oId3.Genre
$idTag_A[6][0] = 'Comments'
$idTag_A[6][1] = $oId3.Comments
$idTag_A[7][0] = 'Label'
$idTag_A[7][1] = $oId3.Label
$idTag_A[8][0] = 'FileId'
$idTag_A[8][1] = $oId3.FileId
$idTag_A[9][0] = 'ISRC'
$idTag_A[9][1] = $oId3.ISRC
$idTag_A[10][0] = 'CopyrightHolder'
$idTag_A[10][1] = $oId3.CopyrightHolder
$idTag_A[11][0] = 'CopyrightYear'
$idTag_A[11][1] = $oId3.CopyrightYear
$idTag_A[12][0] = 'PartOfSet'
$idTag_A[12][1] = $oId3.PartOfSet
$idTag_A[13][0] = 'Movie'
$idTag_A[13][1] = $oId3.Movie
$idTag_A[14][0] = 'BeatsPerMinute'
$idTag_A[14][1] = $oId3.BeatsPerMinute
Return $idTag_A
EndFunc ;==>_getID3Tag
Func _DLLstartup($DLLpath = '')
If $DLLpath = Default Or $DLLpath = '' Then $DLLpath = @ScriptDir & '\cddbcontrol.dll'
RunWait('regsvr32 /s ' & '"' & $DLLpath & '"')
EndFunc ;==>_DLLstartup
Func _DLLshutdown($DLLpath = '')
If $DLLpath = Default Or $DLLpath = '' Then $DLLpath = @ScriptDir & '\cddbcontrol.dll'
RunWait('regsvr32 /u /s ' & '"' & $DLLpath & '"')
EndFunc ;==>_DLLshutdown
Ich dachte eig. da liegt nur en pfad oder sowas... weil z.b. der windoof media player legt immer ein extra jpg an mit albumcovers... wiso schreibt er es nicht in den tag???
Chris de Würg
Die angehängte Datei ist wahrscheinlich auch nicht besser aber dafür hat sien Bild :pinch: (war auf meinem Player schon drauf)
Edith: Anhängen ging ni also rapidshare
soweit ich weiss betten einigen Player (z.B. Itunes) das Cover direkt in die MP3 Datei ein. Also der Mediaplayer scheint diese Cover auch lesen zu können. Ja die Methode mit der extra jpg Datei im gleichen Ordner gibts auch, aber die brauche ich nicht.
mit _getID3Tag hab´s ich nicht hinbekommen.