|
APlayer version history:
3.0.0 released 16. November 1997 - alpha release, first version
for BeOS
3.0.1 released 18. January 1998
3.0.2 released 22. February 1998
3.1.0 released 6. July 1998
3.2.0 released 17. August 1998
3.3.0 released 6. January 1999
3.3.5 released 20. March 1999
3.4.0 released 12. July 1999
3.4.2 released 10. August 1999
3.5.0 released 8. November 1999
3.5.1 released 20. December 1999
3.5.2 released 16. February 2000
3.6.0 released 26. June 2000
3.6.1 released 4. November 2000
Version 3.0.1 Released 18. January 1998
- Fixed a lot of small and big bugs.
- Mixer routine fixed so it works with MixTest (thanks
Marco Nelissen)
- Added module information window
- Added new players: SoundTracker15, SoundTracker31,
NoiseTracker, ProTracker, StarTrekker with AM support, FastTracker,
TakeTracker and MultiTracker.
- Now remembers the window-positions and sizes.
- Changed the about window.
Version 3.0.2 Released 22. February 1998
- Added the Module List Editor add-on.
- Changed the menus a little bit and added online help.
- Fixed a bug in the mixer routine. It didn't move the
sample pointer when a sample was played with volume 0.
- Changed the mime-type strings in the players to correct
mime strings. Thanks goes to Rainer Ried for telling me.
- Fixed Had reversed the left and right channels in
the mixer (oops :)
- Fixed a lot of small and big bugs.
Version 3.1.0 Released 6. July 1998
- Added subsong interface.
- Added C64 player (Based on SidPlay by Michael Schwendt).
- Bug fixed in the ModTracker player. If loop start
was different from 0, it
says the sample is looping, even if loop length is 1 or lower.
- If the user press in the main window listview where there
isn't any items, it
unselects the current playing item. Fixed.
- The quit procedure rewritten a little bit. It didn't work
under Release 3 of
BeOS. Thanks to Peter Potrebic from Be for discovering the
bug.
- Didn't free the playing module when a new APML list was loaded.
- Some ProTracker modules do some funny tricks, like playing
a pattern
backwards. This result APlayer to skip the module and go on with
the next. Now
the player checks to see if the pattern is played backwards and
then it won't
jump to the next module.
- The config load and save functions are endianess aware, which
means you can
take a config file from PPC and use it on an INTEL machine and
vice versa.
- Changed the About window again :) This time the scroll
routine is totally
rewritten, added a nice logo and added some more information.
- Changed the application mime string to application/x-vnd.Polycode.APlayer.
Remember to remove the old mime string from the FileType preference
program, or
to make really sure, remove the file called:
/boot\home/config/settings/beos_mime/application/x-vnd.APlayer.
- The StarTrekker player doesn't require the .nt file anymore.
If the module
use AM voices and the .nt file isn't there, silence will appear
to your ear :)
- Changed the way APlayer launches the online-help.
Now it asks for the default
browser and start this instead of using NetPositive directly
+ it checks to see
if the document exists before it launches it.
- The behavour when you drag a module into the main window
has changed. Now it
frees the playing module and clears the list before it add the
dropped modules.
- When you save an APML file, the mimetype on the file will
be set to
"text/plain".
- Now APlayer remember which windows was open with last exit
and open the
windows again when started next time.
- Added add-on config interface.
Version 3.2.0 Released 17. August 1998
- Improved the SoundTracker15 and SoundTracker31 test
functions.
- The loader doesn't crash anymore when you try to load a file
which doesn't
exists.
- Converter interface added.
- Added the MikMod player + improved and fixed some
bugs in it :), eg. can it
play the Essential.s3m module right. Can now play:
669 - Improved a lot. It almost a new converter. The slide
effects works now. Some small effects is not supported yet.
Farandole - Almost totally rewritten the MikMod converter.
There
was a lot of bugs in it and added some extra effect support.
FastTracker II
ImpulseTracker
ScreamTracker 2.xx
ScreamTracker 3.xx
UltraTracker - Fixed some small bugs + fixed the sample offset
effect to handle 0x99 offsets. Only 95% supported.
- Now players can tell APlayer how many channels the module
use and how many
to reserve. This is used in ImpulseTracker because of the New
Note Action.
- New version of the SidPlay player.
- Changed the about window again a little bit. Now the
logo is placed in the
window to begin with and starts scrolling out.
Version 3.3.0 Released 6. January 1999
- Changed the NotePlayer interface so it uses a class
instead of a structure to tell APlayer what to play.
- Fixed a little bug in the SID settings slider DrawText()
function.
- Changed the whole add-on interface. Rewritten from
scratch. It's now more OO-like. Boy, this took a long time to
do. All the players are rewritten to use the new interface.
- Changed so all the windows are opened at the same
time when starting APlayer.
- Upgraded the ColumnListView from "Santa's gift
bag" to version 2.3.
- Added Dolby Surround support in the mixer.
- Added the new version of the MikMod player (3.1.2).
I have integrated the bug fixes and features from the new version
with mine and here are the results:
Loaders:
669 - It now plays with the current speed.
FAR - Improved a little bit.
IT - Support for packed samples + optimized a little bit.
S3M - with more than 16 channels (i.e not created with
Scream Tracker) caused
previous version to crash + it can recognice Imago Orpheus types.
ULT - Now shows the version of the tracker used.
XM - Modules with more than 256 samples caused systematic
crashs when trying to load them.
Added the AMF and DSM loader.
Player:
Imbricated loops won't block the player.
End of song marker is now recognized in S3M and IT when it appears
inside the pattern list.
Speed and Tempo can't escape their bounds (1-32 for speed, 32-255
for tempo) now.
Delay note effect did not work correctly in previous version.
All divide by zero conditions are prevented.
Fixed S3M volume slide.
Panning overflows fixed.
IT pitch envelope now works correctly.
IT effect G (porta to note) misbehaviour when changing instrument
on the same row, or after a note cut, fixed.
XM effect G (set global volume) was misinterpreted, resulting
in halved volumes doing playback.
A few glitches in the pattern break and pattern jump effect have
been fixed.
Version 3.3.5 Released 20. March 1999
- Using my new PolyKit library. That means some of my
classes are removed from the APlayerClasses library to the PolyKit
library.
- Bug fixed. Can now play modules directly from read-only
drives again, such as CD-ROM drives.
- Added the Future Composer 1.4 player.
- Added the ModuleConverter agent, which is able to
convert Future Composer 1.0-1.3 to Future Composer 1.4.
- Removed memory leaks in all the players when something
goes wrong while loading the module.
- Thread safed the SetPosition() in all the players.
- Updated the ColumnListView to version 2.6.
- Added a new position slider in the main window.
- Improved the mixer routine. Samples longer than 1
Mb were not played correctly. The mixer routine now uses 64 bit
integers to hold some intern calculations when needed. It still
uses 32 bit integers when mixing small samples.
- Bug fixed. Samples with ping-pong loops could make
APlayer to crash on some rare conditions.
- Updated the MikMod player to 3.1.5 and that includes:
Loaders:
AMF modules in formats 1.0, 1.2 and 1.3 couldn't be loaded.
S3M loader correctly identifies S3M modules created by
ImpulseTracker and Imago Orpheus.
STM loader rejected STM created by MOD2STM; the last pattern
was never played; also in some STM modules the samples were not
loaded correctly.
XM modules in format 1.02 couldn't be loaded.
Added the STX (STMIK 0.2), IMF (Imago Orpheus) and GDM
(General DigiMusic) loaders.
Added the UNI loader, for those who need to play the 'Acid
Tetris' or 'Axia' songs.
Player:
Envelope sustain loops in XM modules were not processed correctly.
Porta to note using the command memory used sometimes an incorrect
value when playing AMF, IT, S3M and ULT modules.
Volume slides for IT (Dxx) and XM (Axx) modules didn't continue
in the background.
Porta down effect in the volume column of IT modules was not
played correctly.
IT effect T (slide tempo) is now implemented.
Version 3.4.0 Released 12. July 1999
- A Volume bug has been removed from the MikMod
player.
- Fixed an IT loader bug in the MikMod converter. It
can now play the "Revenge of the Cats" module. Thanks
to David Terrell for reporting this.
- Cleaned up the Global data area and created the APModuleList
class.
- Now supports CL-Amp and SoundPlay playlists.
- When you save an APML (APlayer Module List), it will set
the mime-type to text/x-aplayer-list.
- Fixed some bugs in the ModTracker player. It can now
play modules which have backwards pattern correct. Thanks to
Cedric Degea for reporting this bug.
- Fixed another bug in the ModTracker player. Some Jogeir
Liljedahl modules sounded terrible out-of-tune. The reason to
this is that the player thought it was NoiseTracker modules and
then disabled finetune. The volume-bug Cedric Degea reported
to me is also fixed by this.
- Fixed a bug in the Future Composer 1.0-1.3 converter.
Some modules played out of tune.
- If a player changes one of the values displayed in the module
information window, the Module Info Agent will now check to see
if the update differs from the current data, otherwise it won't
update it. This will save some CPU cycles and flickering :)
- Improved the drawing code for the columns in the Module
Info agent.
- If the Players and/or Agents directory doesn't exists, APlayer
crashed when started.
- Improved the Module List Editor startup time and reduced
the amount of memory used when using the file panels. Now they
won't be allocated until they are needed and freed again when
the module list editor window is closed.
- Rewritten the loader routine. It should now be more
safe and shouldn't crash like the old one did in some rare cases.
- Made some changes in the player interface. If you
are programming a player, you need to change it a little bit.
See the APlayer Developer Kit for more information.
- The module information window will now show the filename
if the returned module name from the player is empty or only
have spaces.
- The surround panning flag didn't work in sample players.
- Added a new version of SidPlay so it now uses version
1.36.35.
- Added the settings window. Phew, that was a lot of work :)
- Optimized the module list editor listcode a lot on large
lists. Now it only takes a few seconds to load a list with 1600
modules. The clear list function isn't optimized yet, because
of a bug in BeOS that make APlayer crash (the MakeEmpty() on
BListView doesn't work right).
- Very long samples were truncated in the mixer.
- Added a beta version of the OctaMed player. A big
thanks to Cedric Degea for making this player.
- Added the MPG123 player, created by Claes Löfqvist.
A big thanks to him too.
- Updated the MikMod player to 3.1.7 and that includes:
Loaders:
Delay note effect was incorrectly converted to pattern jump,
and porta to note was incorrectly converted to tremor, for GDM
modules.
Dual effect Lxx in S3M and IT was misconverted to L00.
XM modules in format 1.03 couldn't be loaded.
Player:
Invalid notes using non-existent instruments caused the current
note to be retriggered instread of being ignored.
Porta to note effects did not restart the sample envelopes.
Note cut with non empty volume column on the same row resulted
in the note cut being ignored.
Disabling/enabling envelopes had no effect.
Pitch envelope was not played accurately (IT)
Set finetune effect (E5x) wasn't handled correctly for XM modules.
Fine slides (X1x, X2x) didn't play correctly for XM modules.
Version 3.4.2 Released 10. August 1999
- Fixed a lot of bugs in the MPEG player (previously
released in 3.4.1 patch)
- Fixed a bug in the OpenExtraFile() function. It didn't
use the directory when checking for prefixes.
- When playing a module, the music stopped when you change
the position. Bug introduced in 3.4.1 and is now fixed.
- When a genre code in a mpeg file is -1 (none), the MPEG player
crashed. Fixed.
- Added the AHX player. A big thanks to Bernhard Wodok
(Bartman of Abyss) for sending us the source to his player.
- Added the GetMixingFrequency() function in the APAddOnPlayer
class.
- Fixed a little bug in the MikMod S3M loader.
Version 3.5.0 Released 8. November 1999
- Fixed a small bug in the AHX player. SidVibes.ahx
now plays without any problems.
- Changed the player interface a little bit. Hertz is
now used instead of BPM, when a player reports the speed of a
module to APlayer. With this method, the speed can be defined
with a significantly better precision.
- If you loop an MP3 file, the music chopped everytime it looped.
Thanks to Arild Fischer for reporting this.
- Added the sample info window agent. You can now see
all the samples, play them on the keyboard and save your favorite
sounds.
- Added author finding system. Searches through the
sample/instrument names to find an author.
- Updated the column list view to version 2.85.
- Rewrote the internal interface to the mixers &
added support for virtual mixers in agents.
- When playing a MP3 file with a different frequency than the
mixing frequency, the file sounded choppy.
- Changed the void* pointers to const void* pointers
in the APChannel class.
- Fixed a bug in the window position save routines.
If you placed a window so it got a negative value in either x
or y, the next time APlayer started, it would try to open the
window using a very big value. Thanks to Cedric Degea for telling
me.
- If you paused an MP3 at position 99, APlayer took all the
CPU power it could get.
- Now APlayer only allocates the reverb buffers when needed.
This means, APlayer will allocate or free the memory on the fly.
- Upgraded the MikMod player and converter to 3.1.8.
IT global volume slide effect was played too fast.
IT effect S6x (pattern delay for x ticks) was misunderstood as
SEx (pattern delay for x rows).
Finetune effect was not handled correctly for some XM modules.
AMF effect 4 and variants leaked memory.
IT modules featuring patterns with less than 32 rows could not
be loaded.
Some samples and effects in modules converted by APlayer (.apun)
were not played correctly.
Linefeeds in the song message in IT modules weren't loaded correctly.
IMF effect XE (ignore envelope) implemented.
More 'slightly corrupted' XM modules can be loaded.
Version 3.5.1 Released 20. December 1999
- If you disabled the Sample Info agent while playing a module,
APlayer crashed. This is fixed now.
- If you played a MP3 with variable bit-rate and you manually
begin to play a SID, the "Init Addr" in the module
info window will show the last bit-rate from the MP3. Fixed
now.
- Changed, so it's only every 10th bit-rate change that
is updated in the module info window, when playing variable bit-rate
MP3s. This is done to save some CPU time.
- Changed the path requesters in the paths settings,
so the start in the parent directory instead of the current.
- Changed the "add file" path requester open
button in the module list editor to "add".
- APlayer can now load WinAmp list files + it can load all
list types with no path given in the lists.
- Updated the column list view to version 2.93 (from
Santa's Gift Bag).
- Improved the module list add functions in both the
main window and the module list editor (it's twice as fast now).
- If a player couldn't be initialized on the specific module,
the module will now be removed from the list and the next module
will be loaded.
- Added the LockListWithTimeout() to the APModuleList
class.
- Added the "Remember module list when exit"
option in the settings window.
- Removed a deadlock when the user selects a module
in the modulelist and keep the mouse button down. If the current
playing module then ends, a deadlock occure. Thanks to Cedric
Degea for reporting this.
- Added the TFMX player.
- Boosted the finally volume in the mixer.
- Improved the speed when stopping and changing position
in a sample player like the Mpeg player.
- Added the Sample player + added a loader to the AudioIFF
converter.
Version 3.5.2 Released 16. February 2000
- If you opened the settings window, pressed the cancel button
and then opened the SID settings window via the menu, APlayer
said that the window couldn't be initialized. The reason is that
the main settings window removed some backup keys from APlayers
registry that shouldn't be removed. Fixed now.
- From 3.5.1, you couldn't play the samples on the keyboard
when the module was paused. Fixed now.
- Added SoundFX 2.0 player and added the SoundFX 1.3
converter in the ModuleConverter agent.
- If you selected one of the players or agents in the settings
window with the mouse, you couldn't move the selection bar with
the cursor keys. Fixed now.
- The sample info window ignored the save format changes you
made. It just saved in the same format all the time.
- Improved the converter interface.
- Added the RIFF-WAVE converter, so you can now save
samples in .wav format + play .wav files.
- Agents can now plug-in with priorities, by using the GetPluginPriority()
function in APAddOnAgent.
- Renamed all the AfterLoadingBeforeCheck constants
and functions to just BeforeCheck, because the players load the
module by themself (old change), so the AfterLoading part is
misleading.
- Fixed a deadlock that sometimes could occur when using
the "Remember module list" option. APlayer deadlocked
when you started it. It begins to play the module, but no windows
appears.
- APlayer will now first delete the remembered module list
file when APlayer exits instead of when starting.
- Added the Unreal converter in the Module Converter
agent, so APlayer can play the modules from the PC game Unreal
(umx files).
- Fix in the MikMod player, so modules that jump back
and forward all the time, don't ends the module suddenly. Hopefully
this method works :) Unreal uses it alot!
- Fixed a bug in the mixer. Now APlayer can play the
"Silent Service 2" module. Thanks to Cedric Degea for
sending me the module and telling about the bug.
- Removed a memory leak in the mixer.
- Removed the AM & FM sample type and added the
Synth type instead.
- Fixed a bug in the module list that could make APlayer
crash. Thanks to Jacob Veedfald for reporting this.
- If you added a symlink to a directory, the symlink itself
was added instead of the files in it. Thanks to Cedric Degea
for reporting this.
- Improved the player descriptions.
- Upgraded the MikMod player and converter to 3.1.9.
Envelopes weren't loaded correctly for IMF and XM modules. In
the average case, the first envelope point was correct, the remaining
half points were bogus, and the other half completely random.
Enabling the envelope (with an effect) for a sample with no associated
envelope would cause a crash.
Panning was ignored in GDM modules.
Sample rate was incorrect for STM and STX modules.
Arpeggio memory (for IT modules) was ignored.
Tempo slide for IT modules was not processed correctly.
Version 3.6.0 Released 26. June 2000
- Added the Decruncher agent, which can decrunch PowerPacker
data files and XPK-SQSH files.
- Fixed some bugs in the APChannel class + the mixer
when using the second syntax of the SetLoop() function. Thanks
to Cedric for pointing this out.
- The volume slider and the main window position wasn't remembered
if you didn't have a "remembered" module list file.
- Added Amiga low-pass filter support in the player
interface. At the moment, it's just possible to turn the filter
on and off from a player, but the mixer doesn't use it yet.
- Fixed a bug in the ModTracker player which occured
when a module was using the EFx effect while no samples were
playing.
- Improved the test routines in the ModTracker player,
so it won't recognize a UNIC Tracker module as a Pro/NoiseTracker
module.
- Reduced the volume in the mixer back to the original value,
because it overpeaked some S3M modules. Too prevent sample (e.g.
wave/mp3) playing from being too low the volume is now boosted
a bit when they are played.
- Added the ProWizard agent. APlayer can now play over
80 different module formats! A big thanks to Sylvain Chipaux
for sending me the sources.
- The save format in the sample info window wasn't saved. It
is now!
- Fixed some bugs in the mixer, that made some modules
sound terrible.
- A graphics bug fixed in the main window.
- Added the module format information in the module
info window.
- Changed the appearance when the position slider in
the main window is in focus.
- Added support for Unreal Tournament. Thanks to Andrew
Kimpton for some help.
- Fixed the sound initialization so it doesn't hang
when you don't have any sound card.
- Added the Sound Output and DSP agent interface. The
API is not frozen yet, which is why the documentation is still
lacking.
- Moved the GetMixingFrequency() function from the APAddOnPlayer
to the APAddOn class, so it also can be called from agents.
- If you disabled an add-on when it had a setting window open,
APlayer crashed.
- On BeOS 5, APlayer sometimes crashed when you open the about
window. Thanks to all the people who has reported this.
- Rewrote the MPG123 player in C++. Also fixed a
bug when playing Layer 1 in mono. It couldn't play them because
they was interpreted as stereo :(
- The Mpeg VBR file handling is improved, so it now calculates
the song length right.
- The "Remember module list" option didn't work.
Thanks to Dennis Jakobsen for reporting this.
- If no converters are installed and you try to save a sample
in the sample info window, it will now complain about it in nicer
way.
- If you dragged a module to the last place in the Module List
Editor, APlayer crashed.
- Changed the rule for the "previous module"
button a little bit. If you press the button in the first 2 seconds
of a module, the previous module will now be loaded. If you press
the button after that, the current playing module will start
over again. This method should be better on modules that jump
very quickly to another position in the beginning.
- Removed the fade settings in the settings window,
because they are not used at the moment.
- Added the Sawteeth player. A big thanks to Arvid Norberg
for creating the player.
Version 3.6.1 Released 4. November 2000
- Added the Oktalyzer player. Boy, it took some time
to get to play the modules 100% correct. I will say that this
player is the only one except for the original that can play
Oktalyzer modules correct! It plays the module as the editor
will. (The source to the player is included in the Developer
kit :)
- Added the PlayReleasePart() function in the APChannel
class (needed by the Oktalyzer player).
- Fixed a little bug in the mpg123 player. It showed
wrong information if there was some random data in the beginning
of the file.
- If you had double buffering on and ejected a module after
the next module in the list were loaded, but not started, APlayer
crashed.
- APlayer can now play the Alien Breed Menu (long) correctly,
without going to the next module too soon.
- Changed the default sample info window size.
- If you was in a directory in one of the file panels and you
want to open it again and the directory didn't exists anymore
(e.g. a CD), nothing happened.
- The MikMod player does not send a message 50 times a second
to tell the Module Info Window that the tempo has changed. It
will only send a message when the tempo has actually changed.
- Added the Fred player. The player can play both "Final"
and "Editor" files.
- Moved the MikMod icon from the converter to the player.
- Improved the MPG123 player check routine. Some mp3's
has a huge block of zeros. The player is now able to skip these
blocks.
- Rewrote the ringbuffer filler thread, so the rare
CPU eating situations are gone. Thanks to Jaakko Leikas for reporting
this.
- If you have turned "Remember list when exit" on
and the last played module doesn't exists anymore when starting,
APlayer crashed. Thanks to Jaakko Leikas and Ove Peter for reporting
this.
- If you have a bunch of modules in the module list, you couldn't
select some of the last ones in the main window. Thanks to Ove
Peter for reporting this.
- Removed 256 bytes memory leak when playing a MultiTracker
module.
- Removed a memory leak in the Sawteeth player.
- The ModTracker player will now only check the first line
in the first pattern played after BPM speed commands, instead
of the whole patterns. This fixes a detection bug in "Game
Music Creator" modules.
- Rewrote the ProWizard agent. It's now based on the
original Amiga program by Nicolas Franck. Some extra formats
are still supported by merging these converter routines together
with the new one. New formats that are now supported are: Channel
Player v1, Channel Player v2, Channel Player v3, KRIS Tracker,
NoiseTracker Pak, PhaPacker, ProMizer v1.0c, ProMizer v1.8a,
ProMizer v2.0, ProMizer v4.0, Pygmy Packer, The Dark Demon, and
Unic Tracker.
- The playing module name is now shown in the main window titlebar.
This can be turned on and off in the settings.
- Removed a memory leak in the Players and Agents tab
in the settings window.
- Added a new tab, Filetypes, in the settings window.
- Improved the Future Composer 1.3 converter a little
bit.
- Fixed a loop bug in the MikMod player.
- Fixed a bug in the XM effect 6 (vibrato + volume slide)
in both the MikMod player and XM converter.
- Added support for WinAmp extended file lists.
- When playing small mpegs, APlayer crashed on x86 machines.
|
|
|
|