Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Notenlängen berechnung (https://www.delphipraxis.net/160464-notenlaengen-berechnung.html)

EWeiss 16. Mai 2011 11:37

AW: Notenlängen berechnung
 
Ich habe die Werte anhand einer Tabelle vorher festgelegt.

Delphi-Quellcode:
    BeatProMaes[0].Name := '2/2';
    BeatProMaes[0].Value := 4;
    BeatProMaes[1].Name := '3/2';
    BeatProMaes[1].Value := 6;
    BeatProMaes[2].Name := '4/2';
    BeatProMaes[2].Value := 8;
    BeatProMaes[3].Name := '2/4';
    BeatProMaes[3].Value := 2;
    BeatProMaes[4].Name := '3/4';
    BeatProMaes[4].Value := 3;
    BeatProMaes[5].Name := '4/4';
    BeatProMaes[5].Value := 4;
    BeatProMaes[6].Name := '5/4';
    BeatProMaes[6].Value := 5;
    BeatProMaes[7].Name := '6/4';
    BeatProMaes[7].Value := 6;
    BeatProMaes[8].Name := '7/4';
    BeatProMaes[8].Value := 7;
    BeatProMaes[9].Name := '9/4';
    BeatProMaes[9].Value := 9;
Wenn ich jetzt ein midifile importiere bekomme ich die Geschwindigkeit mitgeliefert.
Wenn ich es eingeladen habe möchte ich nicht in den Takten rumklicken müssen um die passende
Taktart zu dem Stück passend zur Geschwindigkeit einstellen.

Wenn ich vorher den 4/4 Takt eingestellt habe und die Geschwindigkeit passt nicht
dann schalte ich runter auf 2/4 usw.. bis es halt passt.
Und das möchte ich vermeiden.

Es ist also abhängig von BeatProMaes[BeatPMSelected].Value
Bei 2/4 würde die Geschwindigkeit quasi um 2 heruntergesetzt.
Wenn der Index = 3

Nur um das zu berechnen finde ich keinen Anhaltspunkt.

EDIT:
Es geht um den Takt nicht um die Note. ;)
Vorher war die Geschwindigkeit MidiTracker.Tempo = 120
Nun liefert das MidiFile eine von 100 also
MidiTracker.Tempo = 100

Und damit muss ich jetzt auf den Takt schließen.
Das ist mein Problem


gruss

Luckie 16. Mai 2011 12:14

AW: Notenlängen berechnung
 
Zitat:

Wenn ich vorher den 4/4 Takt eingestellt habe und die Geschwindigkeit passt nicht
dann schalte ich runter auf 2/4 usw.. bis es halt passt.
Was hat denn der Takt mit der Geschwindigkeit und der tatsächlichen Notenlänge zu tun? Ich kann einen Walzer im 3/4 Takt schnell oder langsam spielen. Ich kann einen Rocksong im 4/4 Takt auch langsam oder schnell spielen (Johnny B. Good ist genauso im 4/4 Takt, wie Wonderful Tonight.) Und damit variiert natürlich die Notenlänge. Nicht umsonst gibt es in der Musik Bezeichnungen für das Spieltempo [http://de.wikipedia.org/wiki/Tempo_%..._Tempoangaben] bzw. die Angabe der BPM für das Metronom.

EWeiss 16. Mai 2011 12:21

AW: Notenlängen berechnung
 
so wie ich gelesen habe ist BPM abhängig bzw.. mit dem Takt verbunden.
Wenn ich die länge der Note verändere von 1/4 auf 1/8 spielt das stück nicht langsamer oder schneller.
Es ändert sich lediglich die Notenlänge wobei die Geschwindigkeit gleich bleibt.

Teste das mal mit Anvil Studio 2011
Dann weist was ich meine.

gruss

EWeiss 16. Mai 2011 12:49

AW: Notenlängen berechnung
 
Und ja vergessen!
Wenn ich einen 4/4 Takt spiele ist dieser immer Schneller als ein 2/4 Takt
Da dieser nur die Hälfte von 4/4 ist Oder?
Das hat nichts damit zu tun ob ich einen 4/4 Takt langsam oder schneller spielen kann.

Spiel mal dein Johnny B. Good im 2/4 Takt ;)

gruss

Namenloser 16. Mai 2011 12:58

AW: Notenlängen berechnung
 
Zitat:

Zitat von EWeiss (Beitrag 1101085)
Und ja vergessen!
Wenn ich einen 4/4 Takt spiele ist dieser immer Schneller als ein 2/4 Takt
Da dieser nur die Hälfte von 4/4 ist Oder?

Wenn die BPM-Zahl gleich bleibt, dann müsste das gleiche Stück im 4/4-Takt doppelt so schnell sein wie im 2/4-Takt, da ja pro Takt doppelt so viele Noten gespielt werden wie beim 2/4.
Okay, wusste nicht, dass BPM immer die Viertelnoten angibt. Dachte es bezieht sich auf Takte. Bin halt nur Laie...

divBy0 16. Mai 2011 13:08

AW: Notenlängen berechnung
 
Die BPM geben ja nur die Schläge pro Minute ein.

60 BPM -> 1 Schlag pro Sekunde.

Angenommen jeweils ein Takt:

1/4 - 1 Sekunde Dauer
2/4 - 2 Sekunden Dauer
3/4 - 3 Sekunden Dauer
4/4 - 4 Sekunden Dauer
5/4 - 5 Sekunden Dauer
7/4 - 7 Sekunden Dauer

1/2 - 0,5 Sekunden Dauer
2/2 - 1 Sekunde Dauer
3/2 - 1,5 Sekunden Dauer
4/2 - 2 Sekunden Dauer

Beim X/4-Takt ist die Viertelnote einen Schlag lang, beim X/2-Takt ist die halbe Note 1 Schlag lang, usw.

EWeiss 16. Mai 2011 13:23

AW: Notenlängen berechnung
 
Zitat:

Zitat von divBy0 (Beitrag 1101088)
Die BPM geben ja nur die Schläge pro Minute ein.

60 BPM -> 1 Schlag pro Sekunde.

Angenommen jeweils ein Takt:

1/4 - 1 Sekunde Dauer
2/4 - 2 Sekunden Dauer
3/4 - 3 Sekunden Dauer
4/4 - 4 Sekunden Dauer
5/4 - 5 Sekunden Dauer
7/4 - 7 Sekunden Dauer

1/2 - 0,5 Sekunden Dauer
2/2 - 1 Sekunde Dauer
3/2 - 1,5 Sekunden Dauer
4/2 - 2 Sekunden Dauer

Beim X/4-Takt ist die Viertelnote einen Schlag lang, beim X/2-Takt ist die halbe Note 1 Schlag lang, usw.

Korrekt(Auch wenn deine Zuweisungen nicht stimmen) opps.. nee stimmen schon.

Also wenn ich nun 2/4 takt spiele ändert sich meine Geschwindigkeit.

Mein problem ist nun zu erkennen bzw. zu errechnen wann ich den richtigen takt zuweise da ansonsten
das importierte MidiFile in der falschen Geschwindigkeit spielt.
kann das von Hand zuweisen aber das will ich eben nicht.

gruss

divBy0 16. Mai 2011 13:32

AW: Notenlängen berechnung
 
Der Takt steht im Midi-File selbst drin.

EWeiss 16. Mai 2011 13:48

AW: Notenlängen berechnung
 
Zitat:

Zitat von divBy0 (Beitrag 1101099)
Der Takt steht im Midi-File selbst drin.

Die Frage nur wo ?
Dann wäre es ja kein problem.

gruss

divBy0 16. Mai 2011 13:49

AW: Notenlängen berechnung
 
Moment, kann ich dir raussuchen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:39 Uhr.
Seite 2 von 4     12 34      

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