Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi WMA Tags lesen und SCHREIBEN (https://www.delphipraxis.net/78147-wma-tags-lesen-und-schreiben.html)

Nils_13 29. Sep 2006 17:15


WMA Tags lesen und SCHREIBEN
 
Hi,

kennt jemand eine Version der WMA-Unit der Audio Tools Library, welche die Tags auch speichern kann oder eine Methode Tags auszulesen und zu speichern ?

EWeiss 30. Sep 2006 09:21

Re: WMA Tags lesen und SCHREIBEN
 
Zitat:

Zitat von Nils_13
Hi,

kennt jemand eine Version der WMA-Unit der Audio Tools Library, welche die Tags auch speichern kann oder eine Methode Tags auszulesen und zu speichern ?

Nö !
Aber ich habe ne Unit welches beides kann, nicht von der Audio Tools Library.

Zitat:

Methode Tags auszulesen und zu speichern ?
Dafür benötigst du erstmal das SDK vom Mediaplayer.
In verbindung mit wmvcore dürfte das nicht so schwer sein.

Du benötigst die TGUIDS der Informationsheader die dazugehörigen Type Declarationen usw..
Ist aber alles im SDK beschrieben.

Dein Problem ist lediglich den C++ code nach Delphi zu übersetzen.
Glaube nicht das es von MS ne UNIT dafür gibt.

gruß

Nils_13 30. Sep 2006 10:56

Re: WMA Tags lesen und SCHREIBEN
 
Ok, aber wo ist dann die Unit, die du ja in deinem Projekt benutzt hast ?

EWeiss 30. Sep 2006 11:03

Re: WMA Tags lesen und SCHREIBEN
 
Zitat:

Zitat von Nils_13
Ok, aber wo ist dann die Unit, die du ja in deinem Projekt benutzt hast ?

Hehehehe .....
Unterwegs.

gruß

Nils_13 30. Sep 2006 11:16

Re: WMA Tags lesen und SCHREIBEN
 
Thx.

Die Muhkuh 30. Sep 2006 12:11

Re: WMA Tags lesen und SCHREIBEN
 
Hi EWeiss,

evtl. kannst Du die Unit ja hier anhängen, falls andere die gleichen Probleme haben.

EWeiss 30. Sep 2006 15:01

Re: WMA Tags lesen und SCHREIBEN
 
Liste der Anhänge anzeigen (Anzahl: 2)
Was du mir da geschickt hast kann nicht laufen.

Show PIC ...
Jahr als Titel
Genre als Titel

So kann das nix werden.
das muss einen Laufzeitfehler auslösen :wink:

Test.jpg ist OK da ist nix mit komischen zeichen.

gruß

Nils_13 30. Sep 2006 15:10

Re: WMA Tags lesen und SCHREIBEN
 
Wieso kann das nicht laufen ?
Ich verstehe dich nicht.
Delphi-Quellcode:
procedure TAudioFile.GetWMAInfo(filename:String);
var
  TagsData: PTagsData;
begin
  New(TagsData);
  try
    OpenWMAFile(filename, TagsData);
    fArtist   := TagsData.Author;
    fTitel    := TagsData.Title;
    fAlbum    := TagsData.Album;
    fGenre    := TagsData.Genre;
    fYear     := TagsData.Year;
    fTrack    := TagsData.Track;
    fKommentar := TagsData.Comments;
  finally
    DisPose(TagsData);
    FPfad     := filename;
    FOrdner   := ExtractFileDir(filename);
    FDateiname := filename;
  end;
end;

procedure TAudioFile.SaveWMAInfo(filename,a,b,c,d,e,f,g: String);
var
  TagsData: PTagsData;
begin
  New(TagsData);
  try
    TagsData.Title := a;
    TagsData.Author := b;
    TagsData.Album := c;
    TagsData.Genre := d;
    TagsData.Year  := e;
    TagsData.Track := f;
    TagsData.Comments := g;
    SaveWMAFile(TagsData);
  finally
    Dispose(TagsData);
  end;
end;

EWeiss 30. Sep 2006 15:16

Re: WMA Tags lesen und SCHREIBEN
 
Zitat:

Zitat von Nils_13
Wieso kann das nicht laufen ?
Ich verstehe dich nicht.
Delphi-Quellcode:
procedure TAudioFile.GetWMAInfo(filename:String);
var
  TagsData: PTagsData;
begin
  New(TagsData);
  try
    OpenWMAFile(filename, TagsData);
    fArtist   := TagsData.Author;
    fTitel    := TagsData.Title;
    fAlbum    := TagsData.Album;
    fGenre    := TagsData.Genre;
    fYear     := TagsData.Year;
    fTrack    := TagsData.Track;
    fKommentar := TagsData.Comments;
  finally
    DisPose(TagsData);
    FPfad     := filename;
    FOrdner   := ExtractFileDir(filename);
    FDateiname := filename;
  end;
end;

procedure TAudioFile.SaveWMAInfo(filename,a,b,c,d,e,f,g: String);
var
  TagsData: PTagsData;
begin
  New(TagsData);
  try
    TagsData.Title := a;
    TagsData.Author := b;
    TagsData.Album := c;
    TagsData.Genre := d;
    TagsData.Year  := e;
    TagsData.Track := f;
    TagsData.Comments := g;
    SaveWMAFile(TagsData);
  finally
    Dispose(TagsData);
  end;
end;

Die Datei die du mir geschickt hast kann nicht laufen siehe Wma.JPG
Du kannst bei Jahr keine Strings addieren und dann ins WMA Format schreiben.
Das verursacht beim einladen einen AV.

Jahr ist ein numerischer wert kein string.
Das selbe gilt für Track

gruß

EDIT: Alle Dateien von Windows habe ich getestet (die sich im system befinden)
Alle aber auch alle, funktionieren einwandfrei ohne Fehler.
Kann es sein das du in die Datei schreibst während sie am laufen ist?

Nils_13 30. Sep 2006 15:21

Re: WMA Tags lesen und SCHREIBEN
 
Du meinst, ich soll aus Track und Year Integer machen ? Gerade das geht nicht....


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:00 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz