![]() |
AW: Cover in WMP Format
Zitat:
Ohne AlbumArtSmall funktioniert es nicht. Ohne PRIV auch nicht. Also wenn ich schon auf die platte zugreife warum dann noch eine Umleitung um nach den PRIV Frames zu suchen. Irgendwie eine Verdummung der Leute oder ein versuch dieses Plugin außerhalb WMP nicht nutzen zu können. Das Cover aus den Tags nimmt er auch nicht. gruss |
AW: Cover in WMP Format
Mein WMP kann nicht telefonieren, Mich würde interessieren was mit einer von Dir präparierten Datei passiert, also Bliss Kompatibel mit neuem ID3 Header und die dann durch den WMP getaggt wird.
Ist das mp3 danach Schrott? Ist nur der Header zerschossen? Wird das Cover wegradiert? Ist alles Okay? und solche Dinge halt. Wenn man den ID3 Tag samt PRIV entfernt, also nurnoch Audio hat, diese cleane datei vierfach haben und zu verschiedenen Zeitpunkten von WMP einzeln taggen lassen, einmal mit Cover, einmal ohne, das ganze zweimal. Haben alle vier mp3's die gleiche GUID zugewiesen bekommen? edit Um zu Erfahren in wie fern eine Random() generierte GUID schädlich sein kann, darauf bezieht sich das erstere |
AW: Cover in WMP Format
Zitat:
Deshalb ist mir das relativ egal da ich meine eigenen Abspieler habe. Der andere ein fast vollständiger Clone von Winamp. 2.9 Also daran soll es nicht liegen ;) Zitat:
Leute die ihre Sammlung pflegen werden diese bestimmt nicht mit WMP taggen. gruss |
AW: Cover in WMP Format
Ist ja richtig, Dein Programm sieht Spitze aus und funktioniert bestimmt auch hervorragend, Nemp genauso (und alle die ich hier vergessen hab zu erwähnen), darum ging es mir aber gerade nicht sondern um's WMP Format an sich. Ich wollt nochmal zum Thread Title.
Ich hab da halt wie Gausi meine Bedenken weil Dein Tool ja im WMP PRIV Bereich eingreift, ja Du hast 'ne Warnung drinnen damit es Dir egal sein kann, ich fragte halt einfach mal so in den Raum hinein, weil mich da doch ein gewisses feeling gepackt hat und für mich so noch nicht ganz abgeschlossen war, das Thema WMP Format. |
AW: Cover in WMP Format
@ Eweiss:
Gerade habe ich mir dein Tool PrivFramesWriter nochmal genau angeschaut. Dabei fiel mir auf, dass du eine Stringlist instantiierst, aber nicht freigibst:
Delphi-Quellcode:
procedure TForm1.btnSearchClick(Sender: TObject);
var List: TStringList; IntI: Integer; Mask: array[0..0] of string; begin edSearchpath.Text := GetFolder(CSIDL_DRIVES, 'Select search path'); lstSearch.Clear; If edSearchpath.Text <> '' then begin Mask[0] := '.mp3'; List := TStringList.Create; FindMediaFiles(List, edSearchpath.Text, Mask, True); lblCount.Caption := IntToStr(List.Count); ProgressCounter:= List.Count; lblProgress.Caption := IntToStr(ProgressCounter); if List.Count > 0 then begin btnDoIt.Enabled := true; Setlength(failed, List.Count); end; for IntI := 0 to List.Count - 1 do lstSearch.Items.Add(List[IntI]); end; end; Sollte das nicht so aussehen:
Delphi-Quellcode:
Gruß LP
procedure TForm1.btnSearchClick(Sender: TObject);
var List: TStringList; IntI: Integer; Mask: array[0..0] of string; begin edSearchpath.Text := GetFolder(CSIDL_DRIVES, 'Select search path'); lstSearch.Clear; List := TStringList.Create; try If edSearchpath.Text <> '' then begin Mask[0] := '.mp3'; FindMediaFiles(List, edSearchpath.Text, Mask, True); lblCount.Caption := IntToStr(List.Count); ProgressCounter:= List.Count; lblProgress.Caption := IntToStr(ProgressCounter); if List.Count > 0 then begin btnDoIt.Enabled := true; Setlength(failed, List.Count); end; for IntI := 0 to List.Count - 1 do lstSearch.Items.Add(List[IntI]); end; finally FreeAndNil(List) end; end; |
AW: Cover in WMP Format
Zitat:
Auf jeden fall hast du recht. ;) Keine Entschuldigung, aber im Eifer des Gefechts habe ich nur auf das Ergebnis geachtet als darauf Programmtechnisch alles korrekt zu machen. List wird ja nach dem addieren zur Listbox nicht mehr benötigt muss also Frei gegeben werden. Danke für die Info. EDIT: Würde aber die TStringlist erst erstellen wenn sie auch benötigt wird. Warum ein Objekt initialisieren wenn ich damit nichts tun kann, also wenn das suchen abgebrochen wird. Macht also nur sinn wenn ich anschließend damit auch Arbeiten will\kann. gruss |
AW: Cover in WMP Format
Korrigiert so wäre es richtig.
Delphi-Quellcode:
Man könnte das alles noch etwas schöner machen.
procedure TForm1.btnSearchClick(Sender: TObject);
var List: TStringList; IntI: Integer; Mask: array[0..0] of string; begin edSearchpath.Text := GetFolder(CSIDL_DRIVES, 'Select search path'); If edSearchpath.Text <> '' then begin if lstSearch.Count > 0 then lstSearch.clear; try List := TStringList.Create; Mask[0] := '.mp3'; FindMediaFiles(List, edSearchpath.Text, Mask, True); lblCount.Caption := IntToStr(List.Count); ProgressCounter:= List.Count; lblProgress.Caption := IntToStr(ProgressCounter); if List.Count > 0 then begin btnDoIt.Enabled := true; Setlength(failed, List.Count); end; for IntI := 0 to List.Count - 1 do lstSearch.Items.Add(List[IntI]); finally FreeAndNil(List); end; end; end; Zum Beispiel wenn ein Fehler auftritt (Tag nicht gefunden) Die aktuelle Zeile Gelb färben so das man den Pfad bzw. die Datei erkennen kann die keinen gültigen 2.3 Tag besitzt. Habe das mal versucht aber bei mir wird diese Zeile immer wieder mit grün über pinselt. Nun bin kein VCL Freak eher das Gegenteil aber das ist ja bekannt. Noch ein Pic für @KodeZwerg gruss |
AW: Cover in WMP Format
So wäre es richtiger ;)
Delphi-Quellcode:
List := TStringList.Create;
try (* Mit der Liste arbeiten *) finally List.Free; //reicht bei lokalen Variablen völlig aus end; |
AW: Cover in WMP Format
Zitat:
Danke dann ist das jetzt geklärt ;) Leider kann ich das alte Archiv nicht mehr löschen destotrotz hier das Update. gruss |
AW: Cover in WMP Format
Zitat:
Diskobeleuchtung, Überall Boxen, Dein Plugin, Mann-O-Mann, mächtig Gewaltig Egon! (spruch als Olsenbande) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:39 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