My project is a media player. I'm using openAL buffer queuing for now for real time processing. One of the first things I added to the program, was a frequency analyzer. But the frequency analyzer gets data from the raw unprocessed track.
Since then, I've added real time processing, and now I would like to analyze post processing. But I am only processing 2048 samples at a time, and the raw track remains unprocessed. The analyzer I have now, uses an fft size of 16384 giving me the type of resolution I want.
So, what's the best way to go about allowing this kind of resolution under these circumstances? Or for example a delay effect, which relies on access to N previous samples?
I suppose, that I could replace the raw data with the processed data as I go along, but then if I change the position to an earlier time in the track, I'll be reprocessing it.
Or I suppose I have extra temporary blocks, of a larger size than the buffer size, which get reused like my circular buffers, giving me access to more samples, but which don't get queued. The problem is that there would still be a limit to the amount of extra, or previous processed samples I have access to.
Any thoughts?
advice regarding real time processing in my stand alone project
DSP, Plugin and Host development discussion.
Moderator: KVR Moderators (Main)
advice regarding real time processing in my stand alone project
2012-08-18T00:11:07+00:00
My project is a media player. I'm using openAL buffer queuing for now for real time processing. One of the first things I added to the program, was a frequency analyzer. But the frequency analyzer gets data from the raw unprocessed track.
Since then, I've added real time processing, and now I would like to analyze post processing. But I am only processing 2048 samples at a time, and the raw track remains unprocessed. The analyzer I have now, uses an fft size of 16384 giving me the type of resolution I want.
So, what's the best way to go about allowing this kind of resolution under these circumstances? Or for example a delay effect, which relies on access to N previous samples?
I suppose, that I could replace the raw data with the processed data as I go along, but then if I change the position to an earlier time in the track, I'll be reprocessing it.
Or I suppose I have extra temporary blocks, of a larger size than the buffer size, which get reused like my circular buffers, giving me access to more samples, but which don't get queued. The problem is that there would still be a limit to the amount of extra, or previous processed samples I have access to.
Any thoughts?
tl3
https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=264486
-
- KVRian
- 1002 posts since 1 Dec, 2004
- Contact:
Post Reply
2 posts
• Page 1 of 1
Return to “DSP and Plugin Development”
Jump to
- The Main Forums
- ↳ KVR Developer Challenge 2026
- ↳ KVR Studio Manager
- ↳ Getting Started (AKA What is the best...?)
- ↳ Instruments
- ↳ Effects
- ↳ Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.)
- ↳ Guitars
- ↳ Mobile Apps and Hardware
- ↳ Soundware
- ↳ Samplers, Sampling & Sample Libraries
- ↳ Hardware (Instruments and Effects)
- ↳ Modular Synthesis
- ↳ Sound Design
- ↳ Production Techniques
- ↳ Music Theory
- ↳ Computer Setup and System Configuration
- ↳ DSP and Plugin Development
- ↳ DIY: Build it and they will come
- ↳ Music Cafe
- ↳ Machine Learning and AI for Music Creation
- ↳ Sell & Buy (+Special Offers, Deals & Promos)
- ↳ KVR Experts
- ↳ Everything Else (Music related)
- ↳ Off Topic
- ↳ Off Topic Classics
- Official Company Forums
- ↳ 2getheraudio
- ↳ accSone
- ↳ Acon Digital
- ↳ AcousticsampleS
- ↳ AcousModules
- ↳ Agitated State
- ↳ AIR Music Technology
- ↳ AMG
- ↳ Ample Sound
- ↳ Antares Audio Technologies
- ↳ Apisonic Labs
- ↳ APU Software
- ↳ apulSoft
- ↳ AriesCode
- ↳ Arts Acoustic
- ↳ Arturia
- ↳ Audjoo
- ↳ AudioSpillage
- ↳ Audiority
- ↳ Best Service
- ↳ Big Tick
- ↳ Bitwig
- ↳ Controller Scripting
- ↳ Blue Cat Audio
- ↳ Cherry Audio
- ↳ CWITEC
- ↳ Embertone
- ↳ energyXT
- ↳ Eventide
- ↳ Expert Sleepers
- ↳ forward audio
- ↳ Future Audio Workshop
- ↳ FXpansion
- ↳ g200kg
- ↳ Harrison Mixbus
- ↳ HG Fortune
- ↳ Homegrown Sounds
- ↳ HoRNet Plugins
- ↳ Ilya Efimov Production
- ↳ Image Line
- ↳ Impact Soundworks
- ↳ Indiginus
- ↳ Insert Piz Here
- ↳ Ju-X
- ↳ Kirk Hunter Studios
- ↳ Kirnu
- ↳ Kong Audio
- ↳ Krotos
- ↳ Kuassa
- ↳ KV331 Audio
- ↳ LennarDigital
- ↳ Les Productions Zvon
- ↳ Liqube Audio
- ↳ Loomer
- ↳ LVC-Audio
- ↳ Maizesoft
- ↳ Manytone Music
- ↳ Media Overkill (MOK)
- ↳ MeldaProduction
- ↳ Mellowmuse
- ↳ MIDIMood
- ↳ moForte
- ↳ Mozaic Beats
- ↳ mucoder
- ↳ MusicDevelopments
- ↳ Tips & Tricks
- ↳ MusicLab
- ↳ MuTools
- ↳ New Sonic Arts
- ↳ NUSofting
- ↳ Oli Larkin Plugins
- ↳ Orange Tree Samples
- ↳ patchpool
- ↳ Photosounder
- ↳ PlugInGuru
- ↳ Polyverse Music
- ↳ Precisionsound
- ↳ Premier Sound Factory
- ↳ Psychic Modulation
- ↳ Realitone
- ↳ Resonance-Sound
- ↳ Reveal Sound
- ↳ Roger Linn Design
- ↳ rs-met
- ↳ S3A: Spatial Audio
- ↳ SaschArt
- ↳ Smart Electronix
- ↳ sonible
- ↳ SonicBirth
- ↳ Sonic Reality / eSoundz.com
- ↳ Soundiron
- ↳ SPC Plugins
- ↳ Sugar Bytes
- ↳ TAL Software
- ↳ Tokyo Dawn Labs
- ↳ Tracktion
- ↳ Tweakbench
- ↳ u-he
- ↳ u-he Linux support
- ↳ United Plugins
- ↳ VAZ Synths
- ↳ Virharmonic
- ↳ xoxos
- ↳ XSRDO - SynthCraft
- ↳ ZynAddSubFX
- Site Stuff
- ↳ Site Stuff
- Archived Forums
- ↳ AlgoMusic
- ↳ easytoolz
- ↳ Elevayta
- ↳ Hollow Sun
- ↳ LinPlug
- ↳ Muse Research and Development
- ↳ Shuriken
- ↳ SoHa Sound Design
- ↳ Soniccouture
- ↳ Topten Software
- ↳ Valhalla DSP
- ↳ CK Modules & VST
- ↳ Sennheiser AMBEO
- ↳ Muon Software
- ↳ Westgatesounds.net
- ↳ Squaredheads
- ↳ Sonigen
- ↳ CFA-Sound
- ↳ Back In Time Records
- ↳ Livelab.dk
- ↳ Skytopia
- ↳ audioD3CK
- ↳ Inspire Audio
- ↳ Krakli
- ↳ Drumdrops
- ↳ Futucraft
- ↳ OverTone DSP
- ↳ RaXnTraX
- ↳ solar3d-software
- ↳ Signaldust
- ↳ Soundemote
- ↳ ReleaseLab (Powered by Artist Expansion)
- ↳ Wolfgang Palm
- ↳ UJAM
- KVR Forum index
- All times are UTC
- Delete cookies
