|
Тема |
Re: DSP програмиране [re: Mixy] |
|
Автор | Ц++ (Нерегистриран) | |
Публикувано | 04.09.06 12:18 |
|
|
ок, мерси за компонентите. и аз разбира се съм търсил, но е много по-различно ако можеш да си поприказваш с някого по въпроса на български и да споделиш опит с него. това ми беше целта, иначе сорсове и компоненти от които да се науча намирам, но липсата на човешка комуникация по въпроса е според мен сериозен фактор, който може да ускори много научаването и навлизането в конкретни неща.
Директната манипулация на wave буферите под Win32 е възможна само ако си пускаш музиката със собствен плеър. В смисъл, зареждаш буфер, обработваш го и го плейваш. Това е и най-чистия подход, но е доста трудоемък.
да директна манипулация правя. и аз си мислех че е трудоемък и кофти да се направи, но от един експеримент и опит и лека полека стигнах доста далече:
като цяло wave-table синтеза работи добре (с всичките познати опции). разчита и зарежда до момента SF2 (SoundFont), инструменти на различни тракери (FastTracker, ImpulseTracker, Composer 669), разбира се WAV и AU файлове. въобще звуци откъдето искаш намираш, зареждаш и използваш като инструменти (автоматично се ресемплират и транспонират в конкретния тон, с криви на затихване, volume envelope, panning, delay/attack/hold/decay/release/sustain и т.н. опции ... въобще както каза доста математика).
това, което последно му добавих е поддръжка на VST филтри (за разлика от DirectX филтрите, VST филтрите са в хиляди пъти в повече, благодарение на насочеността си). с поддръжката на VST вече му отворих архитектурата и функционалността до невъобразими размери (засега само VST ефекти/филтри, но скоро ще добавя и VST инструменти, само да финализирам track editor-а).
само че, това което осъзнавам е, че има нужда от compressor и limiter на всеки канал. и вместо да се мъчиш да закачаш по 2 VST филтъра (един компресор и един лимитер) ще е добре да са като опции вградени в самата програмка. по удобно е. затова ми трябва обаче да понавляза малко в тази насока и да попрочета.
|
| |
|
|
|