WAV fájlba miként írhatok hangot a frekvencia megadásával?
Utánaolvasok, értem is hogy a WAV fejléce 44 byte, de hogyan tovább?
Free Pascal alatt futó megoldás érdekelne.
Amire gondolok, hogy mit kellene tudnia a programnak (csak ezt "egy WAV fájlba írva"):
Program hang;
uses crt;
begin
sound(1000);
delay(1000);
NoSound;
end.
Ha ezt a hangot egy WAV fájlba szeretném írni és nem a hangszórón hallani, mit kell tennem?
Tényleg ez lenne a legrövidebb, szóval hálás lennék ha valaki megírná (vagy megmutatná hogy kell), amennyiben nem hosszú és bonyolult.
UOS-t nézegettem éppen, de a példaprogramjai közt nem találtam meg ezt.
Nem tudom hogy simán (WAV formátum definiálásával a programban) megoldható -e.
Gyorsan összecsaptam egyet:
http://pastebin(pont)com/EWdWfyeG
bár nem épp egy teljes dolog, de működik, oktatási célra elegendő.
Nagyon köszönöm Mindenkinek a segítségét.
Kivéve azt, aki nyerészkedni próbált. :-)
Különösen a példakód volt hasznos.
Ne privát üzenetként!
"Nagyon szépen köszönöm a Wav fájl-os Pascal programot.
Az mennyire bonyolult, hogy például. ha ismert a Wav fájlban szereplő hangok amplitúdója és hasonlók, amelyeket ezel a programmal lehet állítani, hogy egy e programmal írt WAV fájlról a program meg tudná mondani beolvasás után, hogy milyen hangok vannak benne és azok hány HZ-n szólnak?
Ehhez bonyolult algoritmus kell, vagy egyszerűen megoldható? Sinus/Cosinus meg hasonló műveletek, Analog-Digital converter kell hozzá?"
A/D konverter már nem kell, hisz digitális formátumokkal dolgozunk.
Az algoritmus amit keresel az FFT (Fast Fourier Transform) - ennek érdemes utánanézni.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!