

C# - Práce se zvukem (Jak mám uložit do proměnné třeba 5. vzorek ze zvukového souboru?)
Mám zvukový soubor. Zvukový soubor obsahuje pípnutí o frekvenci 1000 Hz. Kdybych chtěl znázornit tenhle zvuk graficky, uviděl bych samé vlnění (sinusoidy). Když si podrobně rozebereme jednu vlnu (sinusoidu), tak zjistíme, že se skládá z mnoha vzorků. Já potřebuju nějak zjistit na jaké pozici jsou jednotlivé vzorky.
watch
Tady je to co chci v pseudokódu
SoundPlayer zvuk;
int db;
zvuk = new SoundPlayer(@"C:\1.wav");
db = zvuk.volumeAT(5000); // do proměnné db se uloží hlasitost vzorku z 5. sekundy ze souboru zvuk
zvuk.volumeAT(6000) = db; // do 6. sekundy souboru zvuk se uloží proměnná db
http://stackoverflow.com/questions/8754111/how-to- read-the-data-in-a-wav-file-to-an-array
byte[] data = File.ReadAllBytes(@"C:\1.wav");
A?
Tak ked to chces takto stylom hura, tak potom si potrebujes este nastudovat toto https://ccrma.stanford.edu/courses/422/projects/Wa veFormat/
aby si vedel kde mas tie tvoje vzorky a v jakom formate. Skonvertovat dva byty do jedneho signed wordu (MSB je ten druhy v poradi) snad zvladas.
Konečně už vim o co jde :D teď jen rozluštit ty čísla podle stránky a pujde to doufám :D
Tak jo už jsem se naučil číst a zapisovat do wav. Vytvořil jsem třeba náhodný zvuk. dík za radu :)
Uz som ten link daval
http://msdn.microsoft.com/en-us/library/ff827591.a spx
body 1 az 5 su o tom jak nacitat vzorky z wav do pola.
P.S. a ked chces tie hodnoty z pola pouzivat tak si najprv musis otestovat hodnoty channels a bitDepth ktore si si nacital v bode 4 z hlavicky, ptz wav moze byt mono aj stereo a aj 8bit alebo 16bit. A vzorkovacia frekvencia daneho wav je nacitana do premennej sampleRate (wav mozu mat roznu vzorkovaciu frekvenciu takze pri prehravani to nemozes ignorovat)