Frage

Grüße,

Ich arbeite an einem Niedrig Programmierungsprojekt und ich möchte eine Musik mit dem Computer spielen Lautsprecher.

Ich bin bereits in der Lage, den Lautsprecher zu verwenden (mit timer2) und ein Lied wird auf folgende Weise dargestellt:

note_t *music;

wo note_t repräsentiert eine Notiz und es ist zusammengesetzt von:

typedef struct {
  int freq; /* note frequency */
  int dur;  /* note duration in miliseconds */
} note_t;

Was wäre der beste Weg, um die Frequenzen und Dauer der Notizen aus einer Musikdatei zu erhalten?

Danke im Voraus!

BEARBEITEN

Um einige Zweifel zu verdeutlichen, möchte ich wissen, dass ich wissen möchte, dass die erforderlichen Informationen mit der angegebenen Struktur ein Lied erstellt werden.

War es hilfreich?

Lösung

AnatolygDie Antwort ist gut. Ich möchte nur zeigen, wie komplex eine solche Aufgabe sein kann: Schauen Sie sich MIDI zur Inspiration an.

http://en.wikipedia.org/wiki/musical_instrument_digital_interface

MIDI -Dateien können als "virtuelle Noten" für Musiksoftware verwendet werden, die die Notizen und viele zusätzliche Informationen speichern, die die Nuancen des Spielens beschreiben (zum Beispiel die Geschwindigkeit, die Pitch -Biegung, die Modulation usw.). Es wurde gebaut, um ganze Musikstücke mit mehreren Instrumenten und Polyphonie aufzubewahren.

Andere Tipps

Abhängig von Ihrem genauen Zweck können Sie eines der Klingeltonformate verwenden oder Ihre eigenen erfinden.

Ein Beispiel für ein einfaches Klingeltonformat ist Rtttl.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top