
  Screamer Radio - Beta Development History
  Steamcore, 2003-2010
  www.screamer-radio.com


  * Means something was changed/fixed
  + Means something was added
  - Means something was removed

-- Version 0.4.4, released 2010-11-20

 101120:
 * Updated lame_enc.dll

-- Version 0.4.4 beta 2010-09-28

 100928:
 * Fixed menu bug with ampersands

 100926:
 * A check that the url field is actually a URL
 + When playing presets, clicking the station link will take you to the
   preset page on screamer-radio.com, this indicated by a red link color
 * Fixed version number in resource file

 100925:
 * Fixed paged menus, now counting from 1-50, 51-100 instead of 0-50 ..
 * Fixed crash bug for stations that embed XML in the stream title field


-- Version 0.4.4 beta 2010-09-24

 100924:
 * Fixed meta parsing crash bug
 * Menu fix to be compatible with screen readers
 * Upgraded BASS to 2.4.6.0
 * Upgraded BASSWMA to 2.4.4.0
 * Upgraded BASS_AAC to 2.4.2.0
 * Enabled BASS playlist parsing as fallback
 * Turned on DisablePopups option as default

 090222:
 * Fixed typo in configuration dialog

 081019:
 * Fixed bug that could cause random crashes on menu select

 081016:
 * Win98 version would not start because of new Vista compatible features

 081014:
 * Certain null streams caused stop callbacks before connection was even
   finished, could cause a deadlock situation

-- Version 0.4.3, released 2008-10-11

 081011:
 * Another menu tweak, last one I can think of
 * Fixed bug causing screamer to overwrite old recorded files in some cases
 * Screamer could warn you that it was recording on exit even when stopped
 * UNICODE version (Win2k/XP/Vista) now installs in localappdata by default
 * Installer now only requires normal user privileges in Windows Vista
 * Now using Music folder as default recording target folder


-- Version 0.4.2, released 2008-10-01

 081001:
 * Another menu related fix, hopefully it will work slightly better now
 * Fixed a deadlock bug
 * Fixed bug causing stop button to be ineffective against connect attempts
 + Implemented automatic version update notifier

 080930:
 * Fixed bug in log window causing it to display wrong title in some cases
 * Fixed one bug that would cause message "Connect error: No error"
 * ICY tags sent via HTTP wasn't parsed
 * ICY tags sent on AAC streams wasn't parsed
 * Refactored and cleaned up some code
 * Updated BASS to 2.4.2.0

 080824:
 * Missed that BASS 2.4 handles OGG metadata differently, now fixed


-- Version 0.4.1, released 2008-08-20

 080820:
 * Fixed menu bug affecting Windows 9x and WINE
 * Fixed timer bug affecting Windows 9x and WINE


-- Version 0.4.0, released 2008-08-18

 080818:
 * Upgraded BASS to 2.4.1.1
 * Upgraded BASSWMA to 2.4.1.1
 + Added a lot of language files and converted all of them to UTF-8
 * Refactored a bunch of code
 * Fixed UTF-8 bug on non UNICODE-build
 * Peakmeter didn't update properly, required a restart to turn on or off
 * Statusbar only updated when switching languages if you were currently playing
 * Merged changelogs, now there is only one

 080503:
 * Resolved long path bug when recording
 * Updated manifest file with Vista privilege properties
 * Tray icon now recreated on explorer restart
 * Tray icon now indicates if you are recording (when custom icon is off)
 * Tray icon menu now has a quicker option to enable/disable recording
 * Preset menus now split into columns of 35 items each

 080427:
 * Upgraded BASS to 2.4.0.1
 * Upgraded BASSWMA to 2.4.0.1
 * Upgraded BASS_AAC to 2.4.0.1
 * Added manifest file and adjusted GUI a little, slightly prettier dialog

 071022:
 * Fixed internal string bug

 070801:
 + Screamer now fades out on stop
 * Windows Desktop Heap bug adressed, but not fixed.. will require new way to
   select radio stations, preset menu is simply too large

-- Version 0.3.9, beta (never released as stable)

 070222:
 * Solved the lockup bug, FINALLY managed to painfully replicate the problem

 070217:
 * Removed an unneccessary callback from BASS and improved recorder semaphore
   protection hopefully eliniating any potential deadlock bugs therein
 + Preset update notification added on manual update (silent on automatic)
 + Implemented basic proxy auth support

 070215:
 * Reverted window resize code to that of beta 060524
 * Presets are now downloaded from a separate cache server to reduce
   load on the main website

 070128:
 * Now using CreateTimerQueue-timers instead, should work in win2k
 * Upgraded BASS to 2.3.0.2

 070120:
 * Improved proxy settings, they should now work much better
 + Added warning on exit when recording
 + Now recognizes icyx://
 * Updated license agreement, Screamer Radio may no longer be modified
   without restrictions for commercial applications

 061223:
 * The menu option Log Window is now straight under the help menu

 061212:
 * Moved Window menu, it is now a sub menu of the Help menu
 * Right aligned the Help menu

 061207:
 * Implemented UTF-8 support for favorites and settings, forgot about those
 * Now linking to UTF-8 version of Expat, UTF-16 was too messy
 - Dropped charset.dll, don't need it any more

 061124:
 * Refurbished configuration dialog
 + Added browse button to editor setting

 061027:
 * Updated some confusing menu entries
 * Last category in preset menu failed sometimes (ex: when playing Blue Mars)
 + Reinstated some old window resizing code.. looks okay with larger fonts now?
 + Now using libiconv for character code conversions (much more stable!)
 + Thanks to libiconv I now have a UNICODE build of Screamer Radio
 * Clipboard routines didn't work with UNICODE, fixed

 061001:
 * Fixed some preset/favorites parsing bugs
 * Improved playlist parsing (won't open html-files or open browser links now)
 * Tray icon is now triggered on mouseup, not mousedown (proper behaviour)

 060530:
 * Upgraded BASS to 2.3.0.1
 * Upgraded BASSWMA to 2.3.0.1
 * Upgraded BASS_AAC to 2.3
 * Screamer Radio now reports it's own user agent (thanks to BASS 2.3)
 * Improved proxy support by BASS?

 060524:
 * Tray icon routines could cause startup crash
 * Log window would always show up on start in some circumstances
 + Added and updated a few language files

 060511:
 * Now saving history and config to disk at every successful connect

 060305:
 + Last used preset category now ends up at the bottom of the presets menu
 + Log window now snaps to main window
 + Log window now is shown/hidden along with main window if snapped
 * Upgraded to Expat 2.0.0
 * Will now play streams beginning with icy://

 060227:
 + Winamp DSP plugin support, put plugins in a subfolder called plugins

 060225:
 * Improved threading code
 * Fixed a 20 byte memory leak that's been haunting me for a week
 * Now using windows multimedia timers instead of message loop dependent ones

 060224:
 + UI now completely separated from core, console demo version available..
 * Updated allocation strategy for buffers, should use less CPU now
 + Command line support, example: "screamer.exe http://www.di.fm/mp3/trance.pls"

 060221:
 * Massive internal restructuring, moving towards better OOP-design..
 * Finally seem to be able to display correct mpeg type and bitrate
 * Upgraded BASS to 2.2.0.4
 * Upgraded BASSWMA to 2.2.0.8
 * Fixed potential socket crash bug in playlist downloader
 * Eliminated an unnecessary thread (thanks to better OOP design)
 * AAC bitrate calc (ADTS parser) could end up in an infinite loop

 060217:
 * New metadata routines didn't always clear title and track
 * Device enumerator now skips emulated devices (as well as bluetooth)

 060215:
 * Improved stream bitrate calculation and metadata callbacks
 * Ogg streams could potentially crash Screamer (in some VERY rare cases)
 * Oops, managed to mess up the log, now working again..

 060214:
 * Fixed favorites saving, again.. for real this time
 + Added menu option "Web Directory" to presets

 060212:
 * COM is now initialized for every thread, hopefully this will fix WMA problems
 + Now displaying why the last source failed in the error popup
 * WMA metadata now working again (broken since update to BASSWMA 2.2.0.7)
 * Error message when failing a WMA-stream was sometimes "No error"
 + Can now display bitrate on AAC streams as well (parsing ADTS frames)

 060211:
 * Open Recording Folder didn't always behave properly, should work now
 + Screamer Radio now asks if it should autoupdate presets at every startup
 * Presets are now updated silently, no annoying messagebox at startup
 + Add favorite now has a dialog window
 * It's now possible to record AAC-streams too (reencoded with Lame like WMA)
 + Upon first startup, Screamer now asks what language to use
 * Log window now centered on first startup

 060207:
 * The user favorites wasn't saved properly using XML codewords (& -> &amp;)
 * Updated German language file
 * Add to Favorites is now translatable (forgot about that one)


 -- Version 0.3.8, released 2006-02-06

 060131:
 * Fixed a memory allocation bug that could induce crashes, thanks jolle

 060130:
 * Much improved ASX playlist parser
 * Slightly better playlist type detection
 + Support for MSN Messenger "What I'm Listening To"
 + Users may now FINALLY Add Favorites from within Screamer Radio

 060128:
 * The playlist downloader can now handle HTTP/1.1 302 redirects
 * Some internal restructuring
 * Upgraded BASS to 2.2.0.3
 * Upgraded BASSWMA to 2.2.0.7
 + Introducing BASS_AAC version 2.2, basic support for AAC, aacPlus and MP4

 050605:
 * Ampersands in the track title would be displayed wrong
 * Changed "Single Song Mode" to "Single Track Mode"

 050604:
 * Some UNICODE playlists weren't parsed correctly


 -- Version 0.3.7, released 2005-05-31

 050530:
 + Single song recording mode, enable it in the recording menu

 050524:
 + Balloon popups in tray
 + Now using zlib to download deflated (gzipped) presets,
   this will save me (and you) a little bandwith
 + Added .wax as possible playlist extension
 * Upgraded BASSWMA to 2.1.0.1, fixing a server playlist bug, thanks Ian!
 + Somewhat more sophisticated parsing of asx-playlists
 * Window in build 050226 would steal focus
 * Screamer Radio wouldn't start minimized even if a Windows shortcut said so
 * Upgraded BASS to 2.1.0.5
 * Upgraded BASSWMA to 2.1.0.2
 * Balloon popups now only updated when necessary, silly code :)
 * Screamer Radio no longer remembers recording state between sessions
 * Audio is now unmuted on connect
 + New copy to clipboard option, copy the playlist URL
 * Renamed 'lang.default.xml' to 'lang.english.xml'
 + It's now easier to select language file, Settings -> Language
 * Log window would steal focus sometimes

 050226:
 * Screamer wouldn't play WMA streams over HTTP if URL didn't have .wma or .asf
 * Recording bitrate could be wrong sometimes


 -- Version 0.3.6

 * Title and URL info would be wrong during connect from drag&drop,
   clipboard and open url
 * Now it won't try to play html, gif, jpg, php and asp files anymore :P
 * Some code cleanup..
 * When reconnecting, mute status would be lost (it woke me up once, hehe)
 * Next and prev buttons could make interface lock when downloading playlist
 * Modified connection procedure, should work better (e.g. http://foo/bar.wma)
 * Forgot the fact that OGG metadata was UTF-8
 + OGG Vorbis Recording! Went through hell and back again to get this to work
 * Fixed memory leak when reloading or updating presets and favorites
 * Now fetching presets from new domain http://www.screamer-radio.com/
 * Apparently WMA metadata is also UTF-8 in BASSWMA2.1, never noticed until now
 * Fixed more UTF-8 troubles when loading special characters from xml-file
 * Metadata now centralized throghout the whole program
 + Warning message (popup) for new users when trying to play nothing
 + Transparent stream save buffering, this makes it possible to save the entire
   track even if you press record in the middle of the track (if the buffer
   is large enough)
 + Now reading nominal OGG bitrate straight from stream (BASS not involved)
 + Added version information to resource
 + Added support for rtsp:// streams (NOT Real Audio)
 * Much improved connection/reconnection routines + new settings
 + Now reading MPEG bitrate and type straight from stream (BASS not involved)
 * Changed some compiler settings and optimized compressor,
   I now get "0%" cpu usage on my system even with compressor on :)
 + History of radio stations in file menu for easy access
 + Customizable "IRC string"
 + Added clipboard menu to traymenu
 * Fixed some problems with menu hotkeys
 + File editor now customizable
 + Some more recording options (%time%, %date%, %unix%)
 * Small change in how presets are downloaded
 * Made the window a couple of pixels smaller ;)
 * Fixed some weird bug in configuration dialog
 + Localization support!
 * Worked a bit on the installer and uninstaller
 * '&' would underline text in some instances in the program
 + WMA Recording! Requires lame_enc.dll and will encode to mp3-format, you may
   also encode OGG Streams to mp3 if you wish
 + Recording menu with some options
 * Improved worker thread wait behaviour (now using WaitForSingleObject())
 * Optimized startup and improved stability, it starts really fast now! BLAM!
 + Now possible to save log window contents to file
 + The window is now resized with respect to the menu height
 * Changed version string "0.3 beta 6" -> "0.3.6"
 * Upgraded BASS to version 2.1(.0.4)
 * The url in the window now has limits to how long it can be ;)


 -- Version 0.3 beta 5

 * Screamer wouldn't load presets and favorites if autoplay failed
 * Volume control now works properly
 * Presets downloaded in a separate thread
 * Displayed Title and URL when connecting was wrong
 * Eliminated a memory leak, forgot to free a SCEW tree
 * Internal restructuring, begun transformation to my new design
 * Default settings was disappearing (oops)
 + Proxy support added (edit screamer.xml for now)
 * Some timers wasn't properly disabled =/
 * MASSIVE rework in the core of Screamer,
   most things are now eventbased and multithreaded :)
 + Popups may now be disabled in configuration
 + Added proxy settings to configuration
 * Presets wouldn't automatically be updated sometimes
   (always terminate strings with null! :P)


 -- Version 0.3 beta 4.1

 * Due to popular demand, now linking MFC7.1 statically again!


 -- Version 0.3 beta 4

 * Upgraded BASS to version 2.0.0.22
 * Upgraded BASSWMA to version 2.0.0.3
 * Rewrote the handling of audio devices, they are now no longer released
   every time you press stop
 * Implemented better UNICODE detection
 * More internal restructuring.. damn, I suck :p
 * Song Title would say not playing when buffering
 + Implemented recording, currently only available for MP3 (SHOUTcast/ODDSOCK)
 * Reworked shutdown procedure, there was some funky stuff going on
 * Path parsing now use Shell Lightweight Utility Functions (shlwapi.lib)
 + Added an option in the help menu to restore the tray icon
 * Converted the Screamer project from VS6.0 to Visual Studio .NET
 * Statically linking MFC7.1 to keep backwards compability (60 kbyte overhead)
 * Started transition from CMarkup Lite to PugXML (another 20 kbyte extra)
 * Child windows in settings dialog didn't set the parent window properly
 * Messed around with the statusbar a bit
 * Upgraded BASS to version 2.1
 * Upgraded BASSWMA to version 2.1
 * Automatically download updated presets on startup
 * Reads Station URLs from file if possible (as requested)
 * Added a record button (as requested)
 * Window position no longer forced to be on screen because this wouldn't work
   properly on multi monitor desktops (thanks Ingulf)
 * Rebuilt the systray menu somewhat (added options for mute and recording)
 * screamer.xml now editable in regular notepad :)
 * Presets now autodownloaded if missing (even if mistakenly deleted)
 * Settings now loaded with Expat, threw PugXML out the windows,
   I should really release a new version officially soon ;)
 * CString is no longer being used *phew*, using my own class EString
 * Unfortunately I'm no longer linking MFC7.1 statically so there might be
   compability problems on older systems (nothing a DLL-install won't fix
   though)
 + Added the Help menu to the systray menu, hehe
 * Reworked thread handling, little immediate difference though
 * FINALLY got rid of CMarkupLite as well, Expat now rules supreme!
 + Added warning when trying to record something that cannot be recorded


 -- Version 0.3 beta 3

 * Rewrote a couple of hundred lines of code.. again!
 * Fixed a small memory leak that would leak a couple of kb of memory
 * Window will now be centered on the first startup
 * Optimized some window updating and startup code
 + Support for ClearType text
 * "No stream source" would be saved to the config file, no more
 * Some under the hood changes in the config dialog
 + Extended the tray menu with the File menu
 + Added an Open URL dialog in the File menu
 + Implemented a log window
 + Implemented easy move on the main window and the log window
 * Added and changed some values in screamer.xml
 * Screamer now dynamically loads the dlls which means you can remove
   basswma.dll if you don't want WMA support
 * Corrected a grammatical error in the changelog, thanks arneduck! ;)
 * The clickable part of URLs are no longer wider than necessary
 * The volume slider could be wrong on startup
 * Made the left part of the statusbar slightly wider
 * My UNICODE stuff broke the playlist downloading sometimes, now fixed


 -- Version 0.3 beta 2

 * Upgraded BASS to 2.0.0.20
 + Added clickable URLs, thanks to catch22 (http://www.catch22.org.uk/)
 + Added an about box
 * Modified the Peakmeter configuration dialog
 + Added drag and drop support for text (like URLs from a browser)
 * Fixed tab order in the dialogs
 * Changed the file menu
 + Added a small threshold in the compressor so it won't lower the volume
   because of a single byte or two
 + Added support for playlists in UNICODE format
 * Sorta fixed the bug that made it impossible to stop while buffering
   (but sometimes it outright crashes instead! I have no idea why!)
 * Fixed a positioning bug when exiting while minimized
 * Falsely displayed N/A in the streamtype info if bitrate was unavailable
 * Rewrote state machine code.. SHOULD me more stable now
 * Failed to close sockets properly when downloading playlists
 * Changing soundcard settings no longer requires a restart of Screamer,
   just a restart of playback
 * Fixed timers not being reset properly sometimes when minimizing
 * Cleaned up some code here and there
 * Queuing up several radio stations while connecting would crash


 -- Version 0.3 beta 1

 + First public release
