Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Anonymous

unregistriert

11

28.09.2004, 14:02

Zitat von »"kaid"«

damit ich mir die weiteren Töne mit Mathematik ausrechnen kann(Synti)


Ok, die Antwort auf die Frage. (Dann is aber schluss bis heut abend, immer hin und her zwischen PC und Kinder is anstrengend.)

Gucken wir mal was ein Synti macht.

Ein Synti spielt die erste Note originalgetreu ab so wie sie im Speicher hinterlegt ist.

Das C der ersten Oktave sähe zb so aus (Ausschnitt)

011101111101000011110101111000010101

Jetzt willst du den Ton genau eine Oktave höher haben. Der Synti macht zuerst Platz für die neuen Informationen indem er die alten Staut.

zb 0110----1101----0010----1101----0000----1101 .

Nun berechnet er die neue Tonstruktur anhand des vorhandenen Tonfilters.

Die temporäre Note die abgespielt wird wär also folgende.

001011101110001110100010111010010101.

Wichtig hierbei das die neue Note genausolange ist wie die alte und (wichtig) genausolange spielt. Der Knackpunkt ist allerdings der interne Wandler der die neuen Noten berechnet (in Echtzeit). Je besser dieser Alogarytmus ist, desto besser klingen die Noten (hat mit HZ nix mehr zu tun). Diese Alogarytmen sins bares Gels wert was der Grund ist das zb Steinberg seinen von CUbase nie veröffentlichen würde. Der Rest des Progs ist ja nur ein Editor.

Ich glaube kaum das die Hardware eines Pocket zu mehr ausreicht einen echten 1 stimmigen Synti zu schaffen. ganz davon abgesehen das die Tonqualität dies nicht rechtfertigt.
Was diese Umrechnungen angeht ist es wohl einfacher einen MP3 Decoder zu bauen.

Aus Speicher CPUpower und Effizienz-gründen rate ich dir also dringend zum Trackerprinzip.(Um bessere Resultate zu erziehlen kann mann ja jede Oktave getrennt einbinden.

cu Linux

PS: Ich habe ein original "STEINWAY" Piano als Samplebank auf CD. Dieses ist in 16 Teiloktaven unterteilt und hat bei 44.1khz und 16 bit genau 148,24MB. Bedenke also das mann nicht eben mal ein geiles Piano proggen kann. Mann muss den Kompromis zwischen "anwendbar" und "zumutbar" machen.

12

28.09.2004, 18:24

Das kann ich gar nicht machen. Ich hab nur ne simple Funktion zum Apspielen von Tönen mit ner bestimmten Frequenz und ner bestimmten Länge des Tones.

Zitat von »"Linux"«

Bedenke also das mann nicht eben mal ein geiles Piano proggen kann.

Mein Programm soll ja auch nur ein simples Piano werden, und keine Steinway-Konkurenz.

Anonymous

unregistriert

13

28.09.2004, 18:33

Zitat von »"kaid"«


Mein Programm soll ja auch nur ein simples Piano werden, und keine Steinway-Konkurenz.


Is ja gut...*tätschel*

Ok, Frequenz? Welche ? Die Samplingrate? Oder ist da etwa in Tongenerator am Werk (Sinusform? Rechteck?)

Kannst du das Sampleformat einstellen.? Kannst du Dateien überhaupt abspielen ? wav? ogg? vox?

tut mir leid kaid, aber du fischtst im Moment im blauen. du must schon genau sagen mit was mann es zu tun hat. Nachdem was du schreibst weis ich nicht mal mehr ob ich es mit einem Audioformat zu tun habe oder einem Rauschgenerator.

Suche mal alle möglichen Daten zusammen und poste diese ,egal ob sie dir unwichtig erschienen oder nicht. Was bitte soll "länge des Tones heisen" gilt das für die Dauer, oder für die Sinusperiode oder oder?

cu Linux

big_muff

Alter Hase

Beiträge: 460

Wohnort: Schweiz

Beruf: Informatikstudent (4. Semester)

  • Private Nachricht senden

14

28.09.2004, 18:51

Ich glaube kaid will einfach nur ein kleines Piano schreiben, das mit einfachen Sinusschwingungen alle Töne die ein Piano auch hat generieren kann. Mit Tonfrequenz ist wahrschindlich die Anzahl Schwingungen pro Sekunde gemeint.

Im Buch von David steht, das der Kammerton a genau bei 440 Hz liegt. Das a eine Oktave höher ist doppelt so schnell und das a eine Oktave tiefer halb so schnell. Zwischen zwei Oktaven liegen glaub ich 12 Halbtöne (korrigiert mich wenn ich mich irre), also musst du bei einer Erhöhung um einen Halbton, die Frequenz mit dem Faktor 2^(1/12) multiplizieren um den Ton zu bekommen.
Nur Idioten halten Ordnung, ein Genie beherrscht das Chaos.[size=7]

[/size]HardFate - Ein Start, Ein Ziel, Viele Wege[size=7]

[/size]Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.

15

28.09.2004, 18:52

Musikdateien(wav, mp3) kann ich über ein externes Programm abspielen; wie ich sie in meinem eigene Programm abspiel, weiß ich net.
Zur Frequenz: Die Hz-Frequenz meines Tones.
Die Sampling-Frequenz is glaub 44.1 und kann sie meines Wissens nicht verändern.
Mit der Länge des Tones mein ich die Dauer des Tones.

Zitat von »"Linux"«

Rechteck?

Was meinst du damit?

16

28.09.2004, 18:56

@big_muff:
Du hast's erfasst. Wenigstens einer hier, der weiß, was ich will. :D

Anonymous

unregistriert

17

28.09.2004, 18:58

Rauschgeneratoren haben sozusagen als Grundgerüst jedes Tones 3 verschiedene Varianten.

Sinusform ~~~
Rechteckform
Dreieckform /|/|/|

Dadurch das mann diese Grundformen beeinflust in Länge und Geschwindigkeit konnte mann Töne generieren. (Typischer C64er Sound zb).

Ich werde mich mal umgooglen um rauszufinden mit welcher Art von Sounderzeugung du es da zu tun hast.

cu Linux

big_muff

Alter Hase

Beiträge: 460

Wohnort: Schweiz

Beruf: Informatikstudent (4. Semester)

  • Private Nachricht senden

18

28.09.2004, 18:59

Zitat von »"kaid"«

Zur Frequenz: Die Hz-Frequenz meines Tones.

:D Frequenzen werden immer in Herz angegeben (also auch die Samplingfrequenz)

Zitat von »"kaid"«

Zitat von »"Linux"«

Rechteck?

Was meinst du damit?


Eine andere Wellenform des Tons (eine weniger reine). In Davids Buch auf Seite 409 gibts Bilder dazu, die das ganze verdeutlichen.
EDIT: Linux war scheinbar schneller :D
Nur Idioten halten Ordnung, ein Genie beherrscht das Chaos.[size=7]

[/size]HardFate - Ein Start, Ein Ziel, Viele Wege[size=7]

[/size]Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.

Werbeanzeige