Friday, April 27, 2007
- Big source code reorganisation and cleanup:
* Bughunt and performance tuning with Intel Thread Checker and Intel VTune software.
* Some potential threading issues solved.
* Source code simplified: now a single DirectWave object class inherints the polymorphism of VST plugin, OLE Drag & Drop target.
- Small bugfix: disk recorded default path was set to ../disk_recorder/record instead record.wav (was missing extension).
- New remote device: Kontrol DJ. (Directly USB supported via official SDK).
- Nag demo sound periodicity set to 3 minutes.
- Remote controller output feedback thread and USB input polling devices are moved now to a dedicated controller thread. (yet another one).
- Rewritten and better integrated OLE Drag & Drop support, with some bug fixes on the way.
- Beatmarkers in the peakscope made more prominent.
- Deprecated support for Hercules DJ Console Mp3 Light output feedback, and for some good reasons:
* Made Deckadance to require DX8 in client (customer) machine.
* Made Deckadance source code require full huge DX8 SDK rand even WinSock2 libraries to be compiled, therefore: no crossplatform.
* Lights output caused total unit halt under certain circustances anyway after a while (unknown reason).
* Made Deckadance crash / or heap corrupt at DI8 enumerating in Fred's computer (and probably many others).
* All this crap was just to flash on or off the LIGHTING leds.
* It's not even for support control, wich still works via normal MIDI, and as native device.
* The unit is not supported/selling by Hercules anymore.
* It's outdated. Use Mk2, is way better and led lights are nicer and works nicely too.
* We'll keep it as native controller for nostalgy, it's just leds wont be supported.
* Made Fred and me lost an invaluable time of debugging =) to find it's an imposssible to solve bug.
Friday, March 30, 2007
- Full Vestax VCI-100 support.
- Added deck balance and master volume (VCI-100 specific).
- Added FIFO gui thread action queue list system for certain operations such as request deck loading or preview from MIDI commands and other cases.
- More robust deck audio import threading.
- Fixed bug when playing less than 1 beat sized samples.
- Added DC blockers filters.
- Peakscope now shows beatmarks.
- Exception handler around hercules mp3 dj console initialization. (fixes DX8 crashes on certain systems).
- Added 2 Midi Setup pages with row for more future generic MIDI control items.
- Added new VST Host gain generic midi controllers.
- Added new master volume generic midi controllers.
- New skin selector with thumbnail on setup.
- New remote controller device selector in setup. (moved from MIDI setup).
- New extended information web links for remote controllers and skin content.
- Skins renamed to dark.bmp and white.bmp.
- Implemented sampler prev/next arrow loaders.
- Audio processing block size and sample rate properly updated to hosted VST plugins (fixed in minihost too). *
- Updated with latest scott's inline help and offline (chm) files.
- VST plugins instances not closed properly at deckadance shutdown. **
- VST plugins editors properly closed when closing deckadance interface (fixed crashes with numerous VST plugins at exit). ***
*,**,***: This fixes issues in Sytrus, EQUO, and probably many other VST plugins.
Friday, March 9, 2007
- Version number drawn in 'about' box.
- New file-based help system. (check 'deckadance_inline_help.txt' file for more information).
- More GUI modificactions to the browser. (bigger path/parent buttons, etc).
Monday, March 5, 2007
- Rewritten setup config system, as native GUI.
- Setup config changes now doesnt need to be applied anymore, instant changes are taken.
- Beatmark information is now restored before decoding the file and not after.
- Holding "control" key when loading a track will force reanalysis.
- Added favourite folders in the browser.
- New looping selection system, 9 loop types: from 1/32 to 8/1 loop.
- New loop 'beat-sync' switch, when enabled, it will align loops to nearest beatmark positions.
- Slighty different beatmark drawing.
- Fixed minor slashdot (\\\\,/) inconsistency in browser path / folders.
- Several right-browser improvements.
- Made Vestax Skin more readable.
- Added F1 key help invoking.
- Deck Track, Slave and Sync buttons corrected placement and appareance.
- Middle display: scratch and drag&drop will only work in 'peakscope' mode and not the rest of the middle section pages.
- Clicking on 'Deckadance' logo about section will open deckadance website.
- Sampler pitch moved to up and down buttons.
- Deck monitor rout switch state is now stored as setup register.
- Enhanced accuracy of deck monitor vumeters.
- VST host: used "resvd2" instead "user" ptr to store vst editor parent window handle. [Fred].
- VST host: second SetWindowPos called against to update VST plugin editor size, this fixes some plugins showing wrong editor size. [Fred]
- Decks monitor rout and deck to monitor vumeter placed now in a single control box.
- Added new DMX bottom pages (further implementation).
- '.wav' extension in setup / disk recorded file path now is specified / supported.
- Added new help middle page tab.
- Added KontrolDJ native support.
- Added 'Force Beattrack Analysis' option, it will override beatmark files and will analyse tracks always.
- Some minor setup data bugfixes.
- Added tempo threshold switch.
- Added monitor PFL "overdrive" option, useful in certain situations where PFL monitor needs extra "coloured" boost.
- Minihost: 'File & General Settings' can be now accesed from options menu (only when hosting deckadance). [Scott].
- Lots of GUI enhancements and skin re-organisation.
- Projects converted to Intel Compiler solutions:
* From now and on, deckadance and minihost are compiled using intel latest ICC (9.1.037 at this point).
* Faster, parallelized code, multiple processor extensions supported (incl. SSE3 and CoreDuo), tested on iMac 17'' Intel Core Duo [1.8Ghz] taking 4-5% of CPU only.
* Tested on AMD x64 3800+, 4% CPU vs 7% wich took with MS compiler formerly. (nearly 200% performance boost).
Tuesday, December 19, 2006
- Several gui/skin changes.
- New lowpass/highpass multimode -24dB/octave moog filters for the sampler slots.
- New filters for the deck effects aswell w/smooth ramped cutoff transitions.
- Some speed optimizations in the effect section.
- New Vestax skin with VCI100 bolts / jog wheels draw when the skin filename is 'vestax' (.bmp).
- MIDI channel messages now have the channel masked (zeroed) when using any of the native supported devices (to avoid config MIDI channel clashes).
- MIDI sysex messages are now bypassed (when required).
- Added Allen & Heath Xone:3D native support.
- Vestax VCI-100 support. (not finished, need the unit).
- The step/position playback bar in the samplers are colour-coded by the selected deck colour. (skinnable).
- Bass band equalizer reset when disabling "bass-crossfader" mode.
- Fixed mic input to master output mixing problem.
- Now allows the vynil control button (play button when not in vinyl mode) to turn off vynil control.
- Deck pitch is reset to center after vinyl control is switched off.
- Bugfix: fixed problem wich caused common file dialogs not to appear.
- The learn timecode button in the vinyl control tab is more prominent now.
- Vinyl display turns (on the screen) when the vinyl/CDJ is turning as well regardless of the deck loaded/track playback position.
- Record learn timecode button in vinyl control made a bit more prominent.
- Minihost: added Deckadance.chm help file.
- Minihost: new interface.
- Minihost: added minimize/close button in deckadance (fullscreen) mode.
Friday, November 24, 2006
- Updated skin.
- Peakscope display not longer make any weird stretching or hiding when dragging/scratching it.
- Nag demo sound wont play if both decks are stopped.
Friday, November 17, 2006
- Added new monitor preview "mini-player":
* supports all deckadance formats and shares the same loading system (multithreaded).
* Double-click on any audio track on browser or playlist to listen.
* Full seeking support.
* Routed to monitor PFL.
* Floating window interface.
- New new deck "beat-sync" system.
- Right-clicking on play will align tracks with new "beat-sync" method.
- Added generic MIDI controls and BCD2000 native controls (back to top) for new deck "beat-sync".
- You can launch now audio & midi setup settings from deckadance setup dialog. This only will work with minihost 0.36.
- Added setup "update-downbeat" at playback launch option.
- Peakscope and Spectroscope now are mouse scratch pads. (useful when aligning beat/peaks manually).
- You can also drag & drop of tracks in Peakscope / Spectroscope from browser or playlist.
- And finally =) now you can also switch transport (play/pause) right clicking on central display aswell.
- Added new relooper options: mix mode, beat aligned mode, randomize, clear and swap.
- Added deck gain controls.
- No longer need to wait until a deck has finished loading to reload a new one.
- Added Generic Midi / BCD2000 for gain control.
- New placement (more symmetrical) for some deck status leds (scratch, loading / scan progress, etc).
- Flipped peakscope.
- Eq killers working -72 dB.
- Added slow decoder/analyzer threads mode (recommended for single core systems).
- Track beatmark log (beatmarks.log in deckadance installation directory).
- Fixed VST host not closing plugin's editor properly when on re-instancing.
- Fixed lame bug that caused all OGG Vorbis files to load mono.
- Demo sound wont sound at the startup of the program but 2 minutes later, and then periodicity is set to 3 minutes.
- Misc. bugfixes and improvements.
* Todo: implement 4 new master effects.
Monday, October 23, 2006
- New instant mono-8-bit microsampler (vinyl/ext page). Self-record and trigger decka output in the fly (max 12 seconds@44100).
- New vinyl control timecode speed 'calibration' learn. vinyl/ext page).
- Serato vinyl switch removed (useless since the timecode-speed-learn mode).
- New generic midi controls for the microsampler functionality.
- BCD2000 native microsampler control (wrapped on talkover and on-air buttons) w/led feedback.
- Changed BPM detector to slower adaption speed.
- Beat jump controls for Hercules Mk1 and Mk2. ( buttons).
- Beat jump controls now jumps the selected number of loop beats in remote devices.
- Fixed small graphical glitch with vinyl control enabled (in deck transport play button status display).
- Midi-in thru process for VST host slots.
- Added setup file header to avoid format clash in configuration upgrades.
Thursday, October 5, 2006
- Fixed a nasty denormal processing bug in the echo-bus section that caused a global performance slowdown (as echo is an -always running- send effect): *** critical update, specially for Intel cpu users ***.
- Corrected CPU usage performance measurement (QueryPerformanceCounter() used now instead rtdsc, wich is buggy on Athlons, multicore cpu's etc).
- More optimizations.
Friday, September 22, 2006
- Huge performance boost due to heavy optimizations in the audio rendering system.
- New pitchshifting / timestretching algorithm.
- Fixed deck-seek retriggering issue if moving mouse vertically.
- MP3 decoding performed now with MAD sources.
- robust, quicker, faster, harder, stronger mp3 decoding.
- loading system completelly revised:
* no more weird "seek rewind" bar while decoding files.
* no more weird peak-rebuilding after decoding files.
* deck decoder not longer blocks the other one deck's decoder worker thread. ACM required to wait until completion. In short words: you can load both tracks at once.
* optimized memory usage in mp3 decoding.
- proper WAV loading/support for decks.
- faster polling of exs xp-10 state, playlist automixer function and remote devices output feedback.
- spectroscope view deck b vumeters are now flipped down.
- fixed: drag & drop item hidden at the bottom.
- added deck "key-lock" mode (phase vocoder based). When engaged pitch and tempo of a deck can be indendently tweaked.
- added deck "key" shift control (in cents, -999 to +999).
- completed EKS-XP10 support for all controller buttons (looping, loop + leap, sync, relooper pads).
- vst plugins initialized correctly (resume() wasnt called).
- enhanced vst hosting window resizing support, fixed vst names, properly labeled window titlebar captions).
- corrected mouse wheel support for playlist anb browser.
- new tempo display.
- scratch cursor set when mouse hovering the vinyl turntables in the vinyl control tab.
- fixed problem display drag&drop item when dragging a directory from the right browser.
- setup: fixed crash when attempting to press "config" or "about" button in winamp plugins setup dialog.
- setup: "config" and "about" buttons in setup are disabled if no winamp plugins are found.
- new designed, enhanced filters:
- 4 stage biquad (-12dB per stage).
* lowpass / highpass / bandpass / notch : -48dB per octave.
* eq ctrl: from -36dB to +12dB (0.0dB middle).
* eq kill: -48 dB shelf.
* eq freq: (lo)100/(hi)1000/(hi)10000 hz.
- bcd2000: the deck that goes "ahead" in time respect to the other deck get flashed in the top "beat" leds.
- bcd2000: fixed problem with deck effect selector going out of bounds (was attempting to select an eighth unexistent one).
- bcd2000: support for monitor deck crossfader and monitor l/r split.
- enhanced wave graph displays, shading peak magnitude.
- minihost improvements enhancing support for IL juce pack vst's and other plugins aswell.
* (on vinyl / extended tab):
- added: monitor control pfl crossfader.
- added: monitor control pfl channel split switch.
- added: monitor control pfl level.
- added: crossfader curvature control.
- added: crossfader "reversed-mode" switch.
- added: crossfader alternate "linear-mode" switch.
- added: midi controls for all pfl/crossfader settings.
remarks: the minihost version is 0.34