Ich hatte schon vor langer Zeit mal MM4 in Benutzung. Dann hatte ich mir, in erster Linie, um die Entwickler zu unterstützen, 2 Lizenzen gekauft und MM5 ausprobiert. Aber irgendwie... Naja, ich bin wieder auf MM4 zurück und krame meine alten VB-Scripts raus. Ich benutze MM übrigens mehr zur Verwaltung von Video, weniger für Audio, aber auch, speziell Hörbücher.
Ich versuche jetzt gerade, die Informationen aus SDBSongData (als ein Element der SDBSongList, welche per Schleife durchlaufen wird) zu extrahieren. Allerdings habe ich tlw. Probleme, die Klassen der 3. und weiteren Unterstufen anzusprechen. Beispiel:
In SDBSongData gibt es z.B. das Feld "Actors", oder auch "Custom5", oder "Path", oder oder oder... Diese Felder anzusprechen ist überhaupt kein Problem. Also (verkürzt) sowas wie
Code: Select all
set lst = SDB.SelectedSongList
for i = 0 to lst.count - 1
set det = lst.item(i)
det_actors = det.actors
. . .
lst: SDBSongList https://www.mediamonkey.com/wiki/SDBSongList
det: SDBSongData https://www.mediamonkey.com/wiki/SDBSongData
Nun gibt es ein Feld (2. Unterstufe) "Media". Dies hat dann z.B. ein Feld "MediaLabel". Auch diese bekomme ich ohne Probleme angesprochen:
Code: Select all
set lst = SDB.SelectedSongList
for i = 0 to lst.count - 1
set det = lst.item(i)
det_media_medialabel = det.media.medialabel
. . .
lst: SDBSongList https://www.mediamonkey.com/wiki/SDBSongList
det: SDBSongData https://www.mediamonkey.com/wiki/SDBSongData
det.Media: SDBMedia https://www.mediamonkey.com/wiki/SDBMedia
Das geht auch noch in die 3. Stufe mit z.B.
Album.AlbumArt.Count
Also:
lst: SDBSongList https://www.mediamonkey.com/wiki/SDBSongList
det: SDBSongData https://www.mediamonkey.com/wiki/SDBSongData
det.Album: SDBAlbum https://www.mediamonkey.com/wiki/SDBAlbum
det.Album.AlbumArt: https://www.mediamonkey.com/wiki/SDBAlbumArtList
oder auch in die 4. Stufe mit z.B.
Album.Tracks.Albums.Count
Also:
lst: SDBSongList https://www.mediamonkey.com/wiki/SDBSongList
det: SDBSongData https://www.mediamonkey.com/wiki/SDBSongData
det.Album: SDBAlbum https://www.mediamonkey.com/wiki/SDBAlbum
det.Album.Tracks: SDBSongList https://www.mediamonkey.com/wiki/SDBSongList
det.Album.Tracks.Albums: SDBAlbums https://www.mediamonkey.com/wiki/SDBAlbums
Aber der Strang für z.B.
Album.AlbumArt.Count
mag mich nicht... Eigentlich sollte sich in
Album: SDBAlbum https://www.mediamonkey.com/wiki/SDBAlbum
ein Feld
AlbumArt: SDBAlbumArtList https://www.mediamonkey.com/wiki/SDBAlbumArtList
befinden. Ausserdem sollte sich darin dann ein
Item: AlbumArtItem https://www.mediamonkey.com/wiki/SDBAlbumArtItem
finden und darin wiederum ein
Image: SDBImage https://www.mediamonkey.com/wiki/SDBImage
Also: Habe ich jetzt hier einen Gedankenfehler oder stimmt was in der Doku nicht so ganz? Ich habe schon 3 (leichte) Fehler auf der Wiki-Seite behoben, die anscheinend seit 11 Jahren niemandem aufgefallen sind. Wäre schön, wenn mir da jemand helfen könnte...
Gruß, Michael
PS: Falls es für jemanden von Interesse ist, was mein "dump" z.Z. produziert:
Code: Select all
-------------------------------------------------------------------------------
processing: ID 1277 Title: 'Æon Flux - Blicke der Zukunft ins Auge.' IMDB: {tt0402022}
-------------------------------------------------------------------------------
Actors: ............................................. TXT 'Charlize Theron; Marton Csokas; Jonny Lee Miller; Sophie Okonedo; Caroline Chikezie; Pete Postlethwaite'
--- Album --> SDBAlbum
--- Album.AlbumArt --> SDBAlbumArtList
Album.AlbumArt.AddNew: .......................... Method
Album.AlbumArt.Count: ........................... INT
Album.AlbumArt.Delete: .......................... Method
--- Album.AlbumArt.Item --> SDBAlbumArtItem
Album.AlbumArt.Item.Description: .............. TXT '???'
--- Album.AlbumArt.Item.Image --> SDBImage
Album.AlbumArt.Item.Image.ConvertFormat ..... Method
Album.AlbumArt.Item.Image.ConvertFormatEx ... Method
Album.AlbumArt.Item.Image.Height ............ INT ???
Album.AlbumArt.Item.Image.ImageData ......... INT ???
Album.AlbumArt.Item.Image.ImageDataLen ...... INT ???
Album.AlbumArt.Item.Image.ImageFormat ....... TXT '???'
Album.AlbumArt.Item.Image.Width ............. INT ???
Album.AlbumArt.Item.ItemStorage: .............. INT ???
Album.AlbumArt.Item.ItemType: ................. INT ???
Album.AlbumArt.Item.PicturePath: .............. TXT '???'
Album.AlbumArt.Item.RelativePicturePath: ...... TXT '???'
Album.AlbumArt.UpdateDB: ........................ Method
Album.AlbumLength: ................................ INT -593790550
Album.AlbumLengthString: .......................... TXT '1028:06:16'
--- Album.Artist --> SDBArtist
Album.Artist.Comment: ........................... TXT ''
Album.Artist.ID: ................................ INT 0
Album.Artist.Name: .............................. TXT ''
Album.Artist.UpdateDB: .......................... Method
Album.ID: ......................................... INT -1
Album.Name: ....................................... TXT ''
--- Album.Tracks --> SDBSongList
Album.Tracks.Add: ............................... Method
Album.Tracks.Insert: ............................ Method
--- Album.Tracks.Albums --> SDBAlbums
Album.Tracks.Albums.Count ..................... INT 1
--- Album.Tracks.Albums.Item --> SDBAlbum
Album.Tracks.Albums.Sort ...................... Method
Album.Tracks.Albums.SortByArtists ............. Method
--- Album.Tracks.Artists --> SDBArtists
Album.Tracks.Artists.Count .................... INT 333
--- Album.Tracks.Artists.Item --> SDBArtist
Album.Tracks.Artists.Sort ..................... Method
Album.Tracks.Count: ............................. INT ???
Album.Tracks.Delete: ............................ Method
--- Album.Tracks.Item --> SDBxxx
Album.Tracks.UpdateAll: ......................... Method
Album.UpdateDB: ................................... Method
--- Album.AlbumArt --> SDBAlbumArtList
Album.AlbumArt.AddNew: ............................ Method
Album.AlbumArt.Count: ............................. INT 1
Album.AlbumArt.Delete: ............................ Method
--- Album.AlbumArt.Item --> SDBAlbumArtItem
Album.AlbumArt.Item.Description: ................ xxx
Album.AlbumArt.Item.Image: ...................... xxx
Album.AlbumArt.Item.ItemStorage: ................ xxx
Album.AlbumArt.Item.ItemType: ................... xxx
Album.AlbumArt.Item.PicturePath: ................ xxx
Album.AlbumArt.Item.RelativePicturePath: ........ xxx
Album.AlbumArt.UpdateDB: .......................... Method
AlbumArtistName: .................................... TXT ''
AlbumName: .......................................... TXT ''
--- Artist --> SDBArtist
Artist.Comment: ................................... TXT ''
Artist.ID: ........................................ INT 0
Artist.Name: ...................................... TXT 'Karyn Kusama'
Artist.UpdateDB: .................................. Method
ArtistName: ......................................... TXT 'Karyn Kusama'
Author: ............................................. TXT ''
Band: ............................................... TXT ''
Bitrate: ............................................ INT 2221968
Bookmark: ........................................... INT 0
StartTime: .......................................... INT 0
StopTime: ........................................... INT 5346760
SkipCount: .......................................... INT 0
TrackType: .......................................... INT 5
BPM: ................................................ INT -1
Cached: ............................................. INT 0
CachedPath: ......................................... TXT ''
CalculateGapData: ................................... Method
canCrossfade: ....................................... BOL <Falsch>
Channels: ........................................... INT 2
Comment: ............................................ TXT '400 Jahre in der Zukunft, genauer im Jahre 2415, ist Æon Flux eine mysteriöse Attentäterin. Vier Jahrhunderte nach einem Virus, der fast die gesamte menschliche Rasse ausgelöscht hat, leben 5 Millionen Menschen in einer utopischen Stadt genannt Bregna. Æon kämpft um das Goodchild Regime zu vernichten, dass von ihrem Namensvetter und Herrschers von Bregna, Trevor Goodchild angeführt wird. Æon versucht Trevor Goodchild zu töten, doch kurz bevor offenbaren sich weitere Geheimnisse die entdeckt werden müssen und Verschwörungen die vereitelt werden müssen.'
Conductor: .......................................... TXT ''
Copyright: .......................................... TXT ''
Custom1: ............................................ TXT ''
Custom2: ............................................ TXT ''
Custom3: ............................................ TXT ''
Custom4: ............................................ TXT ''
Custom5: ............................................ TXT 'tt0402022'
Date: ............................................... DAT [01.01.2006]
DateAdded: .......................................... DAT [14.05.2024 22:06:38]
DateDBModified: ..................................... DAT [04.08.2024 08:11:30]
Day: ................................................ INT 0
DiscNumber: ......................................... INT 0
DiscNumberStr: ...................................... TXT ''
Director: ........................................... TXT 'Karyn Kusama'
Encoder: ............................................ TXT 'Lavf54.63.104'
EpisodeNumber: ...................................... TXT ''
FileLength: ......................................... INT 1485041330
FileModified: ....................................... DAT [04.08.2024 08:11:30]
GaplessBytes: ....................................... INT -1
Genre: .............................................. TXT 'Action; Science Fiction'
GetCopy: ............................................ Method
Grouping: ........................................... TXT ''
ID: ................................................. INT 1277
InvolvedPeople: ..................................... TXT ''
IsBookmarkable: ..................................... BOL <Wahr>
IsShuffleIgnored: ................................... BOL <Wahr>
IsntInDB: ........................................... BOL <Falsch>
ISRC: ............................................... TXT ''
LastPlayed: ......................................... DAT [00:00:00]
Leveling: ........................................... FLT -999999
LevelingAlbum: ...................................... FLT -999999
Lyricist: ........................................... TXT 'Phil Hay; Matt Manfredi'
Lyrics: ............................................. TXT ''
--- Media --> SDBMedia
Media.DriveLetter: ................................ INT 21
Media.DriveType: .................................. INT 4
Media.ID: ......................................... INT 6
Media.MediaLabel: ................................. TXT 'video1'
Media.SerialNumber: ............................... INT -1235362627
MediaLabel: ......................................... TXT 'video1'
MetadataFromFilename: ............................... Method
Month: .............................................. INT 0
Mood: ............................................... TXT ''
MusicComposer: ...................................... TXT ''
Occasion: ........................................... TXT ''
OriginalArtist: ..................................... TXT ''
OriginalLyricist: ................................... TXT ''
OriginalTitle: ...................................... TXT ''
OriginalYear: ....................................... INT -1
OriginalMonth: ...................................... INT 0
OriginalDay: ........................................ INT 0
ParseText: .......................................... Method
ParentalRating: ..................................... TXT ''
Path: ............................................... TXT 'V:\Video\Movies\Action; Science Fiction\Æon Flux - Blicke der Zukunft ins Auge. [2006] {tt0402022}.avi'
SetPathByMask: ...................................... Method
PeakValue: .......................................... FLT -1
PlayCounter: ........................................ INT 0
PlaylistOrder: ...................................... INT -1
PostGap: ............................................ INT -1
PreGap: ............................................. INT -1
Preview: ............................................ INT 0
PreviewPath: ........................................ TXT ''
Producer: ........................................... TXT 'Paramount Pictures; Lakeshore Entertainment; MTV Films; Colossal Pictures; Valhalla Motion Pictures; MTV Productions'
Publisher: .......................................... TXT ''
Quality: ............................................ TXT ''
Rating: ............................................. INT -1
RatingString: ....................................... TXT ''
ReadTags: ........................................... Method
ReadTagsAsExt: ...................................... Method
RenameByMask: ....................................... Method
SampleRate: ......................................... INT 48000
Series: ............................................. TXT ''
SeasonNumber: ....................................... TXT ''
SongID: ............................................. INT 1277
SongLength: ......................................... INT 5346760
SongLengthString: ................................... TXT '1:29:06'
Tempo: .............................................. TXT ''
Title: .............................................. TXT 'Æon Flux - Blicke der Zukunft ins Auge.'
TotalSamples: ....................................... INT -1
TrackOrder: ......................................... INT 0
TrackOrderStr: ...................................... TXT ''
UpdateAlbum: ........................................ Method
UpdateArtist: ....................................... Method
UpdateDB: ........................................... Method
DiscardChanges: ..................................... Method
VBR: ................................................ BOL <Falsch>
WriteTags: .......................................... Method
Year: ............................................... INT 2006
MarkPlayed: ......................................... Method
-------------------------------------------------------------------------------