You are on page 1of 10

______________________________________________________________________ Hangfeldolgozs

Hangfeldolgozs
Az albbi alapfogalmak ismerete a mrs megrtse s elvgzse szempontjbl elengedhetetlen. Az ismertets rvid, lexikonszer. Errl a tmrl bvebben jelfeldolgozssal foglalkoz szakknyvek rnak. Id- s frekvenciatartomnnyal kapcsolatos fogalmak: -analg jel: idben vltoz feszltsg- (ram-) rtk. rtelmezsi tartomnya a pozitv idtengely, rtktartomnya folytonos - feszltsg (ram). Az rtktartomny ltalban elre ismert s korltos.
u t

-(frekvencia-) spektrum: egy (kr)frekvencia fggvny, az analg jel (idfggvny), frekvenciatartomnybeli megfeleljnek (transzformltjnak) abszolt rtke F(). Lsd Fourier transzformci. -spektrogram: ktvltozs (id s frekvencia) fggvny. Egy hosszabb idfggvnyt idtartomnyokra (szeletekre) bontunk gy, hogy kis egymsutni idfggvnyek sorozata adja ki az eredetit. Ezutn mindegyik kis idfggvnybl ksztnk egy frekvenciaspektrumot. A frekvenciaspektrumok egymsutnisga jelenti a spektrogramot. -Fourier transzformci: egy eljrs, amelynek segtsgvel az id- s frekvenciatartomnyok kztti tmenet elvgezhet. Ha egy T peridus analg jel transzformcija a cl, akkor Fourier Sorbafejtsrl (1) beszlnk. Ha analg jelnk aperidikus, akkor a Fourier Integrl (2) mdszert kell alkalmaznunk. Egy (analg jel digitalizlsbl ered) szmsor Fourier transzformcijra is van lehetsg, ekkor Diszkrt Fourier transzformcinak (3) nevezett mdszert (DFT) hasznlunk, mg ennek gyorstott algoritmusa a Gyors Fourier transzformci (4) (FFT). A transzformcik eredmnye egy (-tl fgg) komplex fggvny F(). Hangfeldolgoz programokban frekvenciaspektrum cmn, ltalban ennek a fggvnynek az abszolt rtkt brzoljk

(RE(F ( )))2 + (IM (F ( )))2 . A teljessghez hozztartozna a komplex fggvny fzisa is, azonban a

fl csekly mrtk fzisrzkenysge miatt, ezt a legtbb hangfeldolgoz eljrs elhanyagolja. (1) esetn csak 0 =2/T (alapfrekvencia) egsz szm tbbszrsei (felharmonikusok) = k0 esetn lehet az F fggvnynek rtke (vonalas spektrum!). Ezzel szemben (2) folytonos F()-t eredmnyez. Ha n elembl ll szmsort transzformlunk a (3) vagy (4) szerint ((4) esetn n csak 2 egsz szm hatvnya lehet), akkor eredmnyl 2n darab vals szmot kapunk. Az els n sorozat jelenti a transzformlt vals, mg a msodik n darab, a transzformlt kpzetes rszt. Az n-edik elemek (mindkt sorozatbl) ppen az fmv mintavteli frekvencihoz (lsd albb) tartoz frekvenciakomponenst kpviselik. Ebbl kvetkezik, hogy a frekvenciatengely felbontsa fmv/n. Pl.: 44.1kHz-el mintavtelezett hanganyagot 1024 mintnknt FFT-zek. A spektrum frekvencia felbontsa 44.1kHz/1024 43Hz. -szrk, szrs fogalma: egy frekvenciaspektrum mdost eljrs. Analg jelnk eredeti spektrumt szrk segtsgvel torztjuk. Bizonyos frekvenciakomponenseket (-tartomnyokat) kiemelnk (erstnk), mg msokat elnyomunk. A szrs clja a kellemesebb hanghats elrstl (szubjektv), az (objektv) mrsi eredmnyek zajbl val kihalszsig igen sokrt lehet. Szrzs eszkzl szintn tbb mdszer kzl vlogathatunk. Szrhetjk az analg jelet kzvetlenl analg szrk segtsgvel. Ezek lehetnek passzv, vagy aktv RLC szrk. Az L,C elemek -fgg tulajdonsgain alapulnak. Kzvetett mdon akkor szrnk, amikor az analg jelet elbb digitalizljuk (szmsorr alaktjuk - lsd albb!), majd ezen a szmsoron vgznk klnbz mveleteket gy, hogy a mdostott szmsorbl visszalaktott analg jel olyan legyen, mintha az eredetit szrtk volna kzvetlen mdszerekkel.

kinyomtatva:01.10.29

1/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs Analg-digitl konverzival kapcsolatos fogalmak: -mintavtelezs: sorn a folytonos idfggvnybl T idkznknt rtkeket, mintkat vesznk. Ezek tovbbra is analg rtkek, viszont fontos bemeneti jell szolglnak egy analg-digitl talaktnak. A mintavtelezst n. mintavev s tart ramkrk vgzik.
u t T

-mintavteli frekvencia (fmv): kifejezi, hogy msodpercenknt hny mintavtel trtnik. fmv=1/T. -mintavteli trvny: azt az idfggvnyt, amelynek frekvenciaspektrumban elfordul legmagasabb frekvencij komponens fmax rtk, legalbb fmv 2 fmax mintavteli frekvencival kell mintavteleznnk. Pl. a zenei CD-kre rgzteni kvnt legmagasabb frekvencij hang az emberi fl fels hallhatsgi hatrul elismert 20kHz tbb mint ktszeresvel (szabvnyban rgztett 44.1 kHz-el) mintavtelezik a rgztend hanganyagot. -analg-digitl konverzi: egy feszltsg rtket (elzleg mintavtelezett analg jel mintit) szmm alakt. Idignyes mvelet. Mivel a kvetkez minta berkezse eltt az aktulis minta konverzijval vgezni kell, a mintavtelezs sebessgnek fels korltjt tbbnyire az analg-digitl talakts ideje szabja meg. Vannak nagyon gyors, kzepes sebessg s egszen lass AD konverterek. A sebessgen (konverzis idn) tlmenen az AD talaktk msik fontos jellemzje a felbonts. Ez egy bitszmban kifejezett rtk (n), s azt mutatja meg, hogy az talakt ltal kezelhet bemeneti maximlis n feszltsgtartomnyt 2 diszkrt rtkre szabdalja szt. -digitl-analg konverzi: szmot feszltsgg alakt eszkz. A konverzi gyakorlatilag azonnali. Jellemz paramterei a bitszm, ill. a kimeneti feszltsgtartomny. Bitszm darab 0 bemenet esetn a kimeneten a feszltsgtartomny minimuma, mg bitszm darab 1-esre a feszltsgtartomny maximumt kapjuk a kimeneten.

Jelfeldolgozs
Egy mrs (ksrlet) eredmnyeknt kapott (nyers) analg jel a legtbb esetben tovbbi feldolgozst ignyel. A feldolgozs clja a jel (mrsi eredmnyek) megvltoztatsa gy, hogy a mrs szempontjbl hasznosnak tlt informcikat kiemeljk, a haszontalanokat (zavar informcikat) pedig minl inkbb cskkentsk. A feldolgozs trtnhet idtartomnyban pl. a jel amplitdjnak mdostsa ltal (lsd dinamika kompresszi a Cool Edit Pro program ismertetsnl), de vgezhetnk frekvenciatartomnybeli korrekcikat is pl. szrzs. Ms szempontbl vizsglva a feldolgozs trtnhet kzvetlen mdon az analg jelen vgezve, de trtnhet kzvetett mdon is, amikor az analg jelet (mintavev s tart, valamint AD talakt ramkrkkel) szmsorr alaktjk. Ezen a szmsoron elvgzik a szksges feldolgoz mveleteket, majd egy DA talakt segtsgvel ismt analg jell (feszltsgg) alaktjk. Aszerint, hogy a feldolgozs a mrssel egyidben, vagy ppen ellenkezleg, a mrsi eredmnyek rgztse utn trtnik (a feldolgozs idben ksik), megklnbztetnk online s offline feldolgozsokat. Els pillanatban gy tnik, hogy a kzvetlen (analg) feldolgozs mindig online, a kzvetett (digitlis) pedig offline. Ez a legtbb esetben gy is van, de elvben analg feldolgozs is trtnhet offline - pl. egy analg magnetofon ltal rgztett jel ksbbi feldolgozsa -, s a kzvetett (digitlis) feldolgozs is trtnhet online mdon, az egyre gyorsabb digitlis elektronikai eszkzk ltal. Napjainkban a jelfeldolgozs egyre inkbb kzvetett (digitlis) irnyba toldik. Ksznhet ez a digitlis elektronika s a szmtgpek rohamos fejldsnek, mikzben ruk folyamatosan cskken. A szmtgpek (ltalban a digitlis elektronikai ramkrk) sebessgnek rohamos nvekedtvel az online digitlis feldolgozs is teljesen htkznapi s megszokott. Elg, ha csak arra gondolunk, hogy egy b vtizeddel ezeltt egy zenei hangstdi ltestst s zemeltetst csak nagyobb lemezkiadk, rdi s tv stdik engedhettk meg maguknak. Manapsg azonban gyakorlatilag brki, sajt otthonban berendezhet ilyet, csak egy multimdis PC-re van szksge.
kinyomtatva:01.10.29

2/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs Ez a mrs a jelfeldolgozs egy specilis esetvel, a hangfeldolgozssal foglalkozik. Tgabb rtelemben vett hangfeldolgozsrl akkor beszlnk, amikor a feldolgozand analg jel amplitdja (n x 0.1V n x 1V) tartomnyba, frekvenciaspektruma pedig a hallhat (20 20kHz) tartomnyba esik.

Nhny sz a hangkrtykrl
Az IBM PC-ket eredetileg csak igen szerny hangkpzsi lehetsgekkel lttk el. Beptett hangszrja adott frekvencij s TTL szint ngyszgjelet tudott megszlaltatni. A PC-k kpessgeit azonban nagymrtkben nvelhetjk kiegszt krtyk beptsvel. Ennek eredmnyeknt jelentek meg a klnbz tpus hangkrtyk. Kezdetben pl. Adlib krtya esetn csak a hangkelts volt a cl. A krtyn digitlisan vezrelhet analg hangkelt ramkrk (genertorok) tallhatk. A hangkrtyk fejldsvel a Sound Blaster a hangdigitalizls s a hangmintk lejtszsa tern hozott jat. Kezdetben csak 8 bites hangfeldolgozsi alapfeladatok elltsra volt kpes, ksbb a Sound Bluster teljes csaldd fejldtt, aminek kvetkeztben lnyegben a hangkrtyk szabvnyv vlt. A csald jabb generciinak lehetsgei kzl a fontosabbak: -tovbbfejlesztett DSP (Digital Sound Processor) egysg, sztere/mono felvtel/lejtszs 8 ill. 16 bites mdban, -programozhat mintavteli frekvencia 4 - 45kHz-ig, -bvtett mixer chip az audioforrsok kevershez, -szoftverbl llthat hanger mindegyik bemenethez ill. a kimenethez, -magas s mly hangkiemelsi lehetsg, -automatikus v. fix ersts a mikrofonhoz, -dinamikus szrk a felvtelhez s a visszajtszshoz, -beptett sztere erst 4W/csatorna, -bvtett OPL-3 FM chip, amely sokgenertoros hangkeltsre alkalmas, -MIDI interfsz, -CDROM interfsz, -teljes kompatibilits az elz vltozatokkal.

Zene- s hangfile formtumok


A hangkrtyk fejldsnek tja meghatrozta azokat a trolsi mdokat (fileformtumokat), amelyek segtsgvel az ellltott hangot (zent) httrtrolkon rgzteni lehet. Mivel kezdetben a hangkrtyk genertoraik segtsgvel csak hangkeltsre voltak alkalmasak, ezrt olyan formtumok szlettek, amelyek szorosan alkalmazkodtak a hardver adta lehetsgekhez. A genertorok keltette zene rgztse nagyon egyszer s tmr feladat. Az ilyen informcikat tartalmaz fileokat zenefileoknak hvjk. Csak az egyes genertorok megszlalsnak paramtereit s idtartamt kell trolni. Pl: az SBI (Sound Bluster Instruments) fileokat az FM hanggenerlssal megszlal hangszerek paramterei alkotjk. A file mrete 51byte! Egy msik zenefile formtumot - a CMF-t (Creative Music File), a Creative Labs dolgozta ki, FM hangszerekkel lejtszott zene trolsra. A zenefilet hrom fontos rszre lehet bontani: fejlc (header block), hangszerek (instrument block) s zene (music block). A fejlc a file fontosabb adatait, a hangszerblokk a felhasznlt FM hangszerek lerst, a zeneblokk pedig a lejtszand zent ler MIDI esemnyeket tartalmazza. Tovbbi zenefileok: a MOD, amelyet Commodore Amiga gpekre fejlesztettek ki. Formtuma szorosan illeszkedik ezen gpek hardver lehetsgeihez. Klnsen a jtkok terletn terjedt el olyannyira, hogy sok PC-s jtk is ezt a formtumot hasznlja. A MIDI elektronikus hangszerek s a hozzjuk csatlakoztathat egyb eszkzk szabvnyv vlt. Eredetileg a MIDI csupn nhny sszer ajnls volt az elektronikus hangszerek kztti kommunikcihoz, amelyet a hangszergyrtk vagy hasznlnak vagy nem. Mivel azonban az egsz rendszer sszer s knnyen megvalsthat, egyre tbben alkalmaztk. Az utbbi vekben gyakorlatilag mindenki elfogadta, s ma mr nem ltezik olyan szintetiztor, amelynek ne lenne MIDI csatlakozja. A MIDI napjainkban sokkal tbbet jelent, mint egyszer kommunikcis szabvnyt. A MID fileok MIDI zeneteket (szekvencikat) trolnak. Egy MIDI zenet az esemny lersbl (MIDIevent), s bekvetkezsnek idejbl ll. Az elv hasonl, mint a kezdeti formtumok esetn, azzal a klnbsggel, hogy azok egyedi tpus hangkrtykhoz tartoztak, a MIDI viszont a szmtgpes zeneszerkesztk egysges formtumv vlt.
kinyomtatva:01.10.29

3/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs A hangmintk felvtelnek s lejtszsnak lehetsge maga utn vonta olyan fileformtumok megjelenst, amelyek a felvett mintk szmrtkeit troljk valamilyen formban. Az ilyen fileokat hangfileoknak hvjk. Lnyeges klnbsg a kt formtum fajta kztt az, hogy a digitlisan trolt hangmintkat tartalmaz fileok sokkal nagyobb terjedelmek, mint az FM chip "programozst" ler zenefileok. A VOC fileok rvid fejlccel kezddnek, majd klnll blokkokkal folytatdnak. A blokkok lehetnek: hangminta-, hangminta folytats-, res- s lezr blokk. A blokkok els byteja hatrozza meg a blokk tpust, majd a kvetkez hrom byte a blokk hosszt. A tovbbi adatokat blokkspecifikusan kell rtelmezni. A WAV fileokat a Microsoft definilta, tulajdonkppen a RIFF - mint ltalnos multimdis formtum specilis esete. A WAV fileok annyira elterjedtek (s egyszerek), hogy szerkezetk ismertetst az albbiakban megksreljk: Eltols:
00h 04h 08h 10h 14h 16h 18h 1Ch 20h 22h 24h 28h 2Ch

Mez:
"RIFF" rDataLength "WAVEfmt" wHeaderLength wFormat nCh fmv BytePerSec BytePerBlock BitPerCh "data" wDataLength wDataArray

Hossz:
4 byte 4 byte 8 byte 4 byte 2 byte 2 byte 4 byte 4 byte 2 byte 2 byte 4 byte 4 byte wDataLength byte

Jelents:
azonostja a Riff formtumot Riff adatok hossza ez a Riff egy Wave Wav fejlc hossza hullmtrolsi md = 1 tmrtetlen, csatornk szma = 1 mono, =2 sztere mintavteli frekvencia Hz-ben tviteli sebessg Byte/s-ban = fmv*BytePerBlock BytePerBlock csoportokban helyezkednek el a mintk az adattmbn bell =nCh*(BitPerCh / 8) 8 ill. 10h (8 v. 16 bites mintk) azonostja az adatblokk kezdett mintk adattmbjnek hossza mintk adattmbje, wDataLength hossz

Pldaknt egy wav file kezdete lthat az albbiakban. A file mrete: 882048 byte.

000D7578h = 882040 byte a Riff adathossz 00000010h = 16 byte wav fejlc hossza 0001h = 1, azaz tmrtetlen wav file 0002h = 2, azaz sztere 00005622h = 22050 Hz a mintavteli frekvencia 00015888h = 88200 byte/s tv.seb. (=22050*2*2) 0004h = 4 byte/blokk 0010h = 16 bit/minta 000D7554h = 882004 byte hossz adattmb kv. Ezutn kvetkeznek a bal ill. jobb csatornk 16 bites minti: L csatorna: F884h, F81Dh, F82Ah, F84Ch, F904h, F74Ch R csatorna: 0322h, 046Dh, 031Ah, 0580h, 0456h, 0039h Az eddigiekben ismertett hangfileok egy az egyben tartalmaztk a mintk rtkeit binris formban (termszetesen a megfelel fejlccel). Ha utna szmolunk, hogy egy 22050 Hz-el mintavtelezett, 16 bites mono csatorna percenknt 22050Hz*2Byte*60s = 2646000/(1024*1024)MByte = 2.52MByte adatot termel, felmerl a krds: nem kellene-e valamilyen tmrt eljrst alkalmazni. Az ltalnosan hasznlt filetmrt eljrsok (zip, arj, lha, rar) gyakorlatilag semmit sem tudnak tmrteni a hangfileokon. Ezrt specilis - a hangmintk sajtossgait figyelembe vev - tmrt algoritmusokat alkalmaznak. A
kinyomtatva:01.10.29

4/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs legegyszerbb ilyen eljrs abbl a meggondolsbl indul ki, hogy kt egymsutn kvetkez minta rtke nem klnbzhet radiklisan egymstl. A mintk nem fggetlen egyedi "esemnyek", hanem igen is "fggnek", hasonltanak szomszdaikhoz. Ezrt felesleges eltrolni minden egyes minta rtkt pldul 16 biten, elegend lehet a klnbsg trolsa, amely esetleg 4 biten is elfr. Mris 4:1-hez tmrtst vgeztnk. Ez egy nagyon primitv tmrt eljrs, napjainban sokkal bonyolultabb algoritmusokon nyugv tmrtk terjednek (a szerzi jogvdk nem kis "rmre"), ezek kzl legfontosabb az MP3-nak nevezett eljrs. Eredetileg mozgkpek tmrtsre dolgoztk ki az MPEG eljrst. Fejldsi llomsai MPEG Layer 1, ...2, majd MPEG Layer 3. Ez utbbit hvjk rviden mp3-nak, mely egy vesztesges tmrt eljrs. Lnyege: figyelembe veszi az emberi fl sajtossgait mind amplitd-, mind pedig frekvenciatartomnyban. Amplitd tekintetben a digitalizls nem egyenletes, csak a halkabb hangok esetn szksges a finomabb felbonts, a hangosabb mintkat durvbban is quantlhatjuk. Frekvencia tekintetben az emberi fl rzkenysge 1kHz krnykn a legnagyobb, a hallhat tartomny kt vgn sokkal gyengbb. Ezrt a rgzteni kvnt hanganyagot frekvenciasvokra osztjk s kln-kln rgztik. Azok a svok rdemelnek preczebb rgztst, amelyekre a fl is rzkenyebb. A tbbi svot elegend kisebb pontossggal (durvbb felbontssal) rgzteni.

Mrsi sszellts
Az sszellts lnyege egy PC szmtgp s a benne elhelyezett hangkrtya. A hangkrtya kt bemenettel s egy kimenettel rendelkezik. A kt bemenet egyike a Line IN, amelyre egy fggvnygenertor jele kapcsoldik, a msik Micr. nvre hallgat s egy mikrofon csatlakozik r. A kimenetet Out-nak hvjk s egy hangszrt hajt meg.
O.szkp Fgv.Gen.

Line IN Micr. Out

PC + hangkrtya

A bemenetek ill. a kimenet rzkenysge szoftveresen llthat. Ehhez kattintsunk ktszer a Win95 tlcjn tallhat hangszrikonon. Ekkor egy Play Controlnak nevezett ablak jelenik meg. Indtsuk el ugyanezt mg egy pldnyban. A kt pldny kzl az egyiket Option/Properties/Recording rdigombbal lltsuk t Record Controll. A Record Controlon vlaszthatjuk ki a kvnt bemenetet (ahonnan a felvtel kszl) (LineIn, Micr) s annak rzkenysgt.

A Play Control panel hasznlhat egyrszt a kimeneti hanger lltsra (bal oldali potmter), msrszt meghatrozhatjuk, hogy az egyes csatornk milyen sllyal vegyenek rszt a kimeneti jelben (mixer funkci, jobb oldali hrom potmter).
kinyomtatva:01.10.29

5/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs

Cool Edit Pro program ismertetse


A teljessg ignye nlkl, csak a mrs szempontjbl lnyeges funkcik kerlnek ismertetsre. A program kezeli a szmtgpben tallhat hangkrtyt, ennek segtsgvel hanganyagok felvtelre ill. lejtszsra kpes. A felvett anyagok fileba menthetk, hogy azokat egy ksbbi feldolgozs, szerkeszts vagy netn egy egyszer lejtszs cljbl ksbb ismt visszatlthessk. A program fontosabb feldolgoz funkcii: hanganyag visszafordtsa, amplitd torztsok, ksleltetsek (visszhang), klnbz tpus szrzsek, konvolci, frekvencia spektrum analzis, valamint idbeni gyorsabb/lassabb torztsok. A program elindtsa: Win95 bootolsa utn kattintsunk a Start /Programs/Hangfeld/Cool Edit Pro ikonra. Kilps a programbl File/Exit parancs. Korbban trolt hangfile betltse feldolgozs (szerkeszts) cljbl: File/Open parancs. j hanganyag rgztse eltt ltre kell hozni egy res filet (File/New parancs), melynek sorn meg kell adni a mintavteli frekvencit, a csatorna szmot mono/sztereo, ill. a digitalizls felbontst 8/16/32 bit. Hanganyag rgztse: magnknl megszokott gomb segtsgvel. A program bal als sarkban tallhat ez a gombcsoport, egrkurzort fljk helyezve srga sg tjkoztat funkcijukrl.

A program fablakban a betlttt vagy jonnan felvett hanganyag jelalakjt lthatjuk (View/Waveform view). Ez egy idtartomnybeli nzet, az egyes mintk rtkeit egyenes szakaszokkal kti ssze a program. A vzszintes tengelyen a mintk sorszma lthat View/Display Time Format/Samples, vagy a korbban megadott mintavteli frekvencia segtsgvel a program id rtkekk sklzza t a tengelyt View/Display Time Format/Decimal. A +, nagytk segtsgvel az idskla tetszleges mrtkben zoomolhat, egszen addig a mrtkig, hogy az egyes mintk jl elklnlve ltszanak. Ekkor a mintk egrrel megfoghatk s rtkk hzogatssal vltoztathat. Ktszeri egrkattintsra a minta rtkt dialgusablakban leolvashatjuk, vagy llthatjuk. A jobboldali fggleges tengelyen a mintk rtkei lthatk (pldul: egy eljeles 16 bites szm 32768 s +32767 kztt vehet fel rtket). Ezt a sklt is zoomolhatjuk a jobboldali + s nagytk segtsgvel.

kinyomtatva:01.10.29

6/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs A hanganyag spektrogramjt tanulmnyozhatjuk a fablakban, ha tkapcsolunk a View/Spectral View nzetre. Figyelem: a spektrogram egy ktvltozs fggvny, s nem tvesztend ssze a spektrummal, amely egyvltozs. A vzszintes tengely sklja tovbbra is mintaszm (vagy id), a fggleges frekvencia, mg a spektrogram rtkt a fablak adott pontjnak sznmlysge adja.

A betlttt vagy jonnan felvett hanganyag tetszleges tartomnya egr segtsgvel kijellhet. Az ezutn ismertetsre kerl feldolgoz funkcik erre a kijellt tartomnyra vonatkoznak. Transform/Invert Funkci, 1-el szorozza a kijellt mintk rtkeit. Transform/Reverse A kijellt tartomny mintit idben megfordtja. Transform/Amplitude/Amplify/Fade Idben linerisan (logaritmikusan) nvekv/cskken mdon lltja az amplitdt. Zeneszmok bevezet ill. zr rszeit szoktk ezzel a funkcival kezelni. Transform/Amplitude/Dynamics Processing/Graphic A hanganyag dinamikja llthat ezzel a mdszerrel, amely tulajdonkppen az amplitd-tvitel transzfer fggvnyt mdostja. Elrhetjk ezltal pl. hogy a kisebb amplitdj (halkabb) hangokat jobban erstsk, mint a hangosabbakat. Ezltal dinamika kompresszit rnk el. Az tviteltechnikban gyakran hasznlt mdszer, hogy az adoldalon dinamika kompresszit, mg a vevoldalon dinamika expanzit alkalmaznak gy, hogy a kt transzfer karakterisztika szorzata 1 legyen. Ezltal a jeltvitel torztsmentes, viszont az tviteli csatornban a halkabb hangok is magasabb amplitdval utaznak, ezltal sokkal rzketlenebbek a zajokkal szemben. Transform/Amplitude/Envelope Egy burkolgrbe karakterisztikt llthatunk be, amellyel a kijellt hanganyagot szorozza. Transform/Amplitude/Normalize A kijellt mintkat konstans rtkkel szorozza, ezenkvl alkalmas pl. DC szint kikszblsre (vagy netn hozzadsra), valamint sztere felvtel esetn azonos csatorna szintek belltsra. Transform/Amplitude/Pan Expand Csak sztere esetn mkdik ez a funkci, a balansz rtke idben llthat. Pl. mono vonatzakatolst msolunk egy res sztere file mindkt csatornjra, majd alkalmazzuk ezt a funkcit gy, hogy a vonat tmenjen egyik oldalrl a msikra. Transform/Delay Effects/Delay A kijellt hanganyagot adott idvel kslelteti, s meghatrozott slyfaktorral sszegzi az eredetivel. Kivlan alkalmas mestersges visszhangosts ellltsra. Transform/Delay Effects/Multitap Delay Sokszorosan sszetett visszhangeffektusok generlsra alkalmas. Transform/Filters/FFT Filter Grafikusan megadott frekvenciakarakterisztikval torztja a hanganyag spektrumt.
kinyomtatva:01.10.29

7/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs Transform/Filters/Scientific Filters Bessel, Butterworth s Csebisev tpus szrk kzl vlogathatunk. Mindhrom tpus lehet alul-, fell-, svtereszt ill. svzr. Megadhat a szrk als/fels vgfrekvenciinak rtke, ill. a digitlis szrk fokszma. Transform/Special/Convolution Elzleg kijellt hanganyag megadhat a konvolcis mveletnek, mint konvolvl impulzus. Ezutn kell kijellni a konvolvland hanganyagot s elvgezni magt a konvolcit. Analyze/Frequency Analysis A kijellt tartomny frekvenciaspektrumt szmolja. llthat az FFT mret, ezltal a frekvenciatengely felbontsa. Analyze/Statistics Pl. hisztogramot szmol az egyes amplitdk elfordulsi gyakorisgrl, de leolvashatjuk a min. ill. max. minta rtkt, a felvtel offsetjt (DC szintjt), valamint teljestmnyt. A fenti ismertetsbl kitnik, hogy br a CoolEdit Pro program igen sokrt, hasznos feldolgoz funkcikkal rendelkezik, hinyzik az a lehetsg, hogy a felhasznl pl. valamilyen matematikai fggvny szerint tetszleges hullmformt generljon. Ezt a hinyossgot ptolta a mrs szerzje egy sajt programmal, ennek neve: WaveGen.exe. A WaveGen program ismertetse Tetszleges hullmforma ellltsn (elsdleges ok, amirt kszlt) tl, a program alkalmas meglv hanganyag mintit valamilyen a felhasznl ltal definilt szably szerint mdostani. St, a kezdeti sikereken felbuzdulva jelenleg hanganyag felvtelre s lejtszsra is alkalmas a program. A felhasznl mindezen szablyokat egy Delphi-Pascal nyelven rt programocska (script) lefuttatsval rvnyestettheti. Ezek a scriptek helyben szerkeszthetk, fileba menthetk, ill. onnan visszatlthetk. A scriptek szerkesztst nagymrtkben megknnyti, ha az egr jobb gombjnak hatsra leboml helyi menbl vlasztunk utastst vagy eljrst (amelyet a szvegkurzor pozcijba illeszt be). A scriptek rsnak szablyai: Tulajdonkppen egy Pascal programocskrl van sz, amelynek Szerkezete: var helyi vltozk deklarlsa pl: var valt1:tip1; valt2,valt3:tip2;
begin begin end;

programtrzs
end;

Felhasznlhatk egyszer s sszetett vltoz tpusok (a teljessg ignye nlkl): - 8, 16, 32 bites egszek: byte, word, dword s ezek eljeles megfeleli: shortint, smallint, longint, - valsak: real, single, double, extended, - tmb (pl: array[0..9] of byte;), s - rekord (pl: record a:byte; b:word; c:single; end;) Mveleti jelek: +, -, *, /, mod, div, shr, shl, not, or, and, xor, :=, =, <>, <, >, <=, >= (pl: osztsnl / eredmnye vals, mg div- egsz, mod az osztsi maradkot adja. Not, or, and, xor mind egszekre, mind pedig logikai vltozkra alkalmazhat. Figyelem az = s := hasznlatt illeten. Az els logikai egyenlsg vizsglatot, mg az utbbi rtkadst jelent.) if log_felt then ezt_hajtja_vgre_ha_igaz; if log_felt then ezt_hajtja_vgre_ha_igaz else s_ezt_ha_hamis; Ha a then, ill. else utn tbb utastst kvnunk hasznlni azokat begin end; kz kell zrni. Figyelem az else eltt nem lehet ; ciklus-utastsok: for valt:=ert1 to (vagy downto) ert2 do begin
kinyomtatva:01.10.29

Utastsok: feltteles:

8/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs ciklusmag; // rendre lefut, mikzben valt ert1-tl ert2-ig egyesvel n (cskken) end; while log_felt do begin ciklusmag; // ismtldik: amg log_felt igaz end; repeat ciklusmag; // ismtldik: amg log_felt igazz nem vlik until log_felt; Klnsen az utols kettnl fokozottan figyeljnk a vgtelen ciklusok elkerlse rdekben! Elre definilt vltozk s eljrsok (ezek a vltozk s eljrsok deklarci nlkl szabadon felhasznlhatk)! pi = 3.141592654... fmv:dword, ch:byte, bpch:byte, Nmax:dword, csak olvashat vltozk. fmv a mintavteli frekvencia Hz-ben, ch =1 mono felvtel esetn, =2 szterenl, bpch =1 ha a mintk 8 bitesek, s =2 ha 16 bitesek. Nmax azt fejezi ki, hogy csatornnknt hny mintval van dolgunk. Mivel ezek csak olvashatk, rtkeik megvltoztatsra csak kzvetett mdon nylik lehetsg (NewWave, PasteFromClipboard s LoadFromFile eljrsok ltal). A vltozk rtkeit minden egyes futs utn lthatjuk a program sttus sorban. L[i], R[i] tmbkkel a bal ill. jobb csatorna mintinak rtke rhet el egyenknt. i 0 s Nmax-1 kztt vehet fel rtket. L[i], R[i] :byte (eljel nlkli) tpusak 8 bites, s :smallint (eljeles) 16 bites felvtel esetn. Mono felvtelnl csak az L[i] tmb hasznlatnak van rtelme. NewWave(mintaveteli_freki, csat_szam, byte_per_csat, hany_minta hosszu_legyen); eljrs egy j res hullmforma helyt foglalja le a memriban, mikzben felpt egy szabvnyos wav fejlcet, s rja az fmv, ch, bpch, Nmax vltozkat. Az eljrs ismtelt meghvsa fellrja az elzleg lefoglalt memriaterletet. CopyToClipboard; A memriban tallhat hullmforma tartalmt a Windows vglapjra helyezi, gy az ms wav formtumot kezelni tud programok szmra is elrhetv vlik. PasteFromClipboard; Ha a Windows vglapjn wav formtum adat szerepel (ellenkez esetben nem trtnik semmi), azt bemsolja a memria-beli hullmforma helyre. rja az fmv, ch, bpch, Nmax vltozkat. SaveToFile(file_nev); A memriban tallhat hullmforma tartalmt fileba rja. LoadFromFile(file_nev); Filebl tlti fel a memria-beli hullmforma helyt. Figyelem: a filenak valban wav filenak kell lenni. rja az fmv, ch, bpch, Nmax vltozkat. Play; A memriban tallhat hullmforma tartalmt elejtl vgig lejtsza. Id eltti lelltsa a Stop Playing menvel lehetsges. Rec; A memria-beli hullmforma helyt hangfelvtel tjn tlti fel. Ez az eljrs helyet nem foglal, ezt teht neknk kell megtennnk egy korbbi NewWave, PasteFromClipboard vagy LoadFromFile valamelyikvel. A felvtel addig tart, amg az elzleg lefoglalt hely be nem tltdik, vagy a Stop Recording menvel azt erszakosan meg nem szaktjuk. Tovbbi elre definilt fggvnyek: (funkcijuk annyira egyrtelm, hogy csak felsorols szintjn kzljk)
Round(x: Extended): Longint; Sqr(x: Extended): Extended; Extended; Ln(x: Real): Real; Exp(x: Real): Real; Sin(x: extended): extended; Tan(x: Extended): Extended; ArcSin(x: extended): extended; DegToRad(degrees: Extended): Extended; Sqrt(x: Extended): Extended; Power(base, exponent: Extended):

LogN(base, X: extended): Extended; Cos(x: Extended): Extended; Cotan(x: Extended): Extended; ArcCos(x: extended): extended; RadToDeg(radians: Extended): Extended;

Magyarz szvegek (comment-ek) elhelyezse a scriptben: // (kt slash) jeltl sorvgig tallhat szveget figyelmen kivl hagyja a fordt. Tbb sorra kiterjed magyarz szveget {} (kapcsoszrjelek) kztt kell elhelyeznnk.

kinyomtatva:01.10.29

9/10

szerz:Hevesi Lszl

______________________________________________________________________ Hangfeldolgozs Vgezetl lssunk egy plda scriptet:


var i :integer; a, b :smallint; t, m, fmod, fvivo :single; begin m:=0.8; fmod:=0.5; fvivo:=600; PasteFromClipboard; for i:=0 to Nmax-1 do begin t:=i/fmv; a:=L[i]; b:=R[i]; L[i]:=Round(a*(1+0.5*m*sin(2*pi*fmod*t))); R[i]:=Round((1+0.5*m*b)*sin(2*pi*fvivo*t)); end; Play; end;

A futtats eltt vglapra kell msolni a mdostand hanganyagot. Ezt a hanganyagot fogja a program a PasteFromClipboard paranccsal levenni s memriba msolni. Ekzben a hanganyagnak megfelelen belltja az fmv, ch, bpch, Nmax vltozkat. Ezutn egy for ciklus kvetkezik, ahol a fut vltoz 0-tl Nmax-1-ig vesz fel rtket (vagyis a teljes hanganyag mintit egyenknt elrhetv teszi a ciklusmagban). Az i vltozt 32 bites egszknt deklarltuk, hiszen Nmax is ilyen. Az a, b vltozkban ideiglenesen troljuk a bal ill. jobb csatorna aktulis mintinak rtkt. Mivel az L[i], R[i] rtkek smallint-ek, ezrt az a, b vltozknak is ilyeneknek kell lennik. t, m, fmod, fvivo vltozkat csak knyelmi ill. stilisztikai szempontbl deklarltuk, gy lnyegesen tlthatbb az L[i], R[i] fggvny. Mivel az i mintnknt fut vgig, s kt minta kzti idklnbsg 1/fmv t (= i / fmv) a fut id. A bal csatorna j rtkt gy kpezzk, hogy a rgi rtket (a) modulljuk fmod frekvencij szinuszos hullmmal, m modulcis mlysgben. A jobb csatorna esetn, magt a csatorna jelt (b) tekintjk modull jelnek, amely fvivo frekvencij szinuszos vivt modull. Emltst rdemel a Round fggvny, amely valsrl egszre konvertl. Erre azrt van szksg, mert a sin fggvny vals rtkkel tr vissza, L[i] pedig egszet kvn. Miutn az sszes mintt kezeltk (for ciklus end-je utn), a Play paranccsal lejtszuk mvnket. A programocska funkcijnak hasznossga vitathat, viszont maga a megolds j kiindulpont lehet a scriptek rsval most ismerked hallgatnak. A WaveGen knyvtrban mg tovbbi plda scriptek tallhatk.

kinyomtatva:01.10.29

10/10

szerz:Hevesi Lszl

You might also like