Author |
Message |
Guest42
Joined: Feb 15, 2005 Posts: 9 Location: NJ, US
|
Posted: Sat Aug 06, 2005 9:23 pm Post subject:
Deep Down |
 |
|
Hey all. I've made a few posts a while ago, but I haven't been serious about wanting to write synthesis software until now. I'm wondering if anyone can point me in a good started direction for really low level IO C programming with the sound card? For some reason, I have an obsession with digging pretty deep into what's going on, and even if it's not the most practical route, I think I would enjoy it. I haven't really looked at CSound too much, but I'm not looking for totally prefabricated code. So any help getting started would be appreciated. |
|
Back to top
|
|
 |
diskonext

Joined: Aug 26, 2004 Posts: 306 Location: London, UK
|
Posted: Sun Aug 07, 2005 11:33 am Post subject:
|
 |
|
Well,
most soundcards will just accept PCM-encoded audiostreams. Using the OS-supplied API is your best bet for making any stuff you do compatible with others' computers, I guess.
There are some soundcards that have either some onboard synthesis and or freely usable DSP chips, but don't know which card you have.
There is a great resource on (primarily C-based) DSP programming... what is it called again. Might be http://www.dspguru.com but not sure.
I don't know your general level of DSP knowledge but applications like Max/MSP, pd, csound, Reaktor, and hardware like the Nord Modulars might be a good starting point to get into this stuff.
-diskonext _________________ :wq |
|
Back to top
|
|
 |
DrJustice

Joined: Sep 13, 2004 Posts: 2112 Location: Morokulien
Audio files: 4
|
Posted: Sun Aug 07, 2005 1:38 pm Post subject:
|
 |
|
Hi Guest42!
One problem with getting down to the metal on PC audio cards is that documentation on the hardware is generally not available. Big shame really. However, there is a small Soundblaster DIY community, and the linux world may well have an increasing amount of interesting sources in the form of audio card drivers.
Diskontext is right in that using the supplied drivers/APIs may be the best way to start off. If you really want to get low down, a DSP development board can be lots of fun - they can be made into your own standalone synths and FX, but normally they're programmed in assembler.
DJ
-- |
|
Back to top
|
|
 |
Guest42
Joined: Feb 15, 2005 Posts: 9 Location: NJ, US
|
Posted: Wed Aug 10, 2005 9:08 pm Post subject:
|
 |
|
The DSP site seems good for learning about code for the actual signal itself, which is good. But right now, I'm sort of just looking for how I can get the sound from my code to my speakers. There seems to be some waveOut() function that can be used in C/C++ to mess with sound, but I know little beyond that. Anyone know where I can find API documentation with waveOut() details? |
|
Back to top
|
|
 |
ian-s

Joined: Apr 01, 2004 Posts: 2672 Location: Auckland, New Zealand
Audio files: 42
G2 patch files: 626
|
Posted: Wed Aug 10, 2005 10:18 pm Post subject:
|
 |
|
If you are talking Windows & MSVC++, you will find the MMIO stuff in the SDK documentation, with samples. MMIO has the widest compatibility but needs a few, quite big buffers for smooth output. The newer DirectSound api might be a better place to start, this is covered in the DirectX sdk docs, still a free download I think.
God I hope they havn't done a DirectX.net
Have fun. |
|
Back to top
|
|
 |
|