|
|||||||
| Home | Forums | Rules | Articles | Store | Gallery | Blogs | Register | Donations | FAQ | Calendar | Search | Today's Posts | Mark Forums Read | Search |
| Digital Line Level DACs, Digital Crossovers, Equalizers, etc. |
|
Please consider donating to help us continue to serve you.
Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving |
|
|
|
Thread Tools | Search this Thread |
|
|
#21 |
|
diyAudio Member
Join Date: Nov 2006
|
everything is trade-off, now my FIR engine only outputs to extended WAV File, but there are pros.
Pros: simple program development and separation, and machine separation, player free. Cons: Disc area, FIR Parameter changes = reconversion. 1TB is enough to keep hundreds of CD, and only some seconds per music, also I can do batch conversion. FIR engine is working on my main PC, with GTX280(noisy but crazy fast, and double precision possible - now studying CUDA 2.0 ), then WAV files are stored to NAS. Audio PC(fanless) reads & play, now I have USB-I2S mode(my own player) and HDMI(Windows Media Player). I'm thinking to buy fanless 8600GTS - and lower clocked - for Audio PC, to convert in real-time. DirectSound programming is required and it's quite confusing. But studying DirectSound is better than studying to make some "plug-in" for foobar, etc. so.. File: simple program, double precision, x4 area of disc, configurable. (my config is 2PC and NAS). Streaming: can be "Generic Crossover" device, single precision, difficult programming. |
|
|
|
|
#22 |
|
diyAudio Member
|
OK. Now I understand. You're converting all your files non-realtime. But earlier, before HDMI, you were running realtime conversion, right?
I think it is easier to have a look at the ALSA API or JACK API. You don't need Directsound in Linux. Did you have a look at the Brutefir ALSA/Jack output module. The code is available it's opensource. This might help.
__________________
::: Squeezebox Touch Toolbox 3.0 and more ::: by soundcheck |
|
|
|
|
#23 |
|
diyAudio Member
Join Date: Nov 2006
|
Core logic of FIR engine is just a repeating of
incoming Data Buffer (stereo WAV) copy to GPU, calculate outgoing Data Buffer (8 channel WAV) Please check my source. Wav file management, buffer setup has many codes but core logic should be < 100 lines. |
|
|
|
|
#24 | |
|
diyAudio Member
Join Date: Nov 2006
|
Quote:
ALSA or JACK - did you try 8 channel HDMI playback on them? (the wave file I made is for other people testing other environment) |
|
|
|
|
|
#25 | |
|
diyAudio Member
|
Quote:
__________________
::: Squeezebox Touch Toolbox 3.0 and more ::: by soundcheck |
|
|
|
|
|
#26 |
|
Banned
Join Date: Dec 2007
|
Koon, if you ditch your directsound idea and make "plugin" for foobar, it is using the VSTi protocol. It can run not only inside foobar but everywhere else, moreover on linux using WINE. The new vsti protocol supports 64bit read & write too.
|
|
|
|
|
#27 | |
|
diyAudio Member
Join Date: Nov 2006
|
Quote:
![]() and I looked MyEQ VST plugin source code. Too Huge! I can not understand ![]() also I'm sorry I don't like huge C++ source code which has many platform switching.
|
|
|
|
|
|
#28 |
|
diyAudio Member
Join Date: Nov 2006
|
http://www.portaudio.com/
PortAudio! I love this "C" style clean, simple library. will study this. |
|
|
|
|
#29 |
|
diyAudio Member
Join Date: Nov 2006
|
Studying PortAudio see http://www.portaudio.com/
I recommend PortAudio for all of DIYAudio programmer. PortAudio is open source, MIT-license portable cross-platform Audio API. For example, wave editor 'Audacity' is using PortAudio. PortAudio works with... Windows ASIO, MME, DirectSound Mac Core Audio Linux (Alsa/Jack/OSS) maybe 99.999% of audio platform ![]() Programming is really simple. (1) Intialize, Create, Open, Start Stream (2) write stream Loop, memcpy from main buffer to stream buffer (3) Stop, Close, terminate. That's all. unbelievable. Studying (a) build: Done. needs ASIO SDK, DirectX 9.0 SDK, Windows Platform SDK. (b) test: Done. sine wav generation (c) Play stereo wav file: Done. http://koonlab.com/MultiChannelI2S/WavXPlayer.cpp.txt I just changed this player's USB section to PortAudio, below 100 lines. (d) Play 8ch wav file: will try this weekend? (e) FIR Converter output to stream: next week? (f) input stream, FIR converter, output stream: next-next weekend? (so far, 44.1/16 CD player) |
|
|
|
|
#30 |
|
diyAudio Member
Join Date: Nov 2006
|
(d) Play 8ch wav file: Done, Please see bottom of
http://koonlab.com/MultiAmpForEveryo...DMI_AVAMP.html Now we have simple command line - LPCM 8CH Wave file player. There are a little platform dependance? but maybe easy to port to another platform. Thanks a LOOOOT to PortAudio. Next I will try to add output , then input streaming to my FIR Converter. Please wait for next weekend ![]() ================== BTW I can make "NO-GPU" version straight-through FIR channel Divider (stereo wav to 8ch wav). Anyone want it? it will take 30 minutes to convert 3 minutes music, but simple to compile and platform (maybe) free. |
|
|
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | Search this Thread |
|
|
|
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Creating 5.1 Multi Channel sound from 2 channel | jenkrich | Everything Else | 5 | 1st September 2009 08:29 AM |
| Multi purpose multi channel gainclone PCB: Team project - group buy | rick57 | Chip Amps | 14 | 29th March 2003 06:54 PM |
| multi-channel AMP? | JAZZ2250 | Solid State | 1 | 15th September 2002 10:10 AM |
| New To Site? | Need Help? |
| Page generated in 0.11144 seconds (88.01% PHP - 11.99% MySQL) with 11 queries |