Happy Birthday



  • Hallo Leute.

    Ich suche die Frequenzen von dem Song "Happy Birthday".

    Gemeint ist damit die Tonhöhen (frequenz) und die Tonlängen (ms) und pausen.

    Halt das Zusammenspiel von Beep(f, ms) und Sleep(ms).

    Wo finde ich diese? Oder wie kann ich sowas generieren?

    Danke schonmal.



  • Nimm eine einstimmige MIDI-Datei, daraus kannst du diese Sequenzen sehr einfach extrahieren. Du kannst es sogar per Hand machen, wenn du die Noten hast.
    Die Umrechnungsregel bei der heute ueblichen Instrumenten-Stimmung ist: Der Ton a' hat 440Hz, jeder Halbtonschritt nach oben entspricht Multiplikation mit \sqrt[12]{2}, also der zwoelften Wurzel aus 2.



  • ja also a (kammerton hat 440 herz).

    das weiß ich.

    also die 12. Wurzel aus 2 == 1.0594...

    ist das richtig? oder verstehe ich das falsch?

    Die Noten: Klar! CCDCFE..CCDCGF..CC C A FF E D EEDCDC

    also rechne ich das so um? soll ich mir zuerst eine tabelle machen?

    Danke.



  • Script-Styler schrieb:

    also die 12. Wurzel aus 2 == 1.0594...

    ist das richtig? oder verstehe ich das falsch?

    Doch, das ist richtig. Die Idee dahinter ist, dass eine Frequenzverdopplung einer Oktave entspricht. Und damit man alle Tonarten spielen kann, werden die restlichen Toene gleichverteilt in dem Sinne, dass ein Halbtonschritt einem konstanten Faktor entspricht. Wenn du zwoelf Mal 12. Wurzel aus 2 an 440Hz multiplizierst, erhaeltst du genau 880Hz, was dem a'' entspricht. Halbtonschritte nach unten sind entsprechend Divisionen.

    Script-Styler schrieb:

    Die Noten: Klar! CCDCFE..CCDCGF..CC C A FF E D EEDCDC

    also rechne ich das so um? soll ich mir zuerst eine tabelle machen?

    Ja, eine Tabelle waere nicht verkehrt, wenn du es per Hand umrechnen moechtest. Das c' in deinem Beispiel waere dann 440\;\mathrm{Hz}\; / \left(\sqrt[12]{2}\right)^9 , was auf eine Nachkommastelle gerundet 261,6 Hz ist. Die 9 kommt daher, dass das c' genau 9 Halbtoene unter dem a' liegt.



  • :wörker holec:

    feddich!

    is zwar c#, aber kein prob.

    int speed = 500; // Eine virtelnote im ms
    
                Console.Beep(261, speed / 2);
                Console.Beep(261, speed / 2);
                Console.Beep(293, speed);
                Console.Beep(261, speed);
                Console.Beep(349, speed);
                Console.Beep(329, speed);
                Thread.Sleep(speed);
    
                Console.Beep(261, speed / 2);
                Console.Beep(261, speed / 2);
                Console.Beep(293, speed);
                Console.Beep(261, speed);
                Console.Beep(392, speed);
                Console.Beep(349, speed);
                Thread.Sleep(speed);
    
                Console.Beep(261, speed / 2);
                Console.Beep(261, speed / 2);
                Console.Beep(523, speed);
                Console.Beep(440, speed);
                Console.Beep(349, speed / 2);
                Console.Beep(349, speed / 2);
                Console.Beep(329, speed);
                Console.Beep(293, speed);
                Thread.Sleep(speed);
    
                Console.Beep(349, speed / 2);
                Console.Beep(349, speed / 2);
                Console.Beep(329, speed);
                Console.Beep(261, speed);
                Console.Beep(293, speed);
                Console.Beep(261, speed);
                Thread.Sleep(speed);
                Thread.Sleep(speed);
    

    Kennt jemand noch andere klassiker, die aber schon in quellcode umgewandelt sind??? das wäre nett.

    danke.



  • äh, warum schreibst du dir nicht eine Funktion, die das macht?



  • wie, ein func?

    die auf switch eine note zur frequenz wandelt? also GetFreq(string note); ???

    danke.



  • ein array mit den noten in der richtigen reihenfolge + formel



  • Ich weiß nicht wer dir die Noten gegen hat ... aber der Schluss hört sich doch mal bescheiden an. Dein Teil steht in F-Dur, also ende bitteschön auch auf f:

    Der letzte Teil:
    Beep(466, speed / 2);
    Beep(466, speed / 2);
    Beep(440, speed);
    Beep(349, speed);
    Beep(392, speed);
    Beep(349, speed);



  • Christoph schrieb:

    Nimm eine einstimmige MIDI-Datei, daraus kannst du diese Sequenzen sehr einfach extrahieren.

    wie geht denn das? 😕 wär sehr gut zu wissen 🙂



  • han schrieb:

    Christoph schrieb:

    Nimm eine einstimmige MIDI-Datei, daraus kannst du diese Sequenzen sehr einfach extrahieren.

    wie geht denn das? 😕 wär sehr gut zu wissen 🙂

    http://cs.fit.edu/~ryan/cse4051/projects/midi/midi.html
    http://midifile.sapp.org/

    MfG SideWinder



  • Christoph schrieb:

    Die Umrechnungsregel bei der heute ueblichen Instrumenten-Stimmung ist: Der Ton a' hat 440Hz, jeder Halbtonschritt nach oben entspricht Multiplikation mit \sqrt[12]{2}, also der zwoelften Wurzel aus 2.

    Dummerweise ist die 12. Wurzel aus 2 hoch 7 nur 1.4983... und nicht 3/2, und hoch 19 ist sie nur 2.996... und nicht 3. d.h. die mit 12 Wurzel 2 berechneten Intervalle liegen nicht ganz auf den Frequenzen, wo das Gehör sie gern hätte.



  • Dummerweise hängt wo sie das Gehör gerne hätte aber von den verwendeten Harmonien ab. Ist aber ziemlich egal, denn AFAIK hört man das bei hintereinander gespielten Tönen nicht wirklich stark raus.

    Und es ändert nix daran dass Christoph Recht hat - üblich ist heute eine Gleichstufige Stimmung, und bei 12 Halbtönen ist der Abstand dann eben die 12. Wurzel aus zwei. Ob es Optimal für das menschliche Gehör ist oder nicht ändert ja nix daran dass es trotzdem heute üblich ist.



  • wenn ich eine Quinte (Freq-Verh 1.5) in 7 gleiche Schritte unterteile, komme ich nur eben nicht auf 2^1/12, sondern auf 1.5^1/7 pro Schritt, das liegt um rund 1.7e-4 darüber. Wenn ich eine echte Quinte zusammensetzen will, ist 2^1/12 pro Schritt also zu knapp. Die Sache ist nicht so einfach wie sie aussieht.



  • Doch, ist sie.
    Die Frage welche Stimmung heute üblich ist und hauptsächlich verwendet wird ist sehr einfach. Weil die wie gesagt überhaupt nix damit zu tun hat wie man ne Quinte unterteilt, sondern damit wie man Instrumente stimmt.



  • glaub' halt, was du willst.


  • Mod

    Es gibt alternative "Stimmungen", also Stimmungslösungen für andere Akkordkombinationen etc.

    https://de.wikipedia.org/wiki/Reine_Stimmung_bei_Tasteninstrumenten

    und wozu gibt es eigentlich Tabellen?
    https://de.wikipedia.org/wiki/Frequenzen_der_gleichstufigen_Stimmung

    oder Instrumenten(noten)schlüssel/Grundstimmung?
    https://en.wikipedia.org/wiki/Concert_pitch


Anmelden zum Antworten