Hab selbst ein YAMAHA PSR-320
Zwischen einem Synthesizer und einem Keyboard bestehen da noch unterschiede. Viele von den Soundkarten, die es heute gibt, haben keinen eigenen WAVE-Table, sondern laden vom Betriebssystem fertige WAVEs in den Soundspeicher.
Früher waren die Rechner einfach zu langsam, um auch noch den Sound zu verwalten, deshalb brauchte man Soundkarten mit Arbeitsspeicher.
MIDI und WAVE ist nicht das gleiche, da gebe ich dir Recht.
Aber am Ende, was der Rechner mit macht, das ist das gleiche.
Nur dass du bei MIDI 127 Standard-Instrumente vorgegeben hast und bei WAVE bzw. MOD-Dateien selbst bestimmen kannst, wie der einzelne Ton klingt.
Ein Syntherizer besitzt die Möglichkeit, dass man seinen WAVE-Table verändert. Ein Keyboard bleibt bei seinem festen WAVE-Table.
Ein WAVE-Table ist nichts weiter als ein großer Speicher, wo ein Sample von jedem Instrument liegt.
Und wieso ein YAMAHA oder ROLAND besser klingt als eine 20,- Euro Soundkarte ist einfach.
Die Qualität des WAVE-Tables bestimmt, wie gut der Klang ist.
Habe ich einen großen WAVE-Table und kann hochauflösender die Samples abspeichern, so ist die Klangwiedergabe reiner.
Stell dir vor, die eine Soundkarte hat nur Samples mit 11kHz Abtastrate und die andere mit 96kHz. Die eine nur 8Bit pro Takt und die andere 24 Bit. ...
Wieso haben die VTech-Lerncomputer früher immer so eine "Computerstimme" gehabt, ist genau der gleiche Grund. Weil Speicher teuer war und noch ist.
Schau dir mal das Programm an:
http://www.myriad-online.com/en/products/melody.htm
Bringt seinen eigenen WAVE-Table mit.
Je Speicherintensiver der WAVE-Table, desto klarer die Samples.
Code: Alles auswählen
;/ Folker Linstedt
;/ 2008-02-14
;/ FLMOD, Folker Module Abspieler. Wandelt Noten in Frequenzen für Töne um, eine Art Musikspieler
;{
; in Hz
; C 261.63
; #C 277.65
; D 293.67
; #D 311.65
; E 329.63
; F 349.23
; #F 370.615
; G 392.00
; #G 416.00
; A 440.00
; #A 466.94
; B 493.88 (B=H)
;
; Eine Oktave hoeher, alle Frequenzen verdoppeln.
; Eine Oktave tiefer, alle Frequenzen halbieren.
;
; Wave Generierer > GoldWave f(x) [Voll/Musikprg]
;}
Global Dim F.f(12)
F( 0)=261.63
F( 1)=277.65
F( 2)=293.67
F( 3)=311.65
F( 4)=329.63
F( 5)=349.23
F( 6)=370.615
F( 7)=392.00
F( 8)=416.00
F( 9)=440.00
F(10)=466.94
F(11)=493.88
;/ Instrument laden, Instrument spielt Ton C
Structure FLNote
octave.l ; Oktave
note.l ;
time.l ; Zeit bis Note endet
EndStructure
Global Dim FLNote.FLNote(5)
Procedure PlayMusic(S.s) ;/ Hier sollte dann irgendwie lustiges Zeug rein kommen ;-)
EndProcedure
PlayMusic("CCDEFGG")
If InitSound()
If LoadSound(0,"C:\F\Soundmix\Export\LowTom2.wav");LoadSound(0,"C:\F\Soundmix\Export\chiffpad.wav")
;/ Die Frequenz des Tons ist die Frequenz der Audiodatei geteilt durch die Frequenz von C * die Frequenz des eigentlichen Tons
;Oktave=1 ;/ 1 ist Standard C
For i=11 To 11
For Oktave=0 To 2
Freq.f=44100/(262/F(i)/(1/(Pow(2,1-Oktave)))) ;/ 4 ;/ Multiplikation funktioniert an dieser Stelle nicht
SoundFrequency(0, Freq)
PlaySound(0)
MessageRequester("Spiele Ton "+Str(Oktave),Str(i))
Next
Next
Else
MessageRequester("Fehler beim Laden","")
EndIf
Else
MessageRequester("Geht nicht","")
EndIf
Solltest oben ein gespeichertes "normales" C als WAVE haben.
Kannst du ganz einfach mit Sound-Club (Freeware) machen.