www.pudn.com > bladeenc-0.90.0-src.zip > ChangeLog


Latest changes to the source 
============================ 
 
 
1999-12-07      Released 0.89-stable: 
                - Fixed the broken -rawbyteorder=[] switch. Thanks to 
                  Frans E. van Dorsselaer for reporting that bug. 
                - The Windows and Linux executables of 0.88 were compressed 
                  using UPX. As a result the Windows version crashed instantly 
                  on some machines, so I'll skip UPX from now on (at least 
                  until they've found that bug). 
 
1999-12-05      Release of 0.88! First stable release for a while. :) 
                Changes done since 0.87.4-unstable: 
                - Typecasted tablecontents in bladtab.c in order to produce 
                  less compiler warnings in Visual C++ 6.0. 
                - Petteri Kamppuri corrected a bug that caused trouble if the 
                  input file didn't have a suffix, but a folder in the path 
                  did. 
                - Changed homepage to bladeenc.mp3.no. 
 
                Support for the config file under BeOS has still not been 
                included and source is unlikely to compile correctly under 
                OS/2, but I didn't want to wait anymore. 
 
1999-11-23      Put 0.87.4-unstable online: 
                - Long filenames finally working correctly in Windows. Thanks 
                  to Robert Schlabbach for getting me on the right track. 
                - Petteri Kamppuri provided and requested some new changes that 
                  were needed for his MAC OS port. 
                - Paul Martin discovered that I had screwed up the 
                  implementation of the  -progress=[] switch and fixed it. 
                - Vitor Sessak and Robert Schlabbach provided some minor fixes. 
                - Paul Martin found that mono samples were not encoded 
                  correctly, fixed by Tord. 
                - Paul Cantrell added defines for BeOS PowerPC. 
 
                I was thinking back and forth about releasing this version as 
                0.88-stable, but I dedided to put this up first to give the 
                people doing the non-windows/non-unix ports some time to add 
                support for the config-file. I'm especially missing some code 
                for the OS/2, BeOS and Amiga ports. Windows, UNIX and Mac OS 
                code is allready in place. 
 
 
1999-11-15      Put 0.87.3-unstable online: 
                - The GCC compilation bug is finally fixed! Or maybe I should 
                  say patched since it seems to be GCC's fault. Anyway, many 
                  thanks to Marco Amrein for comming with the idea on how to 
                  find and patch the bug. Another sollution to the problem was 
                  provided by Vitor Sessak, but Marco's approach was more clean 
                  and straight forward. 
                - Merged in some minor changes provided by Petteri Kamppuri and 
                  Paul Martin. 
 
                Just the windows long filename bug to solve before I can 
                release 0.88-stable. 
 
 
1999-11-14      Made some changes that I put online as 0.87.2-unstable: 
                - Fixed some compilation problems reported by Troy Engel and 
                  Robert Schlabbach. Should compile nicely without any warnings 
                  on most systems now. 
                - Merged in some patches from Petteri Kamppuri which were 
                  needed for his upcomming MAC OS port of BladeEnc. 
                - Added a PAUSE_25_LINES define for Windows and OS/2 to pause 
                  the info-output after 25 lines. 
                - Added a switch (-progress=[0-8]) for changing the look of the 
                  progress indicator. 
                - Progress indicator automatically switches to number 7 if we 
                  have a RAW file in the batch since BladeEnc doesn't know the 
                  filelength of RAW files (doesn't have a header and I don't 
                  want to check the filesize because that won't work on stdin, 
                  fifos(?) and files still being written). 
 
                I have two very odd bugs that I would be happy if someone could 
                help me with. One is related to Windows and the other is 
                related to GCC (and possibly EGCS). More info can be found in 
                TODO in the tar.gz archive. Unless something else pops up those 
                are the only changes that needs to be done before 0.88-stable. 
 
 
1999-11-11      Put 0.87-unstable online: 
                - Went back to 0.83 since I couldn't fix the sound degradation 
                  in 0.84 and 0.85. Generates now the same quality as 0.82 and 
                  is just about 8% faster. :( 
                - Merged in all the changes from 0.84 and 0.85 except the heavy 
                  optimisations from Matthias Wächter which somehow caused the 
                  quality degradation. 
                - CONFIGURE, MAKE and MAKE INSTALL scripts for UNIX-systems 
                  thanks to KDevelop, which now is my main working environment. 
                  Only optimisation level 1 on all files though, since I can't 
                  set it individually in KDevelop and anything higher generates a 
                  mutated version of codec.c. when using egcs :( 
 
                The following changes were made for 0.86 which was never 
                released due to the quality bug, but they should all be 
                correctly included in 0.87 as well. 
 
                - Found and fixed a bug that often degraded the quality of the 
                  last frame in an mp3 and could cause the DLL to crash under 
                  certain circumstances. 
                - Changed tabsize from 2 to 4 since that's more standard and 
                  reindented the code using a program called Artistic Style. 
                - A lot of code clean-up and restructuring, but there's still 
                  loads to do. :( 
                - Changed the way commandlines are handled internally to make 
                  it easier and cleaner to add support for configuration files 
                  and filelists. 
                - Added suport for configuration-files on Windows and UNIX 
                  systems (bladeenc.cfg in same directory as bladeenc.exe on 
                  Windows systems and .bladeencrc in the home directory on 
                  UNIX systems). The contents in the cfg file is placed first 
                  on the commandline. Everything after a '#' is skipped. 
                - Added support for priority settings on UNIX-systems. Default 
                  is NORMAL (not LOWEST as on Windows) priority and you can also 
                  use values -20 > 20. 
                - Added a "-nocfg" switch for skipping any settings in the 
                  configuration file. 
                - Addded support for RAW PCM input, including a number of 
                  switches for stating the frequency, number of channels etc of 
                  a RAW sample. 
                - Added defines for HP/UX, submitted by Petter Reinholdtsen. 
                - Replaced all longs with ints since long is 64-bits on Alpha. 
                  Thanks to Ben Slusky, Sadruddin Rejeb and the rest of you who 
                  told me about this. 
                - Added defines for Linux Alpha, provided by Ben Slusky. 
                - Added defines for MS-DOS, provided by Matt Craven. 
                - Added code in main.c that will make it possible to change 
                  the look of the progress indicator as soon as I have added 
                  a commandline switch for it.				 
 
1999-08-07      Ok, back from the vacation I put 085-unstable online. 
                Improvements since 0.84-unstable: 
                - Matthias Wächter found a quality degrading bug in his 
                  optimisations for 0.84 and fixed it. He has also cleaned up 
                  and optimized l3psy.c and subs.c a bit further, which should 
                  do a few more percent. 
                - Brad submitted a patch to make it compile nicely on OpenBSD. 
                - Serg 'Ice' Tsyganenko found a bug in the code for reading the 
                  commandline, which under certain circumstances could confuse 
                  BladeEnc if one or more of the samples had ".mp3" in their body 
                  or specified path. 
 
                I have some more patches to merge, but I'm going to England for 
                a long business trip now (possibly two months), so they will have 
                to wait until I come back... :( 
 
1999-07-30      Put 084-unstable online. Improvements since 0.83-unstable: 
                - Received and added some really heavy optimisations made by 
                  Matthias Wächter, resulting in a 28% speed increase on my 
                  machine! 8-) These optimisations have however broken the 
                  binary identicality with older versions (slight changes in 
                  precision (to the better) for a few routines early in the 
                  process) and I can therefore not guarantee that no quality 
                  affecting bug has slipped through. The quick investigations 
                  I've made of the code and output suggests that nothing bad 
                  has occured, but I would appreciate if some of you took the 
                  time to test it more closely (frequency analysis and listening 
                  tests mostly). 
                - Fixed broken last frame in MP3-file using a sollution I know 
                  isn't the right one, but as far as I can see it should do the 
                  trick without any side effects. Thanks to Robert Schlabbach 
                  for bringing it to my attention over and over again... ;-) 
                - Fixed what seemed to be a quality affecting bug, but later 
                  turned out to be harmless due to lucky circumstances. Thanks 
                  to Chris DeLise for discovering it. 
                - Added defines for Linux PPC provided by Rich West. 
                - Added patches for Ultrix & NetBSD provided by Simon Burge. 
                - Made some minor optimisations, giving somewhere above 1%. 
 
                Still have some of Roger Fujii's minor optimisations to include, 
                but now I'm going on a short vacation (my first summer vacation 
                in 3 years, hurray!) :-) 
 
 
1999-07-23      Put the latest version online as 083-unstable. Improvements since 
                0.82: 
                - Added a "-refresh"-switch to set the update rate of the progress 
                  indicator (in order to save CPU-time) and set the default 
                  refresh rate to 2 (half the previous one). This gave a speed 
                  increase of slightly more than 1% on my machine. 
                - Added a define in SYSTEM.H called PRECISE_TIMER. This is a quite 
                  dirty hack by me to allow for more precise calculation of encoding 
                  time and is only meant as a tool when optimizing BladeEnc. It 
                  calculates and prints out encoding time with higher precision, 
                  but slows down the encoding process with about 2 seconds for 
                  each file. It's not extremely trustworthy either, but enough 
                  for my needs. 
                - Started to merge in some optimizations provided by Roger Fujii, 
                  most notably a very clever replacement of the bladTabValue() 
                  function in loop.c which gave a speed increase of about 7% on 
                  my K6-2 350. Unfortunatelly this also makes a notably bigger 
                  executable since bladetab.c was changed and fleshed out. 
                  I still have some of his optimizations left to merge in, 
                  but they won't do more than about 2% together. 
                - Probably one or two other minor changes which I've forgotten... 
 
1999-07-23      Fixed a minor thing having to do with compilation on some 
                machines. Put online as bladeenc-082-src-stable-2.tar.gz 
 
1999-07-22      Fixed the embarassing skipping header bug in 0.80/0.81 by 
                including a FIFO for the headers (by ISO called sideinfo) in 
                formatbitstream2.h. Also got a few patches fixing minor bugs 
                and compilation problems (WIN32_ALPHA and SCO OpenServer). 
                Regarded this as stable and released it right away. I intend to 
                concentrate on including the speedups I've been sent and release 
                a new, hopefully much faster, version when that has been done. 
                There will probably be an unstable branch of this since it includes 
                changes to the FFT calculations that I want to be throughly tested 
                for possible quality degradation before I release it to the masses. 
 
1999-06-30      Loads of bugs in 0.80 fixed thanks to you guys out there. 
                Released 0.81 as a bugfix release, so that is now the latest 
                stable version. Also added a makefile, not exactly as good as 
                a fully working Configure/Make/Make Install system, but I 
                haven't gotten any of those some of you sent me working yet. 
                I guess I just have to learn a little bit more about it first, 
                until then you'll have to do with this simple, 
                platform-dependent makefile. 
 
1999-06-28      Version 0.80 stable released.