AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Mp3FileUtils
Thema durchsuchen
Ansicht
Themen-Optionen

Mp3FileUtils

Ein Thema von Gausi · begonnen am 15. Jun 2006 · letzter Beitrag vom 23. Jun 2013
Antwort Antwort
Seite 2 von 9     12 34     Letzte »    
Benutzerbild von Gausi
Gausi
Registriert seit: 17. Jul 2005
MP3FileUtils, v0.6


Diese Unit liest aus einer MP3-Datei alle (?) gängigen Informationen aus. Wie bei vielen anderen auch wird der ID3v1-Tag gelesen, fast alle Teile des ID3v2-Tags und diverse Informationen über die Datei ansich, wie z.B. Bitrate und Spieldauer.

Download:
  • Mp3FileUtils - Quellcode inkl. der Demoprogramme. Zip-Archiv, ca. 555kb
  • Demos. - Komplilierte Demo-Programme zum Ausprobieren. Zip-Archiv, ca. 1.9mb
  • Zum Thema Unsynchronisation: "Das Gewitterrätsel - Reloaded" (das war mal eine Aufwärmfrage bei einem Gewinnspiel in der Entwickler-Ecke) (Version 1, Version 2) - Wo war das Gewitter? (Tip: beide Varianten mit dem VLC abspielen und am Scrollbalken spielen )

Änderungen in 0.6:
  • Methoden SetRating und SetPersonalPlayCounter zusammengefasst zu SetRatingAndCounter. Der Code in den eigenen Anwendungen muss da ggf. angepasst werden
  • Unterstützung von "Private Frames"
  • Erkennung des VBRI-Header
  • ein paar neue Genres in der Genre-Liste für ID3v1
  • neue Methoden Get/SetUserText, GetAllUsertextFrames
  • ID3v2Tag.ReadfromStream schneller: Tag wird zuerst komplett geladen, aus dem Memorystream dann die Einzelframes
  • Bugfix: Korrektes Lesen von UTF8-kodierten Textframes mit Delphi 2009
  • Bugfix: ExtendedHeader-Größe wurde falsch interpretiert
  • Bugfix: User-definierte Textframes (TXXX) haben eine andere Struktur als normale Textframes
  • Bugfix: Typ-Gemisch bei GetFrameLength behoben
Folgendes leisten die in dieser Unit implementierten Klassen:
  1. TID3v1Tag:
    • Lesen und Schreiben des ID3v1-Tags
    • Unterscheidung von v1- und v1.1-Tags
  2. TMpegInfo:
    • Lesen/Berechnen der MPEG-Informationen eines mp3-Files - z.B. Bitrate, Channelmode, Samplerate, vbr/cbr, Dauer
    • Schnelles Ermitteln der Daten: Auch bei vbr wird die Spieldauer (fast) immer korrekt ermittelt, ohne die ganze Datei lesen zu müssen
  3. TID3v2Tag:
    • Lesen und Schreiben des ID3v2-Tags
    • Unterstützung aller existierenden Versionen: v2.2, v2.3 und v2.4
    • Unterstützung der Standard-Frames wie Titel, Artist, Album
    • Unterstützung einiger weiterer Text-Frames wie orig. Artist, Composer, Mediatype, Encoder
    • Lesen und schreiben von Lyrics, Bildern, Bewertungen, URLs
    • Lesen und schreiben beliebiger Daten
    • Unterstützung von Unsynchronisation, GroupIDs und Datalength-Bytes
    • Unterstützung von Unicode
    • Unbekannte Frames (~ Informationsfelder) im Tag bleiben erhalten
Für Details verweise ich auf die beiliegende Dokumentation und die verschiedenen Demoprojekte.

Evtl. benötigte Zusatzkomponenten/Units:
Nur für Delphi 2007 oder früher. Verwendung kann in der Datei Config.inc geändert werden.Für Fehlermeldungen oder Codeoptimierungen bin ich jederzeit offen - hier im Thread, per PN oder per Mail.

Edit: Text an die neue Version angepasst.
The angels have the phone box.

Geändert von Gausi (30. Jun 2011 um 20:37 Uhr)
 
DmVinny
 
#11
  Alt 3. Apr 2009, 18:47
LOL, Thank you for the quick response. And yes I did use google translate, I was in need of the information and I did not know if you spoke english. But I am glad you do, and understood what I meant.

Ty
  Mit Zitat antworten Zitat
DmVinny
 
#12
  Alt 9. Apr 2009, 06:25
Ignore post, figured out, thank you anyway.
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

 
Delphi 11 Alexandria
 
#13
  Alt 9. Apr 2009, 16:08
Da das Jahr 2009 langsam voranschreitet, und die Zahl der Delphi2009-Nutzer langsam zunimmt, habe ich mich mal hingesetzt, und die Unit fit fürs neue Delphi gemacht. Ein paar weitere Änderungen wurden auch vorgenommen, an den Grundlagen der Verwendung hat sich aber nichts geändert.

Die oben verlinkten Demos sind aktuell mit der 2009 Trial compiliert, das werde ich ändern, wenn die Vollversion da ist.
  Mit Zitat antworten Zitat
Benutzerbild von Garfield
Garfield

 
Delphi XE5 Professional
 
#14
  Alt 10. Apr 2009, 11:34
Zitat von Gausi:
Die oben verlinkten Demos sind aktuell mit der 2009 Trial compiliert, das werde ich ändern, wenn die Vollversion da ist.
Sollte nicht notwendig sein.
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

 
Delphi 11 Alexandria
 
#15
  Alt 10. Apr 2009, 11:57
Kann sein, aber mich hat dieser Teil in den Lizenzbestimmungen etwas stutzig gemacht:
Zitat:
2.2 Lizenz für Testversionen
[...]
PROGRAMME, DIE SIE WÄHREND DES EVALUIERUNGSZEITRAUMS ERSTELLT HABEN, BENÖTIGEN DAS PRODUKT MÖGLICHERWEISE FÜR DIE AUSFÜHRUNG. NACH ABLAUF DES EVALUIERUNGSZEITRAUMS FUNKTIONIEREN DIESE PROGRAMME MÖGLICHERWEISE NICHT MEHR.
Ich werde es ja in 20 Tagen sehen, was dann passiert. Außerdem gibt es ja auch eine Interpretation von "kommerzieller Nutzung", die in der Veröffentlichung von Software außerhalb von Foren wie diesem hier einen kommerziellen Nutzen in Form von Werbung sieht. Von daher würde die Veröffentlichung auf meiner Seite gegen die Lizenzbestimmungen der Trial verstoßen. Aber da die Vollversion bestellt ist, und die Programme in der Form relativ geringen Nutzwert haben, würde ich sagen, dass man da ein Auge zudrücken kann.
  Mit Zitat antworten Zitat
Benutzerbild von Garfield
Garfield

 
Delphi XE5 Professional
 
#16
  Alt 11. Apr 2009, 09:18
Ich habe im September ein Programm mit der Trial compiliert. Das läuft immernoch. Die Trial ist nicht mehr installiert.
  Mit Zitat antworten Zitat
SearchBot

 
Delphi 12 Athens
 
#17
  Alt 4. Mai 2009, 00:32
LOL, ich habe den Code der 0.4 auf Delphi4 runter-kompatibititiert - zumindest bekomme ich keine Fehlermeldungen mehr, daß es die Arrays nicht kapiert und so.

Ich brauche die Utils nur, um die Liedlänge rauszufinden. Das klappt bei allen MP3s sehr gut, außer sie sind mit 320kBit/s kodiert.

Hat jemand eine Ahnung, wie man auch bei den 320ern die korrekte Spieldauer herausfindet?
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

 
Delphi 11 Alexandria
 
#18
  Alt 4. Mai 2009, 07:42
Normalerweise sollte das auch mit 320ern richtig klappen, zumindest habe ich bei mir bisher keine nennenswerten Abweichungen gefunden (+/- eine Sekunde kann schonmal vorkommen, wenn noch unbekannte Tags in der Datei sind). Wenn die Abweichungen größer sind, würde ich mich über eine Beispieldatei per Mail (mail ÄTT gausi PUNKT de) freuen - ich schau mir das dann mal genauer an.
  Mit Zitat antworten Zitat
SearchBot

 
Delphi 12 Athens
 
#19
  Alt 4. Mai 2009, 23:45
Hallo,
ich hab dir ne Mail mit etlichen Links geschickt; eine ganz extreme davon ist diese hier (für alle anderen mal zu selber testen):
Download: Spellbound
Bitrate: 320
Windows erkennt diese Zeit: 4.30
Unit erkennt diese Zeit (min.sec): 18.05
  Mit Zitat antworten Zitat
Muetze1
 
#20
  Alt 5. Mai 2009, 01:46
Da ich an dem Problem auch länger gesessen hatte, musste ich doch glatt mal nachschauen: meine ID3 Lib sagt mir bei dem Song 4:30. Gausi, ich kann dir nur nochmals anbieten den Code der Lib von mir auszuschlachten.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 9     12 34     Letzte »    


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 00:25 Uhr.
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