PARAMÉTERES GÖRBÉK ALKALMAZÁSA VALÓSIDE- JŰ DIGITÁLIS HANGFELDOLGOZÁS SORÁN



Hasonló dokumentumok
FIR SZŰRŐK TELJESÍTMÉNYÉNEK JAVÍTÁSA C/C++-BAN

Az INTEL D-2920 analóg mikroprocesszor alkalmazása

AKUSZTIKAI ALAPOK. HANG. ELEKTROAKUSZ- TIKAI ÁTALAKITÓK.

A SZEMCSEALAK ALAPJÁN TÖRTÉNŐ SZÉTVÁLASZTÁS JELENTŐSÉGE FÉMTARTALMÚ HULLADÉKOK FELDOLGOZÁSA SORÁN

MŰSZAKI TUDOMÁNY AZ ÉSZAK-ALFÖLDI RÉGIÓBAN 2010

Képfeldolgozási módszerek a geoinformatikában

Vastagréteg hangfrekvenciás oszcillátorok

TECHNIKAI RENDSZEREK ÁLLAPOTLEÍRÁSÁNAK KÉRDÉSEI QUESTIONS REGARDING THE DESCRIPTION OF THE STATE OF TECHNICAL SYSTEMS

HIDEGEN HENGERELT ALUMÍNIUM SZALAG LENCSÉSSÉGÉNEK VIZSGÁLATA INVESTIGATION OF CROWN OF COLD ROLLED ALUMINIUM STRIP

NYOMÁSOS ÖNTÉS KÖZBEN ÉBREDŐ NYOMÁSVISZONYOK MÉRÉTECHNOLÓGIAI TERVEZÉSE DEVELOPMENT OF CAVITY PRESSURE MEASUREMENT FOR HIGH PRESURE DIE CASTING

Egyfázisú és háromfázisú nemlineáris áramkör vizsgálata

MECHANIZMUSOK KINEMATIKAI VIZSGÁLATA

A Margit híd pillérszobrának 3D-s digitális alakzatrekonstrukciója Nagy Zoltán 1 Túri Zoltán 2

LÉTRADIAGRAM FORDÍTÓK ELMÉLETE PLC VEZÉRLÉSEK SZÁMÁRA II.

BIZONYOS GRÁFELMÉLETI ALGORITMUSOK TANÍTÁSA ELEGÁNSAN KISS LÁSZLÓ

11. Orthogonal Frequency Division Multiplexing ( OFDM)

A MEGBÍZHATÓSÁGI ELEMZŐ MÓDSZEREK

Generátor harmadik harmonikus testzárlatvédelem funkcióblokk leírása

MŰSZAKI TUDOMÁNY AZ ÉSZAK-KELET MAGYARORSZÁGI RÉGIÓBAN 2012

Mintavételezés: Kvantálás:

Nyíri Attila. Ősi számrendszerünk 2 (jobbról-balra írással) használhatósága és a tizedesszám kialakítása

FIR és IIR szűrők tervezése digitális jelfeldolgozás területén

PRÓBAMÉRÉSEK TEREPI KÖRÜLMÉNYEK KÖZÖTT KÖNNYŰ EJTŐSÚLYOS DINAMIKUS TERHELŐTÁRCSÁVAL

NOD32 Antivirus 3.0. Felhasználói útmutató. Beépített összetevők: ESET NOD32 Antivirus ESET NOD32 Antispyware. we protect your digital worlds

(11) Lajstromszám: E (13) T2 EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA

A.15. Oldalirányban nem megtámasztott gerendák

HELYSZÍN: RAMADA RESORT AQUAWORLD BUDAPEST IDÔPONT: OKTÓBER 27. REGISZTRÁCIÓ: HUNGARY.NI.COM/NIDAYS

SZEMLÉLETES RÉSZINFORMÁCIÓK INTEGRÁCIÓS PROBLÉMÁINAK VIZSGÁLATA A VIRTUÁLIS VALÓSÁGOT TEREMTŐ SZIMULÁTOROK ALAPJÁN

GPS-mérések abszolút feldolgozását terhelô hibahatások vizsgálata

Kiegészítés a Párbeszédes Informatikai Rendszerek tantárgyhoz

A digitális földfelszíni mûsorszórás forráskódolási és csatornakódolási eljárásai

MV4 megfigyelővevő. Czigány Sándor, valószínűleg jóval több IC-ből fog állni, mint modern társai, és gyengébbek

Alacsonypályás műholdvétel megvalósítása szoftverrádiós eszközökkel. Dudás Levente

A mikrohullámú energiaabszorpció tanulmányozása mezőgazdasági magvak mikrohullámú és kombinált szárítása kapcsán

GÁZTURBINA-OPERÁTOROK TOVÁBBKÉPZÉSÉRE SZOLGÁLÓ SZIMULÁTOR FEJLESZTÉSE

- Biztosítani kell, hogy amikor a terméket bekötjük a hálózati kábel nincs szétlapítva és sérülésmentes.

Lemezgrafitos vasöntvények visszamaradó öntési feszültségének mérése és véges elemes szimulációja

Ismeretanyag Záróvizsgára való felkészüléshez

Telepítési utasítás ORU-30

Bevezető. Analóg rádióvevők általános felépítése

1: Idõ(tartam), frekvencia (gyakoriság) mérés

Bánsághi Anna 1 of 67

Szoftverprototípus készítése. Szoftverprototípus készítése. Szoftverprototípus készítése

AZ INFORMATIKAI RENDSZEREK BIZTONSÁGÁNAK EGY SAJÁTOS RÉSZTERÜLETE

REZGÉSVIZSGÁLAT GYAKORLATI ALKALMAZÁSI LEHETŐSÉGEI A MAGYAR HONVÉDSÉG REPÜLŐCSAPATAINÁL

2. Interpolációs görbetervezés

Használati útmutató. 1.0 verzió október

CorelCAD 2015 Megjelenítés

A fröccsöntési zsugorodás és a technológia összefüggése

Szelepmozgató AME 335

S5050. Felhasználói kézikönyv

Fénysugarak visszaverődésének tanulmányozása demonstrációs optikai készlet segítségével

Szelepmozgató motorok arányos vezérléshez AME 435

AutoN cr. Automatikus Kihajlási Hossz számítás AxisVM-ben. elméleti háttér és szemléltető példák február

Freekie vezérlő gépkönyv

Villamos jelek mintavételezése, feldolgozása. Mérésadatgyűjtés, jelfeldolgozás 9. előadás

YAMAHA EMX62M POWER-MIXER. Kezelési útmutató

PÉLDATÁR BEGYAKORLÓ FELADAT SÍKFESZÜLTSÉGI PÉLDA MEGOLDÁSA VÉGESELEM-MÓDSZERREL

NEUTRON-DETEKTOROK VIZSGÁLATA. Mérési útmutató BME NTI 1997

Iránymérés adaptív antennarendszerrel

Tárgyszavak: személyre szabás; egyediesítés; egyedi gyártás; sorozatgyártás; cserélhető alkatrészek; alvállalkozói modellek.

TA-SCOPE

Fotogrammetria és Térinformatika Tanszék, BME 2. Hidak és Szerkezetek Tanszék, BME 3. Piline Kft. lézerszkenneléses eljárás milyen módon támogathatja

HASZNÁLATI UTASÍTÁS. AC-610 digitális lakatfogó

AM 120 MKII. Ingyenes szállítás az egész országban! tel.: Felhasználási javaslat:

HITELESÍTÉSI ELŐÍRÁS HE

SIM-02 Univerzális kardiológiai szimulátor

NEURONHÁLÓS HANGTÖMÖRÍTÉS. Áfra Attila Tamás

HÍRADÁSTECHNIKA SZÖVETKEZET

A troposzférikus szcintilláció hatása a mûholdas távközlésre

MEZŐGAZDASÁGI HULLADÉKOT FELDOLGOZÓ PELLETÁLÓ ÜZEM LÉTESÍTÉSÉNEK FELTÉTELEI

Tartalomjegyzék és jellemzők

CNC technika. segédlet a CNC tantárgy oktatásához. Készítette: Paróczai János

GÉPJÁRMŰ SEBESSÉGMÉRŐ BERENDEZÉSEK

TDA-TAR ÉS O-TDA FOLYADÉKÁRAMOK ELEGYÍTHETŐSÉGÉNEK VIZSGÁLATA STUDY OF THE MIXABILITY OF TDA-TAR AND O-TDA LIQUID STREAMS

A HV-PCI6 VIDEODIGITALIZÁLÓ KÁRTYA ÉS ALKALMAZÁSAI (HV-PCI6 Video Digitizing Card and its Applications)

DT13xx Gyújtószikramentes NAMUR / kontaktus leválasztók

DT920 Fordulatszámmérő

Programozható logikai vezérlõk

I. BEVEZETÉS

Tárgyszavak: kompozit; önerősítés; polipropilén; műanyag-feldolgozás; mechanikai tulajdonságok.

Corel PHOTO-PAINT X5 Maszkolástól nyomtatásig

2011/1-2. PXI mintavevő egység.

Bevezetés A DriveRack jellemzői... 2 Biztonsági információk... 3 Szerviz információk... 3


4. Fejezet : Az egész számok (integer) ábrázolása

PLATTÍROZOTT ALUMÍNIUM LEMEZEK KÖTÉSI VISZONYAINAK TECHNOLÓGIAI VIZSGÁLATA TECHNOLOGICAL INVESTIGATION OF PLATED ALUMINIUM SHEETS BONDING PROPERTIES

Fontos biztonsági előírások

V-TONE GUITAR PACK 2

ACTA CAROLUS ROBERTUS

A FÓKUSZÁLT NAPENERGIA TÁROLÁSI ÉS HASZNOSÍTÁSI LEHETŐSÉGEI

Flatpack áramellátó rendszer család. Flatpack MPSU rendszer

MATLAB-FEM OPTIMALIZÁCIÓS KÖRNYEZET KIALAKÍTÁSA ÉS ALKALMAZÁSA ELEKTROMOS JÁRMŰMOTOROK FEJLESZTÉSÉRE

Épületek energetikai hatékonyságának növelése aktív hőszigeteléssel (ATI)

Diagram a serleges elevátorok póluspontjának meghatározásához

C55. ECL Comfort. Használati utasítás. beállítás. Felszerelés és. ECL Comfort C55. Használati utasítás. Felszerelés és beállítás *VI7CJ447* *087R8194*

MW1-RX-Fx vezeték nélküli mikrofonvevő


Felületszínek átvitele CRT monitorra és alkalmazása színtévesztés diagnosztizálására

Átírás:

Multidiszciplináris tudományok, 3. kötet. (2013) sz. pp. 251-258. PARAMÉTERES GÖRBÉK ALKALMAZÁSA VALÓSIDE- JŰ DIGITÁLIS HANGFELDOLGOZÁS SORÁN Lajos Sándor Mérnöktanár, Miskolci Egyetem,Ábrázoló geometriai tanszék 3515 Miskolc-Egyetemváros, e-mail: LajosS@abrg.uni-miskolc.hu Összefoglalás A cikkben bemutatatott módszer segítségével különféle paraméteres görbék alkalmazhatók a waveshaper effektekben transzfergörbeként. A módszer alkalmazására példaként bemutatunk egy VST modult, ahol egy interaktívan tervezhető Bézier-görbe szolgál transzfergörbeként. Kulcsszavak: Bézier-görbe, valósidejű hangfeldolgozás, waveshaper Abstract We provide the description of a method, by means of which various parametric curves can be used in waveshaper effects as a transfer curve. As an example we provide a VST plugin, where the transfer curve is an interactively designable Bézier curve. Keywords: Bézier curve, real-time audio processing, waveshaper 1. Bevezetés Napjaink digitális hangfeldolgozó programjai gyakran használnak waveshaper effekteket különféle nemlineáris működésű alkatrészek, eszközök modellezésére, mint például az elektroncsövek vagy a mágnesszalagok. Ezek az effektek olyan harmonikus frekvenciakomponenseket állítanak elő, melyek nincsenek jelen a bemeneti jelben [1]. 2. Explicit függvényekkel leírt transzfergörbék A waveshaper effektek a nemlineáris működés modellezéséhez leggyakrabban valamilyen szigmoid transzfergörbét alkalmaznak. Ez y f ( x ) (1) explicit alakban írható fel, ahol x az effekt bemenő jele, y pedig a kimenő jele. Az alkalma- x 1,1 esetén a folytonosnak és monotonnak kell lennie. zott görbét leíró függvénynek 2.1. Elektroncsövek modellezése A triódák működése egy aszimmetrikus görbével modellezhető [1]. Például [2], [3]:

Lajos, S. f x 3 12 1 1 0,032847 4 x, ha 1 x 0, 08905 1 x 0, 032847 0, 01 3 2 6,153x 3, 9375 x, ha 0, 08905 x 0, 320018 0, 630035, ha 0, 320018 x 1 Az aszimmetrikus transzfergörbe hatására mind a páros, mind a páratlan felharmonikusok megjelennek (1. ábra). (2) 1. ábra. A (2) transzfergörbe, és a felharmonikusok 1kHz-es szinusz jel esetén. A pentódák működése egy szimmetrikus görbével modellezhető [1]. Például [2], [3]: 2 f ( x) 2x x sign x, (3) ahol sign( x) 1 ha x 0, egyébként sign( x) 1. A szimmetrikus transzfergörbe hatására csak a páratlan felharmonikusok jelennek meg (2. ábra). 2. ábra. A (3) transzfergörbe, és a felharmonikusok 1kHz-es szinusz jel esetén. 252

Paraméteres görbék alkalmazása 2.2. Mágnesszalag szaturáció A mágnesszalag okozta szaturáció szintén egy szimmetrikus görbével modellezhető, például [4]: 2 f( x) 1. 5x 1 e Ez a görbe szintén a páratlan felharmonikusok megjelenését eredményezi, azonban a felharmonikusok intenzitása a frekvencia növekedésével más ütemben csökken, mint az elektroncsövek modellezéséhez használt görbék esetében (3. ábra). (4) 3. ábra. A (4) transzfergörbe, és a felharmonikusok 1kHz-es szinusz jel esetén. Az előzőekben tárgyalt, explicit módon leírt görbék használata megköti a felhasználók kezét. A különféle waveshaper effektekben a görbék módosítási lehetősége korlátozott (általában néhány előre definiált görbe közül választhatunk) vagy teljesen lehetetlen. 3. Paraméteres görbék Abban az esetben, ha az előzőekben tárgyaltak helyett paraméteresen írjuk le a görbéket, akkor koordinátafüggvények közvetlen megadadása helyett a görbét jellemző, azt egyértelműen meghatározó, személetes, a tervező számára könnyen kezelhető geometriai, vagy geometriai jelentéssel bíró adatokat adhatunk meg. Ezzel lehetővé válik a transzfergörbe interaktív tervezése. A paraméteres görbék nagy csoportja írható fel a ( ) n t ifi( t), g b, i0 t a b (5) alakban [6]. Ezen görbeosztályhoz tartozik a Bézier-görbe is. Bézier-görbék esetén az Fi () t függvények a Bernstein-polinomok. A b0, b1,, b n pontokat Bézier-pontoknak vagy kontrollpontoknak nevezzük. Tehát ha adottak a b0, b1,, b n pontok, akkor a Béziergörbe az alábbi alakban írható fel: 253

Lajos, S. ( ) n n t B ( t), i i0 Az i -edik n -edfokú Bernstein-polinom: b b 0,1 i t (6) és definíció szerint n n i ni Bi t t 1 t, i i 0,1,, n (7) 0 B0 ( t ) 1, n valamint i ( ) 0, B t ha i < 0, vagy i > n. (8) Azért választottuk a Bézier-görbét, mert (6), (7)-ből látható, hogy a görbe tervezése rendkívül egyszerű felhasználó inputot igényel, mindössze a kontrollpontokat kell megadni. A waveshaper effektben történő alkalmazáshoz azonban egy adott x értékhez tartozó y értékre van szükség. Azonban a paraméteres és az explicit leírási mód közötti áttérés általában nem lehetséges, tehát az említett feladat csak iterációval oldható meg. Első lépésként meg kell határoznunk az adott x értékhez tartozó paraméter értéket. Az adott x értékhez tartozó paraméter meghatározása után a megfelelő y érték a (6) felhasználásával számítható. Az iterációhoz a Newton-Raphson-módszert választottuk, mivel az nagyon gyorsan konvergál, ha az iteráció a kívánt gyökhöz elég közelről indul [5]. Az iterációt a t0 x paraméter értékről indítjuk. A következő paraméter értéket a b x( tn) x tn1 tn b x( tn) összefüggéssel kapjuk. Az iterációt addig folytatjuk, amíg a (9) b ( ) n x t x (10) nem teljesül, ahol egy megfelelően választott kicsi szám. A (9)-ben szükség van a Béziergörbe deriváltjára, ez 1 1 ( ) n n n b t n b i ( Bi 1 ( t) Bi ( t)) (11) i0 alakban írható fel [6]. Természetesen bármilyen módszert is választunk, az iteráció időigényes, közvetlenül semmiképpen nem használható valósidejű feldolgozásra. Ezért a kontrollpontok által meghatározott Bézier-görbén előre kiszámolunk egy adott számú pontot, és a mintánkénti feldolgozás során már csak ezen pontok között kell egy lineáris interpolációt elvégezni. 4. A Bézier Shaper VST modul Az előző fejezetben ismertetett módszer felhasználásával készült a Bézier Shaper VST modul. A VST, (Virtual Studio Technology) egy már-már szabvánnyá vált technológia, 254

Paraméteres görbék alkalmazása melyet a Steinberg, zenei szoftverekkel foglalkozó cég fejlesztett ki, és virtuális hangszerek, effektek létrehozására használható. Egy VST modul elkészítésére többféle lehetőség is kínálkozik. Használhatjuk a Steinberg cég által kiadott VST SDK-t, ahol c++ nyelven kell a kódot elkészíteni. Az így létrehozott VST modulok gyorsak és kis méretűek, lehetnek 32 vagy 64 bitesek. Azonban a felhasználói interfész kialakítása meglehetősen bonyolult. Választásunk ezért a FlowStone [7] programra esett. A FlowStone a grafikus és a szöveg alapú programozás kombinációját alkalmazza. Az alkalmazások funkcionális építőelemek ún. komponensek egymáshoz kapcsolásával programozhatók. A FlowStone-nal rendkívül egyszerű felhasználói interfészt létrehozni, azonban az így elkészített VST modulok lassabbak, nagyobb méretűek, és csak 32 bitesek lehetnek. A kifejlesztett VST modul grafikus interfésze és a paraméteres görbe adatainak számítását végző programrészek Ruby programnyelven, míg az hangfeldolgozás szempontjából kritikus lineáris interpoláció assembly-ben készült. 4. ábra. A Bézier Shaper VST modul felhasználói felülete. A felhasználói felület (4. ábra) rajzterületén a kontrolpontok segítségével definiálható a Bézier-görbe. Egy kontrolpontra a bal egérgombbal rákattintva és a gombot lenyomva tartva módosítható az adott kontrollpont pozíciója. A görbe monotinátásának fenntartása érdekében a kontrollpont pozíciója csak úgy módosítható, hogy teljesülnek a 255

Lajos, S. b x 0, x min b b b i1, x i, x i1, x b x nx, max (12) feltételek. A rajzterületen egy üres területre kattintva egy újabb kontrollpont szúrható be. A kontrollpontok maximális száma 10. Egy kontrollpontra a jobb egérgombbal kattintva a kontrollpont törölhető. A Drive gombbal a bemenő jel szintje szabályozható. Alacsonyabb szintű jel esetén a jelszint emelésével a jel a nemlineáris görberészre pozicionálható. Magasabb szintű jel esetén a jelszint csökkkentésével kiküszöbölhető a hallható torzízás. A Mix gomb az eredeti és a feldolgozott jel arányát szabályozza. A jobb alsó sarokban látható kijelző a létrehozott görbe által eredményezett felharmonikusok eloszlását és erősségét mutatja. A Bézier-görbe kontrollpontjainak megfelelő beállításával könnyedén közelíthetők a (2), (3) és (4) függvények által leírt görbék (5. ábra), (6. ábra) és (7. ábra). 5. ábra. Trióda modellezés 256

Paraméteres görbék alkalmazása 6. ábra. Pentóda modellezés 7. ábra. Mágnesszalag modellezés 257

Lajos, S. 5. Összefoglalás A cikkben ismertetett módszer alapján elkészült VST modul bizonyítja, hogy paraméteres görbék is használhatók a valósidejű hangfeldolgozásban. Mivel a transzfergörbe interaktív módon tervezhető, ugyan az a modul alkalmas különböző szimulációs feladatok ellátásra, valamint a felhasználó nagyobb befolyással bírhat a megjelenő felharmonikusok számára és intenzitására. Az (5) alapján természetesen más paraméteres görbék is alkalmazhatók. A továbbfejlesztési tervek között szerepel a Bézier-görbe B-szplájn-görbére cserélése, így a transzfergörbe egyenes szakaszokat is tartalmazhatna [6]. 6. Köszönetnyilvánítás A kutató munka a Miskolci Egyetem stratégiai kutatási területén működő Mechatronikai és Logisztikai Kiválósági Központ keretében valósult meg. 7. Irodalom [1] Zölzer, U.: DAFX-Digital Audio Effects, John Wiley & Sons, 2002. [2] Doidic, M., et al.: Tube modeling programmable digital guitar amplification system. U.S. Patent 5789689, Aug. 16 1998 [3] Pakarinen,J., Yeh, D.T.: A review of digital techniques for modeling vacuum-tube guitar amplifiers., Computer Music Journal, Summer 2009, 33(2), pp. 85-100. [4] http://tap-plugins.sourceforge.net/ladspa/sigmoid.html [5] http://hu.wikipedia.org/wiki/newton-módszer [6] Juhász, I: Görbék és felületek modellezése, http://193.6.8.43/segedlet/dokumentumok/gfm/gorbek_es_feluletek_modellezese. php [7] http://www.dsprobotics.com/flowstone.html 258