AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Wie kann ich die Dauer aus einer mp3-Datei auslesen?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie kann ich die Dauer aus einer mp3-Datei auslesen?

Ein Thema von 100nF · begonnen am 15. Nov 2004 · letzter Beitrag vom 16. Nov 2004
Antwort Antwort
100nF

Registriert seit: 7. Nov 2004
639 Beiträge
 
#1

Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 15. Nov 2004, 18:39
hi,

also ich denke, viel muss ich nicht mehr schreiben, denn der titel beinhaltet eigentlich schon alles...

ich arbeite nämlich an einem mp3Player, der selbstverständlich mp3-dateien abspielen kann. aber zuerst muss ich die informationen aus der datei bekommen, was ich mit der function FillID3TagInformation auch kann. man kann jedoch die dauer des tracks nicht auslesen.

Meine Frage: ist es irgendwie möglich, die dauer eines mp3Files auszulesen?

hier noch die function:

Delphi-Quellcode:
procedure FillID3TagInformation(mp3File:string; Title,Artist,Album,Year,Genre,Comment:TEdit);
begin
  fmp3:=TFileStream.Create(mp3File, fmOpenRead);
  try
    fmp3.position:=fmp3.size-128;
    fmp3.Read(ID3,SizeOf(ID3));
  finally
    fmp3.free;
  end;
            
 if ID3.Tag <> 'TAGthen begin
   Title.Text:='Unbekannt';
   Artist.Text:='Unbekannt';
   Album.Text:='Unbekannt';
   Year.Text:='Unbekannt';
   Genre.Text:='Unbekannt';
   Comment.Text:='Unbekannt';
 end else begin
   Title.Text:=ID3.Title;
   Artist.Text:=ID3.Artist;
   Album.Text:=ID3.Album;

   if ID3.Genre in [0..MaxID3Genre] then
     Genre.Text:=ID3Genre[ID3.Genre]
   else
     Genre.Text:=IntToStr(ID3.Genre);
   Comment.Text:=ID3.Comment
 end;

end;
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#2

Re: Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 15. Nov 2004, 18:44
Die dauer steht auch nicht in den ID3-Tags, sondern im Dateiheader.


Such dort http://www.wotsit.org/ nach mp3 und schau dir mal die Dateispezifikation an, dann findest du schon die richtigen Byts, wo das drinseht.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 15. Nov 2004, 19:23
Die dauer steht auch nicht im Dateiheader (zumindest nicht zwangsläufig und richtig) sondern wird aus Bitrate etc. errechnet, deswegen müssen dateien mit variabler bitrate im normalfall auch erst gescannt werden um die genaue Länge zu ermitteln.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

Re: Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 15. Nov 2004, 19:29
man kann die Länge der MP3-Datei doch mit dem TMediaplayer auslesen !
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 15. Nov 2004, 19:30
Und der TMediaplayer wird intern nix anderes machen
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 15. Nov 2004, 20:02
Hi urbanbruhin,
ich wollte dich nur einmal direkt daraufhinweisen.
Die Sparte "Neue Beiträge für die Code-Library" ist nur für Tipps und Tricks gedacht, die in unsere Code-Library aufgenommen werden soll. Fragen sollen in die verschiedenen Sparten des öffentlichen Forum gepostet werden (in der Übersicht unter Programmieren mit Delphi).

Ich habe das jetzt mal gerade erklärt, weil bisher jeder deiner Beiträge dort gelandet war.

Chris
  Mit Zitat antworten Zitat
100nF

Registriert seit: 7. Nov 2004
639 Beiträge
 
#7

Re: Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 16. Nov 2004, 14:04
also erstens mal entschuldigung, hab ich gar nicht bemerkt das meine frage hier am falschen ort sind(bin halt noch nicht lanhe hier)

und zweitens konnte ich dieses problem mit dem tmediaplayer lösen

vielen dank
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#8

Re: Wie kann ich die Dauer aus einer mp3-Datei auslesen?

  Alt 16. Nov 2004, 15:11
auf swissdelphicenter gibts sowas auch bei den programmier-tips...eifnach mal suchen
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  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 21:04 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