![]() |
beat-detection
moin,
ich hab mir was in den kopf gesetzt, aber keinen plan, ob (geschweigedenn wie) man das realisieren kann. ich hätte gerne ne möglichkeit, den beat (des soundkartenausgangs?) zu ermitteln, um damit nen timer abzugleichen ... also ne BPM-erkennung hat jemand ne idee, ob und wie sich das mit delphi realisieren liesse ?? danke im voraus gruß, thomas |
Re: beat-detection
Das ist ein sehr komplexes Thema. Ich denke Du müsstest Dich da erstmal über Wavelets informieren. Wavelets sind eine Weiterentwicklung der sogenannten Fourier Transformation. Der Unterschied zwischen Wavelet-Transformation und Fouriertransformation besteht im wesentlichen darin, dass man bei der Wavelet-Transformation Informationen über Zeitpunkte hat - das fehlt bei der Fouriertransformation. Das heißt die Fouriertransformation kann man eigentlich nicht "live" durchführen, sondern erst wenn man ein ganzes Signal hat. Die Wavelet-Transformation kann man auch live durchführen. Aber wie gesagt: Sehr sehr komplex.
|
Re: beat-detection
Ich glaube die Bass.dll unterstützt sowas,
![]() Früher war die aber mal Freeware. Gruß Hagen |
Re: beat-detection
Hi...
Eigentlich ist es, wenn du erstmal an die Live-sounddaten gekommen bist nicht mehr soooo schlimm. Was du brauchst ist ein Filter, der dir die tiefen Frquenzen aus diesen Sounddaten holt. Sowas sollte die Bass.dll bieten, glaube ich. Die genaue Frequenz (umso enger du sie definierst, desto genauer wird die Messung) musst du natürlich einstellbar machen, weil sie ja von Titel zu Titel (oder innerhalb des Titels) schwanken kann. Am einfachsten ist es wohl bei elektronische Musik weil da die Basedrum immer gleich klingt. Diese Frequenzen musst du dann nur noch arg verstärken, so dass das Signal völlig übersteuert und du quasi ein Rechtecksignal bekommst, dass durch etwa 0.2 - 0.4 Sekunden Stille (vieleicht nahezu Still) unterbrochen wird. Diese Daten musst du dann "nur" noch auswerten. Soll heissen z.B. 10 sekunden (oder so) zählen und mit 60 sekunden ins Verhältnis setzen. Bei einem Sample stelle ich mir das noch relativ einfach vor aber als livestream... Habe sowas mal elektronisch realisiert, war nicht allzuschwer. Bin mir auch sicher, dass man das mit einem Rechner machen kann. Aber mehr kann ich dir auch nicht helfen... MfG Tonic |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:38 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