AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Beats per minute aus MP3 auslesen...Wie?
Thema durchsuchen
Ansicht
Themen-Optionen

Beats per minute aus MP3 auslesen...Wie?

Ein Thema von torud · begonnen am 14. Mai 2008 · letzter Beitrag vom 14. Mai 2008
Antwort Antwort
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#1

Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 12:37
Hallo Wissende,

ich weiss, dass diese Frage vielleicht etwas ungewöhnlich bis fast unmöglich ist, aber vielleicht hat sich ja schon mal jemand damit befasst.

Ich würde gern wissen, ob es möglich ist die Beats per minute mit der ein Song gespielt wird aus einer MP3-Datei auszulesen.
Danke
Tom
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

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

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 12:42
direkct auslesen kannst du es nur wenn es im id3-tag gespeichert ist. Ansonsten musst du die Audiodaten analysieren und da macht es keinen Unterschied ob es eine Wavedatei oder mp3datei ist.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.095 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 12:45
Hi,

eigentlich wird das nicht in den MP3s gespeichert. Es könnte zwar sein, dass es in den ID3v2-Daten steht, da kann ja nahezu alles drinstehen (benutzerdefinierte Tags), aber wenn überhaupt, dann ist das nicht standardisiert und außerdem wird dieser Zusatz dann kaum mal vorhanden sein.

Bei einem Stück, wo irgendwelche Perkussionsinstrumente einfach nur den Takt trommeln oder so könnte eventuell eine Frequenzanalyse, Zählen und dann berechnen funktionieren. Ein guter Algorithmus in dieser Richtung würde eventuell sogar mit Tempowechseln zurechtkommen. Eine andere Möglichkeit fällt mir im Moment aber nicht ein. Und eine allgemein gültige wird es wohl nicht geben.

Mfg
FAlter
Felix Alter
Japanurlaub 2015
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#4

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 13:07
Zitat von FAlter:
Es könnte zwar sein, dass es in den ID3v2-Daten steht, da kann ja nahezu alles drinstehen (benutzerdefinierte Tags), aber wenn überhaupt, dann ist das nicht standardisiert und außerdem wird dieser Zusatz dann kaum mal vorhanden sein.
Wie bitte? TBPM frame
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#5

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 13:15
Jo danke. Ich wollte ja hier keinen Streit lostreten. Also es stimmt natürlich, dass man das in den erweiterten Tags auslesen und speichern kann. Das ist schon mal Klasse!

Das man das Auslesen nicht nur auf MP3´s begrenzen muss war mir auch klar.

Nun aber zum wie.

Ich habe mir schon fast gedacht, dass man den Song "irgendwie" laden müsste und dann einmal durchgeht, um "Klangspitzen" in einem bestimmten Frequenzbereich zu suchen und diese zu zählen und "hochzurechnen". Aber wie könnte man das codetechnisch ungefähr machen???
Danke
Tom
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#6

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 13:21
Zitat von torud:
Also es stimmt natürlich, dass man das in den erweiterten Tags auslesen und speichern kann. Das ist schon mal Klasse!
Das ist auch nicht das Problem. Nutze Gausi's MP3 Tools oder andere MP3 Libraries dazu.

ABER: Dieser Tag ist nicht zwingend und somit nur vorhanden, wenn ihn irgendeine Software schonmal geschrieben hat. Winamp in der aktuellen Version bietet den Inhalt des Feldes frei zur Editierung an bei MP3 Dateien und somit muss der darin enthaltene Wert nicht stimmen.

Zitat von torud:
Ich habe mir schon fast gedacht, dass man den Song "irgendwie" laden müsste und dann einmal durchgeht, um "Klangspitzen" in einem bestimmten Frequenzbereich zu suchen und diese zu zählen und "hochzurechnen". Aber wie könnte man das codetechnisch ungefähr machen???
Naja, ich vermute erstmal ein Spektrum mit einer FFT ermitteln und dann in den unteren Frequenzen versuchen einen regelmässigen Ausschlag zu ermitteln und diesen dann zu timen. Aber: Da es nun unterschiedliche Takte gibt, hast du auch mal Beats dazwischen (Break Beat ist auch ein gutes Beispiel), von daher muss deine mathematische Lösung schon recht gut sein.
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#7

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 13:32
Zitat von torud:
Ich habe mir schon fast gedacht, dass man den Song "irgendwie" laden müsste und dann einmal durchgeht, um "Klangspitzen" in einem bestimmten Frequenzbereich zu suchen und diese zu zählen und "hochzurechnen". Aber wie könnte man das codetechnisch ungefähr machen???
Schau dir mal BASS oder FMOD an.
  Mit Zitat antworten Zitat
Benutzerbild von Dj_Base
Dj_Base

Registriert seit: 10. Aug 2004
Ort: Aachen
231 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 13:38
Zitat von Nuclear-Ping:
Schau dir mal BASS oder FMOD an.
Ich würde Dir auch die BASS-Libraries empfehlen. Hab es selber mal damit ausprobiert und fand die Ergebnisse sehr zufriedenstellend.

In der BASS-Hilfe findest Du eigentlich alles, was Du wissen musst.

mfg,
Dj_Base
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#9

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 18:46
Jo habs mal angetestet und werde mich mal reinarbeiten. Aber auf Anhieb konnte ich die Beats per Minute nicht finden...Aber wie gesagt, ich muss mich da mal reinwühlen...
Danke
Tom
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi
Online

Registriert seit: 17. Jul 2005
847 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Beats per minute aus MP3 auslesen...Wie?

  Alt 14. Mai 2008, 18:58
Mit der bass direkt geht das iirc auch nicht. Da braucht es einen Zusatz - bass_fx.dll war das glaube ich.

Zitat von Muetze1:
Das ist auch nicht das Problem. Nutze Gausi's MP3 Tools oder andere MP3 Libraries dazu.
Nutz lieber die von Muetze1 oder andere MP3 Libraries dazu. Bei meiner ist der BPM-Frame nicht mit drin.
The angels have the phone box.
  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 11:03 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