DC-DSP Filter v1.00 : | ReadMe |
About |
DC-DSP Filter is a DirectShow Filter which is able to Process (Decoded) 8/16/24/32 Bit Integer PCM and 32 Bit IEEE Float Audio Data.
It works on every Win32 Platform (except NT) with DirectX 9 or above installed.
If you used the installer, then the Filter should already be registered in your System. When loading a File (Movie or Audio) in your MediaPlayer you should see "DC-DSP Filter" in the Filtergraphīs List. You can control the Filter through the Propertypage. To disable it run the "unregister.bat" file. To Enable it again run "register.bat". I know that Windows Media Player 9 removes the Filter while Rendering a File (silly WMP9 ...). To solve this just use another (better) Player like TCMP, BSPlayer or ZoomPlayer. I take no responsibility for any kind of damage caused by this Filter. Use it at your own risk! Latest Versions can be found on the CoreCodec Projectpage dcdspfilter.corecodec.org or on my Webpage dsp-worx.de |
Features |
:: A Dynamic Filter list that allows to use as much DSP Filters as needed. Also multiple Instances are possible. :: Can export Visualazation and PCM Data to any Application (see Sample Apps in the source\samples Directory). :: Supports up to 10 Channels. :: Most Filters can be configured to do seperate DSP on each Channel. :: Each combination of Filters can be saved into a Preset. :: Winamp2 DSP and Visual Plugin Support. :: Audiotrack delaying through Timestamps changing. :: Pre Amplification. :: Band Pass. :: Channel Reordering. :: Compressor. :: Down Mix. :: Dynamic Amplification. :: Echo/Delay. :: 10 Band Equalizer with Presets (Load/Save). :: Flanger. :: High Pass. :: Low Pass. :: Notch. :: Phase Invert. :: Phaser. :: Pitch Scale. :: Pitch Shift. :: Sound 3D (2 Channels only). :: Tempo. :: Treble Enhancer. :: True Bass. :: DMO Chorus. :: DMO Compressor. :: DMO Distortion. :: DMO Echo. :: DMO Flanger. :: DMO Gargle. :: DMO I3DL2 Reverb. :: DMO Param EQ. :: DMO Waves Reverb. |
Greetz |
:: Henri Gourvest - DSPack/DirectShow Delphi translation :: Don Cross - Fast Fourier Transform Code and explantation :: D.J. Bernstein - amazing fast FFT Code :: CoreCodec - for offering Webspace and a CVS Repostry :: Stephan M. Sprenger - C++ Pitch Scale Code :: Olli Parviainen - WA2 dsp Pacemaker Source. :: Dunnys, Blight, Cutmaster and everyone else at the Progdigy Forum for Code testing, Bug reporting and suggestions. |
Known Bugs/Issues |
:: Visualazation is unsync or stops working when Bufferize changes (happens when using Pitch/Tempo). :: itīs needed setup the FPU to Double Precision and disable FPU Exceptions when using dmoI3DL2Reverb. The Filter sets the mode automatically to double. In that case there can be incompatibility with other DirectShow Filters. :: DMO Filters are limited to 8/16 Bit PCM and 32 Bit Float Data with 1 or 2 Channels. |
Whatīs New |
Version 1.00 Beta4 :: fixed another Bug with dmoDistortion when retrieving Values. :: improved dspPitchScale Code. Uses now a Windowing Table instead of calculating it all the Time. :: included CPU measauring to the Visual Buffering in the DirectShow Filter. :: Added Stream Switching through IAMStreamSelect with support for different Mediatypes and OGG/Matroska Language Detection. (disabled as default) :: The DirectShow Filter can be limited to only one Instance per Graph. This is enabled as default and can be disabled on the Proprety Page. :: The DirectShow Filter wonīt connect to the MMSwitch Input Pin anymore. It sux to have a lot of instances of the filter. Right now, the Filter connects after the Switcher only. :: Fixed an Winamp Directory Issue on the Property Pages. :: fixed a Bug with DTS/AC3 bypass. :: replaced DoubleClick with SingleClick in the DSP Selection Property Page. :: Fixed a crash with Winamp Plugin when the Filter is created Threaded. Now Zoomplayer and Radlight shouldnīt crash anymore. :: Fixed a major Bug in the FFT Code that could cause distortion on some systems. :: Fixed some graphic glitches on the Property Page. :: The Equalizer allocates now only memory for needed Channels. :: Added CPU Usage Dialog to the DirectShow Filter. It shows the DSP,DMO and Winamp DSP CPU Usage. :: Improved the FFT Code for Athlon-XP CPUs (SSE capable CPUs). :: DirectShow filter has now a Dynamic Filter List which allows adding only (and as much as) Filters that are needed. :: DirectShow Filter supports now the DX9 DMO Audio Effects. :: replaced the Winamp Visual Timer in the DrectShow Filter with a Threaded Version. Caused RadLight4 (A6) to crash with the VCL TTimer. :: Added a new Treble Enhancer DSP Filter to the Component Pack. :: Filters and DSP Components uses now SSE/MMX Optimized MemMoves through MoveLibrary (C)FastCode Project :: Added Quality and FFTSize to the PitchScale Propertypage of th eDirectShow Filter. :: Updated the NSIS Installer Script. :: Fixed a Bug on the Phaser PropertyPAge which caused the Values to Reset. :: DirectShow Filter is now seperate from the DSPack Filter :: Removed "Disable optimized FFT" from DirectShow Filter, since itīs working stable on all CPUs. :: Filters are now TransInPlace again. This fixes some issues wth connecting 3rd party Filters. :: DirectShow Filter contains now only one Class with "MERIT_PREFERED +2" Merit. Normal Version has been removed. :: Equalizer has now a much better Quality and Bandwidth (2048 Point FFT) :: Every DSP Filter has itīs own Component :: Added DMO Wrappers and a bunch of new Filters to the Delphi Tab. :: Winamp2 Visual and DSP Plugins has their own component. :: Spectrum and Waveform Analyzer has their own component. :: DirectShow Filter uses now the DSP Component Classes. :: DSPack Filter doesnīt need any external Filter (binary) :: Filter allows SPDIF and DTS connection, but no DSP/Visual Buffering is done (added this for Dynamic reconnect with AC3Filter and SPDIF) :: added an INF Installer for the Binary (thx to BlackTrip) :: DirectShow Filter Spectrum on the EQ Prop.Page uses now the Spectrum Class. :: rewritten the Plugin API. Can be used within any Filter that exports a Callback for PCM Data (DSP Plugins) and implements the VisualInterface (VIS Plugins). :: Added Mediatype Compare on the Buffer Initialization to prevent unused Memory Allocations. :: No Delphi 5 Support anymore. (thereīs way too much Code that need to be converted) :: Added Audiostream delay through timestamp changing for DSPack and DirectShow Filter. :: removed Echo/Delay Filter from DirectShow Filter. (Uses too much memory and changing the Delay with Timestamps works better). :: Added AttackDB and Release Time to Dynamic Amplify. Thus itīs possible to set the Amplification more precise. :: Registry Settings for the DirectShow Filter are stored now in HKEY_CURRENT_USER Version 0.92 :: The Filter supports now 24 and 32 Bit integer. :: Buffer Overflow crash with large Buffersizes (like WaveParser) on the Tempo Filter has been fixed. :: Updated to DSPack 2.31 Classes. :: A couple of Bugs that flushed Filters when reading Filter settings has been Fixed. :: Bugfixed and updated the Sample Plugin API. :: improved again the Visual Buffering. Works now with Media Timestamps. :: The Pre Amplify Range has been extended. Now itīs possible to Set Maximum Range of the Trackbar. :: Added a new Phaser Filter. Version 0.91 :: The Quality of the PitchScale Filter is now a Bit better (just increased FFTSize to 4096), but thereīs still this phasing sound :/ :: The Pre Amplify, Equalizer, Phase Invert, True Bass, Low Pass and High Pass Filters has been extended to do the DSP seperate on each Channel. :: The TrayIcon has been removed, since itīs much more complicated now (because of the seperate DSP) to Control the Filter through the TrayIcon. Also WMP9 doesnīt seem to like it. :: DSP Memory is now aligned on a 16Byte boundary for faster performing with SSE Instructions. :: Bitmap Alpha Blend, which is used on the EQ Property Page is now MMX Optimized. :: 3D Sound has been SSE/3Dnow optimized. :: Added a Tempo Filter that allows faster playing without changing Pitch. This Filter causes unsync between Video and Audio ! :: Multiple Echos can now be disabled. This saves a lot of Memory. Version 0.9 :: Fixed a Bug which caused the Delay Filter to Flush when accessing the PropertyPage more then one times. :: Fixed a Bug on the Winamp Property Page which caused the config Dialog not to show when the PopertyPage has been closed and opened again. :: improved Dynamic Amplify (seems to do his job very well ...) :: A Bug in Pitch Shift has been fixed, which caused an Buffer Overflow when Pitch has been set to a Value < 10. :: The FFT has been built into the Filter, thus no extra dll is needed anymore. :: FFT is optimized for FPU, 3DNow, 3DNowExt and SSE capable CPUs. :: The Filter supports now 32Bit IEEE Float Data. :: Fixed some Autoloading Bugs. :: Added True Bass Filter. :: Added Pitch Scale Filter. :: implemented Winamp Visual Plugins. :: changed the Filter Order because of an Issue with Pitch Shift and Equalizer. :: Added multiple Echos. :: fixed some Visual issues. :: The Filter Order can now be changed. :: Registered the Project at CoreCodec. Can now be found at dcdspfilter.corecodec.org :: Bugfixes to LowPass/HighPass. :: BugFixes to the PopupMenu. :: BugFixes to the CPU detection. :: The Channel Order can now be changed. :: Fixed: PopupMenu canīt be closed. :: Filter and Samples can compile again under Delphi 5, but all the 3DNow and SSE Code wonīt be included in the binary. :: Fixed annoying "clicks" in Dynamic Amplification when reducing Amplification. :: The binary is packed with UPX to reduce the Filesize. On my Tests on Win98/2000 it worked very well. :: Fixed some issues with Winamp DSP Plugins. :: Fixed closing issue with Winamp Visual Plugins. :: Fixed crashes on close with WMP9. Version 0.8 :: New djbfft.dll compiled with Intel v7 Compiler with SSE/SSE2 optimizations (works much faster then the previous FFT). Also the msvcr70.dll is not needed anymore. :: Added Pitch Shift Filter :: Added PhaseInvert Filter :: Added experimental Dynamic Amplification (not really working yet) :: Added Echo/Delay Filter (only 1 Delay atm) :: Added LowPass/HighPass Filter :: Winamp DSP Plugins which changes the Buffersize (like Pitch) works now :: The Visualstuff has been completely rewritten. Less CPU usage. Should work with every Parser/Decoder. :: Added a component to the DSPack Tab of Delphi :: Added a couple of EQ Presets (you need to push the Reset Button on the Property Page if you have (had) an older version running to get this to work) :: The Popupmenu has been extended to control most of the Settings :: The Interface has also been totally rewritten and an Callback Intf. is added too. (To send PCM Data to any Application) Version 0.7 :: Vis is now in Sync with Audio :: Rewritten the Autoloading Stuff (uses now only one FilterClass) Version 0.6 :: added a C Compiled fft DLL which works much faster than the Delphi Code FFT. :: fixed "Not Freeing Filter when PropertyPage is called" :: fixed strange Filternames :: ReEnabled Vis on the Autoloading Version (switched back to old unsync Code,because doing Vis in sync with Audio needs some ReThinking and coding) Version 0.5b :: renamed the Filter to DC-DSP Filter :: deleted unused Stuff like LowPass,HighPass ... :: Equalizer is now fully working for 8 and 16Bits and any Number of Channels :: PreAmplify works also on 8 and 16Bit Samples and any Number of Channels :: Added Property Pages to Control the Filter :: Rewritten (again) the Interface :: Rewritten the Sample App to show only the Visualasations :: Added TrayIcon to control the Filter "on the Fly" (can be disabled from the PropertyPage) :: Added an Autoloading Version of the Filter (can also be disabled from the PropertyPage) :: Added configure Export to access the PropertyPage without loading the Filter (just run configure.bat/Filter needs to be registered) :: Added Nullsoft Installer Script (v2.0b0) Version 0.4 :: rewritten as DirectShow Filter (uses now InPlace Processing) Version 0.3 :: Added Winamp DSP Plugin Support :: Rewritten the Interface Version 0.2 :: Fixed Bug with Vorbis Decoder :: hopefully fixed larger Buffersize then MaxBufferSize on ProcessOutput Version 0.1 :: First Public Release. Written as DMO Filter. |
Contact |
:: eMail : dcoder@dsp-worx.de :: Web : http://dsp-worx.de |