ActiveX version (amp3dj.ocx) 18.104.22.168 (June 11, 2008)
Multimedia engine version (AdjMmsEng.dll) 22.214.171.124 (June 18 , 2008)
Fixed builds can be downloaded using the same link, username and password received after purchasing the product: if you should have lost them or if they shouldn't work anymore, please, contact our Technical support.
VERY IMPORTANT: Before proceeding with the installation of updated versions, don't forget to close all of the running applications and to UNINSTALL the existing version: missing this step could prevent the new version to run correctly on your development PC.
Fixed Bugs (since version 3.0)
- When using more than on instance of the control, the SilencePositionAvailable event will report wrong values.
- Allocating several instances of the control on several forms that will be opened and closed could cause issues with the visual feedbacks.
- Changing visual feedback's settings during playback can cause a GPF
- Calling the CloseSound method immediately after a call to the RequestSoundExportToWav method can cause a GPF: in any case, note that calling the CloseSound method immediately after a call to the RequestSoundExportToWav method is not a correct behaviour and must be avoided.
- WAV ADPCM format files can cause a GPF during a ReadSoundInfo method's call
- Changing the width of Spectrum bands through the Spectrum.BandWidth property doesn't produce any visible effect.
- Starting a recording session, through the Active Sound Recorder control, can cause a discard of the loaded song from memory.
- If no sound is loaded inside a player, the RemoveTrigger method doesn't remove the given trigger.
- The manual BPM calculation, performed through a call to the RequestSoundBPM method, will cause a GPF on sounds loaded inside a memory buffer.
- If more than one instance of the control has been instanced, the Waveform analisys will fail for all of the instances different from the first one.
- The visual feedbacks suffer a momentary stop of their graphic rendering when one of the players completes playing the loaded sound.
- Setting the ScaleUnits, SoundsDirectory, ForwRewGranularityType and ForwRewGranularity properties from instances of the control different from the first one will have no effect
- If both Active DJ Studio and Active Sound Recorder are instanced on the same form the sound card's speakers enumeration could fail.
- If both Active DJ Studio and Active Sound Recorder are instanced on the same form, the enumeration of players available inside Active DJ Studio could return a wrong value
- Making a call to the PlaySoundRange method after disabling the automatic fader, through a call to the Fader.Exit method, could result in a GPF.
- Sounds playback is not always good on AC97 based sound cards.
- After a call to the Fader.Exit method, on a fader initialized in FADE_SINGLE mode, the SoundDone event is fired over and over again
- Loading a MP3 file from an Internet URL through the LoadInternetStream method can cause a GPF
- Trying to obtain the CDDB title of a CD's track containing data instead of audio can generate an exception
- Mixers related functions don't work under Windows Vista
- Sounds loaded through the LoadEncryptedSound method cannot be mixed.
- Memory leaks are generated when instancing the control inside a web page.
- The control doesn't register correctly on Windows 98 and Windows ME.
- Positioning through the SeekSound method is not performed correctly on AAC and MP4 sound files.
- Speakers assignment is not reliable on Windows Vista.
- CDDB information is not always correct.
- With some specific CD, whose author/title conbination exceeds 24 characters, it's not possible obtaining the CD cover from Amazon web service.
- Damaged AAC, MP4 and M4A files can crash the control.
- Equalizers don't work correctly.
- The mixer volume change on USB devices having one single channel (for example USB phones) is not managed correctly.
- Passing an invalid memory pointer to the LoadSoundFromMemory method can cause a GPF.
- The PlaySoundRange method fails if the ScaleUnits property is set to a value different from milliseconds.
- Speakers assignment is ignored by LoadInternetStream and CreateSoundFromPCMBuffer methods.
- Methods returning a string could end with spurious characters.
- An error could be raised when launching two different applications both of them using our control.
- When a playlist has been performed completely, and no loop has been set, the SoundDone event is raised over and over again.
- If more than one instance of the control has been created within the same application, the SetPlayerSpeaker, SwapSpeakersRearAndCenter and SwapPlayersSpeakers methods will work only with the first instance.
- The GetMp3Tag1Field method returns a string with spurious characters.
- If a LoadSound call fails, a memory leak is generated.
- The SetRewindOnEOF method doesn't work if no sound is loaded into the player.
- The LoadSoundSync method won't generate the SoundSyncLoaded event (with error code) if the file to load doesn't exist.
- During the execution of two playlists with automatic fading, the player reported by the SoundLoaded event will be always the first one.
- The RequestSoundExportToWav method doesn't work as expected
- Under Windows Vista mono files are not played if speakers management is disabled.
- Sound files of unknown format could crash the control during a loading session.
- The RequestSoundSilenceDetection method could generate fake values if no sound is loaded.
- The automatic fader could generate an OLE automation error.
- When loading a CD track, the waveform analysis and the silence detection could generate fake values.
- CD tracks cannot be loaded into a playlist.
- The call to LoadSoundFromRecordingSession could generate an exception.
- Support for looping a certain sound or portions of it.
- Smoothing on PlaySound call
- Detection of silent portions at the start and end of the sound
- Support for the following formats: AIFF, FLAC, AAC, MP4 (sound only), AC3, Wavpack, ALAC
- Support for multichannel songs in the following formats: WAV, AIFF, OGG e WMA
- Possibility to load songs encrypted using the CryptSound™ application
- Multi-speakers management (Stereo, Quadraphonic, 5.1 and 7.1)
- Waveform analysis and generation of sized bitmap views of the whole waveform or portions of it
- Export of a loaded sound in WAV format
- Support for Internet streams loading and playback
- EAX special effects
- Better integration with the Active Sound Recorder ActiveX control
- Support for retrieving CDDB information from FreeDb servers
- Support for retrieving CD cover pictures from Amazon Web Services
Fixed Bugs (since version 2.0)
- A GPF is generated on PCs missing a CD drive.
- The SeekSound method is not accurate.
- If the RewindSound method brings the new position to 0, the sound playback will stop.
- If the control is still buffering a CD track, loading a new CD track will cause a GPF.
- Some file in MP2 format is not performed completely when using the PlaySoundFromTo method.
- The SoundClosed event doesn't return the right player identifier.
- If two different processes load the control at the same time, an internal loading error is raised.
- The player balance is not maintained when a new song is loaded
- SeekSound and PlaySoundFromTo methods ignore the current value of the ScaleUnits property
- Adding a new item to a playlist will cause the playlist to reset the executing order
- The GetCdStatus method is not accurate
- The CdPlayerStatusChanged event is not generated correctly when using the hardware button of the CD
- MOD music is sometime not performed correctly
- On certain systems, the CD is reported as "Ready" also if no CD is actually inside the drive
- If no disk is inside the CD player at startup, loading a track at a later time will cause an "invalid file" error.
- The TriggerReached event is generated over and over when the playback reaches the trigger position.
- The FadingPointReached event is generated twice when dealing with single songs
- On some kind of MP3 file, the song duration is not much accurate, causing the song to be reported as 1 second longer.
- Closing a file will not release the allocated resources and will maintain the file locked.
- The GetFrequency method returns a negative value
- Changing Tempo or Playback rate will result in a wrong BPM detection.
- Some song file will not fire the SoundDone event or will stop after a couple of seconds
- The control doesn't work as expected when instantiated on a form different from the main one
- Sometime the container application freezes without generating any error message
- With certain sound card drivers, the number of available mixers is not enumerated correctly
- An exception is generated when setting an invalid output device through the InitPlayerEx and ChangeOutputDevice methods.
- Triggers created on an empty player (no sound loaded) are not managed correctly
- If the SetRewindOnEOF method has been called with parameter FALSE, the SoundDone event is fired over and over when the song reaches its end.
- Passing an invalid output device index to the InitDJSystem or SetPlayerOutputDevice methods will generate an automation error.
- The SeekSound method is not reliable after calling SetTempoPerc and SetRatePerc methods.
- The automatic fader will not maintain the last volume setting and will bring the song fading-in to the maximum volume.
- Calling SetTempoPerc or SetRatePerc methods with parameter 0 generates a 1% error on the song speed.
- Calling more than once the AddTrigger method (when the ScaleUnits property of the control is set to a value different from "percentage ") will result in a -33 error (ERR_TRIGGER_ALREADY_EXISTS).
- The nPlayer value of the control's events has an incoherent value when the container application creates more than one instance of the control.
- Changing the background color of the embedded VU-Meter and Spectrum is not effective
- After loading a song from memory, through the LoadSoundFromMemory method, you will not be able changing Tempo, Playback rate or Pitch.
- After loading a song from memory, through the LoadSoundFromMemory method, you will not be able to get the song's BPM.
- The automatic fader doesn't keep count of the latest volume settings and doesn't manage correctly the fade-in length.
- The automatic fader doesn't stop the song that has just completed the fade-out phase.
- Loading a new CD track while another CD track is already being loaded will cause a GPF
- The embedded automatic Fader doesn't keep count of the Fader.FadeInSeekPos property value.
- Using an oscilloscope larger than 512 pixels will cause a GPF
- The oscilloscope doesn't work correctly with 8 bits samples
- The GetCdIdentification method, used in conjunction with the CD_IDENTIF_TEXT parameter in order to get the CD-Text contained inside an Audio CD, will return only the first string.
- Requesting the BPM to a song playing the latest 30 seconds could cause a GPF
- Calls to the GetMp3CurrentFrame, SetEqualizerBand, SetEqualizerBandGain and RequestSoundBPM methods will not work correctly when called from instances of the control different from the first one.
- The value expressed in dB returned by the GetPlayerVolume method is wrong.
- The busy state of the CD player during a CD playback session is not managed correctly.
- Stopping the playback of a CD track can cause a GPF when the playback has just been started.
- Modifying the color settings of a visual feedback without a previous call to the InitDJSystem method or during the loading of a CD track can cause a GPF.
- The BPM for WMA files loaded from memory is not calculated.
- Calling the LoadSound method immediately followed by a call to the PlaySound method, while another song is very near to finish its current playback, can cause a premature stop of the new playback.
- Calling the LoadSound method on several different files without waiting for the SoundLoaded event, for example inside a loop, can cause a GPF.
- After calling the Fader.Exit method, a new Fader.Init call will fail returning an ERR_GENERIC error.
- A memory leak is generated when trying to load invalid or unsupported sound files.
- Trying to change the width of the spectrum bands will have no visible effect.
- Changing the Fader.FadeInDelayFromMixStart property will cause a wrong delay on the fade-in seek position.
- The use of the fader will cause small memory leaks
- The maximum value returned by the VUMeterValueChange has been reduced to 32767 (instead of the previous value of 32768) .
- In order to avoid locking of CD drives with old drivers, the automatic CD monitoring is now disabled by default: it can be enabled calling the EnableCdMonitor method.
- Reintroduced the LoadSoundFast method for MP3 files
- Added the possibility to disable the monitoring of the status of the available CD drives: this will enable other applications to access CD drives, with outdated device drivers, that don't allow multiple-access.
- Added support for DirectX Media Objects
- Added compatibility with Borland Delphi and Borland C++ Builder
- Added support for changing the DirectSound buffer length for a better control over output devices latency
Version 126.96.36.199 - Changed the product name
- Added the possibility of choosing and changing the output device during playback
- Added support for the following sound formats: WAV, OGG Vorbis, WMA (requires Windows Media components installed), MOD, MTM, S3M, XM, IT and MO3
- Added support for Audio CD operations and for Audio CD tracks playback
- Added support for Audio CD identification retrieval
- Added support for sound files stored in memory
- Added support for changing Tempo, Playback rate and Pitch of the loaded sound
- Added automatic BPM detection of the loaded sound
- Improved support for visual feedbacks through an "object oriented" approach
- Added Waveform visual feedback
- Added support for creating an automatic Fader
- Added support for triggers