ActiveX version (amp3dj.ocx) 184.108.40.206 (February 23, 2011)
Multimedia engine version (AdjMmsEng.dll) 220.127.116.11 (May 24, 2011)
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 5.0)
- The PLAYLIST_FORMAT_PDJ format is not included in error inside the enumPlayListFormats enumeration.
- When equalizer settings, stored inside a XML file or inside presets, are loaded into a stream mixer, the EqualizerLoaded event could return a wrong value for the stream mixer unique identifier.
- The SetPitchFloat method doesn't work after a video clip has been loaded.
- If the component plays the sound coming from 2 recording channels (instanced by 2 different instances of the Active Sound Recorder control) through the PlaySoundFromRecorderEx method, the second recording channel will be reproduced with an unwanted gargle effect.
- If the SetRewindOnEOF method has been called with "false" parameter, the playback of a sound range started through the PlaySoundRange method will automatically rewind the playback position to the beginning of the sound when the final position of the range is reached.
- When loading an encrypted MP3 file from a PDJ playlist a GPF could occur.
- Removing triggers, cue points or volume automation points could cause a GPF if the player is in playback status.
- The equalizer doesn't work with stream mixers.
- When saving a playlist with the PlayListSaveAutomation method, the eventual decryption key for an encrypted item is not saved into the DecryptKey attribute.
- No analysis is performed on items of a PDJ playlist loaded with PLAYLIST_AUTOMATION_MODE.
- The Fader.Init method could cause a GPF when called without a previous call to the Fader.PlayListUseSingle method.
- In Windows Vista and Windows 7 there could be a discrepancy between the value set through the MixerSetMasterVolume method and the value returned by the MixerGetMasterVolume method.
- Adding to a playlist a song having 2 dots inside the file name, for example "myfile.new.mp3" may cause the application to hang.
- Under WIndows 7, if the control is instanced inside a VB6 form and VB6 is set to work in compatibility mode with Win XP, VB6 could hang when opening the form containing the control. It's in any case suggested to avoid setting VB6 in compatibility mode when using our control.
- When a trigger is reached and a fade-out (previously set through the SetSmoothingTimeLength method and started through the VideoPlayer.Stop method) is completed, the TriggerReached event for this same trigger could be fired more than once.,
- In WIndows 2000 the video stream of video clips may non be rendered.
- No notification is raised when tags for Internet streams in Ogg format are updated.
- UTF-8 characters available inside tags are not recognized correctly for Internet streams.
- When casting in WMA on a network port through the CastingWmaNetworkOpenForPlayer, the client reproduces garbled sound.
- After loading a video clip whose codec is not installed inside the system and after getting the expected error code, a new attempt to load a video file whose codec is installed inside the system wil result in a dead-lock situation.
- If a player has been instanced for working without a sound card and has been attached to a stream mixer that is not set to work with a sound card but only for opening a casting session, a call to the PlaySound method on the player will fail returning error code ERR_INVALID_DS_CARD.
- If a casting session is still active while the container application is being closed, a GPF could be raised.
- When using the video mixer, a GPF could be generated when seeking a just loaded video clip to 2 seconds from its end.
- Certain formats like IRCAM are loaded and played correctly but the reported format after a call to ReadSoundInfo could result in a wrong value.
- A memory leak is generated when loading a PDJ playlist containing encrypted items.
- GetPlaybackTime method is not supported correctly for video clips.
- If tempo or playback rate were changed on a previous video clip or before loading a video clip, the SoundDurationChange event is not immediately fired after loading a new video clip but only when playback is started.
- If Tempo and/or playback rate has been changed before loading a video clip, after loading the video clip the GetSoundDuration method will return the original sound duration instead of the modified sound duration as seen for audio files.
- The SetRatePerc method for video clips is enabled in error when the video clip has been loaded without using the VideoPlayer.LoadForTempoChange or the VideoPlayer.LoadSyncForTempoChange methods.
- When a PDJ playlist contains encrypted files and the embedded fader is set to work with one single playlist, the second player could report a wrong value for the nItemIndex parameter of the SoundLoaded event.
- When both ASIO and DirectSound devices are listed, after loading a song from the Active Sound Editor control through the LoadSoundFromEditingSession method, an eventual playback could fail without returning any error code.
- When a sound is played in loop, eventual triggers and cue points won't be enabled again when the playback position is rewinded.
- If the output of a stream mixer set to work in mono is sent to a ShoutCAST/IceCast server with the CastingCreateFromStreamMixer method having the nChannels parameter set to 1 (mono), the resulting stream will result to be at double speed on the client machine connected to the server.
- Changing volume points during playback could result in totally unexpected results.
- ForwardSound and RewindSound methods remain enabled in error when the automatic fader is active with a single playlist.
- When loading files stored in memory, there could be a leak of used disk space inside the system "Temp" directory.
- When a playlist contains video files, the execution of the second video could cause a dead-lock of the application.
- When loading an Internet stream there could be a GPF caused by an error while reading ICY tags.
- When using a version of Lame.exe from 3.98 and higher, shoutcast sessions could produce white noise on client machines connected to the shoutcast server.
- Multichannel sound files are not played correctly on ASIO devices.
- Text to speech doesn't work correctly.
- Volume automation sliding is not stopped after a call to StopSound.
- After calling methods that return a unique identifier, for example the VST.Load, CustomDsp.ExternalLoad or CustomDsp.InterrnalLoad, in case of failure the LastError property will not report the effective error code.
- Queued streams don't work as expected when the related player is attached to a stream mixer.
- When a video player is attached to a video mixer, the rendering window of the video preview and the rendering window of the video mixer won't notify about mouse or keyboard actions.
- PlaySound method doesn't report any error when called on a player using an ASIO output device that still needs to be started through the ASIO.DeviceStart method.
- A memory leak is generated after enabling sound normalization.
- Triggers and cue points are not automatically re-enabled after a playback has been completed and the playback position rewinded to 0.
- In presence of the Microsoft ISA firewall or of the latest Beta of Microsoft's "Windows Live Essentials", the initialization of the multimedia engine could be delayed of several seconds (between 20-50 seconds) or to be totally blocked, causing the container application to be blocked as well.
- When casting the output of a player directly, i.e. without using a stream mixer, a GPF could be generated during the connection to the server.
- When opening a 24 bits per sample WMA file, the reported number of bits per sample may be 16.
- A GDI resource leak is generated when creating one of the embedded visual feedback (Vu-Meter, Spectrum, Oscilloscope, Waveform).
- When the InitDriversType method has been called with parameter DRIVER_TYPE_BOTH_ASIO_FIRST and no ASIO device is installed inside the system, there could be issues in setting the proper output device.
- Silence detection suffers a regression after release of version 18.104.22.168 of AdjMmsEng.dll.
- After release of version 22.214.171.124 of AdjMmsEng.dll custom DSPs work correctly only if set for usage of samples in floating point quality.
- A vulnerability, due to a boundary error when processing *.pls playlist files, can be exploited to cause a stack-based buffer overflow by e.g. tricking a user into opening a specially crafted *.pls playlist file.
- If an Internet shoutcast stream doesn't have ICY tags, eventual metadata will not be detected.
- If an Internet playlist contains as first item a nested playlist, this nested playlist will fail to be executed.
- When video clips are played through ASIO, redirection to ASIO channels different from 0 and 1 will fail.
- After a reset ASIO devices are no more listed.
- Under Windows Vista and 7 playing a video clip loaded from a memory buffer doesn't work if the nMediaFormat parameter is different from MEMORY_MEDIA_FORMAT_UNKNOWN; as a further side effect, returned duration is always 0.
- Internet streams are not loaded correctly when ASIO drivers are enabled.
- A call to the GetWavChunkStringInfo method, having the nInfoField parameter set to WAV_CHUNK_CART_STR_TagText or WAV_CHUNK_BEXT_STR_CodHistory, will return a string truncated after 4 bytes.
- The GetWavChunkBinaryInfo method is not mapped correctly inside the type library.
- After a call to the Effects.CurveDesigner.SetPoints method, a call to the Effects.CurveDesigner.GetPoints method could return different values.
- If a volume automation procedure has been created without setting the first volume point at position 0, results may be unpredictable.
- Calling the ForceSpeakerAssigment method when only DirectSound drivers are initialized may result in a GPF.
- If multiple instances of the control have been allocated, after enabling CD status monitoring through the EnableCDMonitor method, not all of the instances may receive CD events notifications.
- A VST effect may fail to work if loaded and enabled while a song is already playing.
- The VideoMixer.PlayerAlphaGet method returns 0 or 100 only for the nAlpha parameter.
- If a form containing one of the MultiMedia Soft audio related components is closed, eventual DSP effects applied to players allocated on other existing forms may be disabled.
- The nSampleRate parameter of the ASIO.DeviceStart method works correctly only when set to 0: for any other value it always sets a fixed 44100 sample rate.
- A GPF may occurr when reading ID3V2.2 tag info for MP3 files having a genre code with less than 2 digits.
- When dealing with playlists containing encrypted sounds, the SoundLoaded event may pass to the nItemIndex parameter the value 0 instead of the real index of the item.
- A GPF may happen if the number of playlist items exceeds the limit of 32767 items.
- If a video clip fails to load because of an unsupported format, trying to load a new video clip of a supported format will in any case fail.
- When starting playback with the PlaySoudRange method, eventual triggers positioned before the playback start position will fire their event at the beginning of playback.
- When dealing with PDJ playlist files, the StartPosPerc and EndPosPerc attributes are not interpreted correctly when the sound duration is not specified through the DurationSec attribute.
Full product history available inside the online documentation.