Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Mein Computer pfeift Lapaloma - Aber wie? -->Windows.Beep (https://www.delphipraxis.net/147479-mein-computer-pfeift-lapaloma-aber-wie-windows-beep.html)

hugo1990 9. Feb 2010 21:39

Re: Mein Computer pfeift Lapaloma - Aber wie? -->Windows.
 
Ein bisschen Eigeninitiative wäre schon nicht schlecht:
http://lmgtfy.com/?q=midi+format
Wenn du dann nicht weiter kommst, helfen wir dir gern weiter. Aber wenn du ein Programm schreiben möchtest, dann solltest du auch etwas dafür tun und nicht alles die anderen machen lassen.

himitsu 9. Feb 2010 23:58

Re: Mein Computer pfeift Lapaloma - Aber wie? -->Windows.
 
Theoretisch könnte man erstmal mit FFT oder Ähnlichem eine Sounddatei in seine Frequenzen zerlegen.
(macht man bei MP3s ja auch nicht anders)

Aber aus diesen Frequenzen dann geziehlt bestimmte Noten rauszubekommen ist nicht unbedingt einfacher.
Denn ein Lied besteht nunmal nicht nur aus einer Frequenz, sondern aus mehreren/vielen überlagerten Frequenzen (inkl. Störgeräuche und Co.) und dort jetzt nur die Frequenz zu isolieren, welche zur Melodie gehört, das ist nahezu unmöglich.

Medium 10. Feb 2010 00:38

Re: Mein Computer pfeift Lapaloma - Aber wie? -->Windows.
 
Auch auf die Gefahr hin, dass da wieder so ein unqualifiziertes "böööh, dich kennen wir ja schon" kommt: Du stellst dir das extrem viel zu einfach vor. Mach dich zunächst ein Mal mit den Grundlagen der Signalverarbeitung vertraut. (Ja, das ist schon nicht wenig.) Dann hast du eine gute Chance zu verstehen was überhaupt in einer Wave-Datei steht, bis zu dem Punkt zu verstehen was bei MP3 passiert, ist es dann aber immer noch ein recht weiter weg.
Wenn du soweit mal bist (und auch ich selber hab den ganzen Kram über mehrere Jahre verteilt an der FH gelernt, erwarte kein Wochenendprojekt), dann fangen deine Probleme erst richtig an. Das ist dann die Stelle, wo sich, wie bereits zuvor jemand geschrieben hat, ganze Abteilungen nicht ganz ahnungsloser Forschungsteams mit beschäftgen lassen.

Und du machst es im Grunde noch schwieriger, in dem du nachher mit Beep() dran gehen willst, dass ja nur einen einzigen Ton ausgeben, keine Instrumente nachbilden, und schon garnicht polyphon genutzt werden kann. Frequenzen ermitteln ist theoretisch schon moppig, gibt's aber gute Libraries für. Signifikante Frequenzen auswählen ist schon erheblich komplizierter, und dann noch sicher stellen, dass sie der wahrgenommenen Hauptmelodie entsprechen, dürfte endgültig das Ende sein - das schaffen evtl. mal Systeme die wirklich wie ein Mensch wahrnehmen, und nicht mehr nur verarbeiten und analysieren. Das ist im Moment eher Science-Fiction, und klappt selbst in den hochgezüchtesten Systemen bestenfalls schätzungsweise, und bedarf praktisch immer manueller Nachbearbeitung. Mindestens.

Das heisst selbst wenn du der Obercrack auf diesem Gebiet wärst, würdest du es höchst wahrscheinlich nicht schaffen, das was dir vorschwebt zu basteln. Und wenn ich so frei sein darf: Von Obercrack bist du Lichtjahre entfernt wenn ich das hier so lese.

Fussel9 10. Feb 2010 18:55

Re: Mein Computer pfeift Lapaloma - Aber wie? -->Windows.
 
Wow Medium, ich muss schon sagen... ein ganzer Post ohne vom Thema abzukommen, ja ihr habt da wohl recht, ich weiß weder wie eine wav-Datei noch wie eine Midi-Datei, noch wie eine MP3-Datei aufgebaut ist,
Ich hatte nur gedacht, das man bei irgendeiner sorte von musikdateien die Frequenzen rauslesen könnte...

Aber da schein ich wohl den Riesen beim Zeh gepackt zu haben ;)

Versuchs dann auf anderen Wegen weiter ... THX

PS: Auch und Medium :thumb: Weiter so :wink:

himitsu 10. Feb 2010 19:21

Re: Mein Computer pfeift Lapaloma - Aber wie? -->Windows.
 
Zitat:

Zitat von Fussel9
Ich hatte nur gedacht, das man bei irgendeiner sorte von musikdateien die Frequenzen rauslesen

Eine WAVE-Datei (das unkomprimierte Urformat), besteht aus einer Reihe von "Spannungswerten" ... z.B. bei 44 kBit steht dort 44-tausend mal pro Sekunde die "Signalstärke" des Audioausganges hintereinander.
(bei Stereo natürlich abwechselnd für Links und Rechts)

Ein MP3 ist quasi und so im Großen und Ganzen eine Liste von Frequenzen.
Die MP3s sind dadurch kleiner, da man erstmal eine Frequenzanalyse des Sounds macht,
dann werden möglichst die leisen und/oder unhörbaren/unauffälligen Frequenzen entfernt
und der Rest landet in der Datei.
http://de.wikipedia.org/wiki/Mp3#Kompression_im_Detail

Viktorii 11. Feb 2010 11:26

Re: Mein Computer pfeift Lapaloma - Aber wie? -->Windows.
 
Zitat:

Zitat von shmia
* Noten in Frequenzen umrechnen
Schwierigkeitsgrad: einfach, Frequenzen kann man mit 12. Wurzel von 2 leicht ausrechnen

Wie genau funktioniert das? Hab's nicht verstanden. Wenn ich jetzt z.B. die Frequenz von c'' haben möchte?

himitsu 11. Feb 2010 11:46

Re: Mein Computer pfeift Lapaloma - Aber wie? -->Windows.
 
Zitat:

Zitat von Viktorii
Wie genau funktioniert das? Hab's nicht verstanden. Wenn ich jetzt z.B. die Frequenz von c'' haben möchte?

Schau einfach mal in mein hier verlinktes "Play"-Projekt.
Dort werden ja die Noten in Frequenzen für's Beep umgerechner, also findet man da auch die nötigen Berechnungen.

Die Berechnungen selber hatte ich mir vorwiegend mit Hilfe der Wikipedia "Oktave" und mit ein bissl rumprobieren zusammengebastelt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:35 Uhr.
Seite 2 von 2     12   

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