AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Cover in WMP Format

Ein Thema von EWeiss · begonnen am 31. Mär 2018 · letzter Beitrag vom 15. Apr 2018
Antwort Antwort
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
913 Beiträge
 
Delphi 12 Athens
 
#1

AW: Cover in WMP Format

  Alt 13. Apr 2018, 21:05
Die PRIV-Frames sind ja keine Zauberei. Die sind so aufgebaut:

Code:
<Header for 'Private frame', ID: "PRIV">
Owner identifier       <text string> $00
The private data       <binary data>
Der Owner identifier ist dieses "WM/WMCollectionGroup"-Gedöns. Die eigentlichen Daten sollten dann die GUID enthalten. Du müsstest dann "nur" herausfinden, wie die Binärdaten in Dateinamen konvertiert werden. Bei mir lasse ich den WMP nicht an meine mp3s, das müsstest du dann mal an ein oder zwei Dateien testen. Vielleicht ist es auch einfach eine Hexadezimal-Darstellung oder sonst eine einfache Kodierung.

Zum Schreiben und Lesen der PRIV-Frames bietet MP3FileUtils die Methoden
Delphi-Quellcode:
function GetPrivateFrame(aOwnerID: AnsiString; Content: TStream): Boolean;
procedure SetPrivateFrame(aOwnerID: AnsiString; Content: TStream);
Wichtig ist hier dann nur wieder die Tag-Version des ID3-Tags. Die sollte 2.3 sein, und nicht 2.4.
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#2

AW: Cover in WMP Format

  Alt 13. Apr 2018, 21:10
Wenn du mal reinschauen möchtest könnte ich dir eine Datei mit den PRIV Frames schicken
Mit dem Tool kannst du diese dann auslesen.
https://www.microsoft.com/en-us/down....aspx?id=12826

Wenn Interesse besteht.

Zitat:
Vielleicht ist es auch einfach eine Hexadezimal-Darstellung oder sonst eine einfache Kodierung.
So wie ich gelesen habe utf16

gruss

Geändert von EWeiss (13. Apr 2018 um 21:25 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
913 Beiträge
 
Delphi 12 Athens
 
#3

AW: Cover in WMP Format

  Alt 13. Apr 2018, 21:15
Gerne. Dann aber wenn möglich auch die Album-Art-Datei mit der GUID im Namen, damit da ein Abgleich möglich ist.
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: Cover in WMP Format

  Alt 13. Apr 2018, 21:17
Gerne. Dann aber wenn möglich auch die Album-Art-Datei mit der GUID im Namen, damit da ein Abgleich möglich ist.
Also die GUID steht doch im mpe2.3 Tag.
Oder was meinst du?
Ich kann die Bilder noch addieren.

Die Datei funktioniert auch ohne das ich
AlbumArt_{00000000-0000-0000-0000-000000000000}_Large.jpg
AlbumArt_{00000000-0000-0000-0000-000000000000}_Small.jpg

im Pfad habe
wichtig sind diese beiden Dateien
AlbumArtSmall.jpg
Folder.jpg

größe spielt keine rolle.
Abgeschickt!

Bei dem Anhang ohne.png fehlt das AlbumArtSmall.jpg Cover im Pfad.

gruss

Geändert von EWeiss (13. Apr 2018 um 22:42 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: Cover in WMP Format

  Alt 13. Apr 2018, 21:45
Datei zum Testen.. source include
Achtung das Plugin vom WMP MediaPlayer_10 muss registriert sein genauso wie die anderen vom WMP
ansonsten werden sie nicht angezeigt und die Liste bleibt leer.

Downloads wenn nicht vorhanden.

https://support.microsoft.com/en-gb/...s-media-player
Psychedelia Viz Pack (Albumart 3D)
Energy Bliss

WMP ist dafür nicht von nöten!
Wenn man bei Albumart3d die Würfel mit Covers unterlegen will ist das Folder.jpg Voraussetzung!

gruss

Geändert von EWeiss (11. Jul 2019 um 16:00 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
913 Beiträge
 
Delphi 12 Athens
 
#6

AW: Cover in WMP Format

  Alt 13. Apr 2018, 21:54
Laut dem Tag-Projekt, das du eben verlinkt hast, sind CollectionID und CollectionGroupID relevant. Die sind beide identisch und 16 Byte lang in der Datei, die du mir geschickt hast.

Dieser Code (basierend auf dem Mini-Tool aus der ersten Mail) schreibt eine zufällige ID in die Datei und konvertiert dabei die Basis-Infos zu Version 2.3 (Wichtig: Dabei können Infos verloren gehen. Zumindest sollte man die anderen Standard-Infos auch kopieren). Damit sollte dann auch die Chris-Datei, die du mir zuerst geschickt hast, vom WMP verstanden werden. Ob die zufällige ID dann reicht, oder ob doch irgendwo das Bild liegen muss .... keine Ahnung.


Delphi-Quellcode:
Procedure SetCoverpic;
var
  MP3Tags, v23Tag: TId3v2Tag;
  PicData: TMemorystream;
  GUID: TMemorystream;
  i: Integer;
  b: Byte;
begin
   MP3Tags:= TId3v2Tag.Create;
   v23Tag := TId3v2Tag.Create;
   PicData:= TMemoryStream.Create;
   GUID := TMemorystream.Create;
   try
     If (MP3Tags.ReadFromFile(mp3File) = MP3ERR_None) Then
     begin
       Picdata.LoadFromFile(Picfile);

       // basic converting
       v23Tag.Artist := MP3Tags.Artist;
       v23Tag.Album := MP3Tags.Album;
       v23Tag.Title := MP3Tags.Title;

       for i := 1 to 16 do
       begin
          b := Random(255);
          GUID.Write(b, 1);
       end;

       v23Tag.SetPrivateFrame('WM/WMCollectionID', GUID);
       v23Tag.SetPrivateFrame('WM/WMCollectionGroupID', GUID);

       v23Tag.SetPicture('image/jpeg', 0, '*', PicData);
       v23Tag.WriteToFile(mp3file);

     end;
   finally
     FreeAndNIL(MP3Tags);
     FreeAndNIl(PicData);
     FreeAndNIl(GUID);

     FreeAndNIl(v23Tag);
   end;
end;
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: Cover in WMP Format

  Alt 13. Apr 2018, 21:56
Supi
Werde das direkt mal testen.

WOW funktioniert perfekt. Vielen Dank!

Genauso muss es sein
Jetzt den Kram noch irgendwie als Batch Datei ausführen und gut ist.
Das ist dann genau das was ich mir vorgestellt habe.

Du siehst also es hat doch mit den Frames zu tun
btw.. im Post vorher kannst du mein BassVis Projekt laden und es selber mal testen wenn du möchtest.
Eine ID müsste noch für das Rating zuständig sein damit die Sterne noch angezeigt werden.
Muss mich da nochmal schlau machen und vor allem was ich da übergeben muss eine GUID sicherlich nicht.
3 Sterne als Standard sollte reichen

gruss

Geändert von EWeiss (13. Apr 2018 um 22:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
913 Beiträge
 
Delphi 12 Athens
 
#8

AW: Cover in WMP Format

  Alt 13. Apr 2018, 22:21
Aber irgendwas stimmt da doch nicht. Man schreibt eine zufällige Zahl in die Datei, und dann wird das richtige Cover angezeigt? Hä?

Mit dem BassVis Beispiel und dem AlbumArt-Plugin wird bei mir auch immer ein Cover angezeigt. Ein mp3-File und ein Folder.jpg reicht.

Aber gut, wenn es bei dir jetzt klappt, dann klappts.

Fürs Rating gibt es eigentlich einen Rating-Frame "POPM", der auch für jeden Player einzeln benutzt werden kann, iirc.
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#9

AW: Cover in WMP Format

  Alt 13. Apr 2018, 22:22
Zitat:
Aber irgendwas stimmt da doch nicht. Man schreibt eine zufällige Zahl in die Datei, und dann wird das richtige Cover angezeigt? Hä?
Ich denke es wird nur nach PRIV: Frame im Tag gesucht ist das Frame vorhanden scheint es das Plugin nicht zu interessieren was da steht.

Zitat:
Ein mp3-File und ein Folder.jpg reicht.
Seltsamer weise bei mir nicht.
Ich benötige das AlbumArtSmall.JPG sonst wird das Cover nicht angezeigt.

Habe da jetzt mal dein Rating hinzugefügt.
Was muss ich da einfügen um auf 3 Sterne zu kommen?

v23Tag.Rating := 3; so bekomme ich nur einen.

gruss

Geändert von EWeiss (13. Apr 2018 um 22:37 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz