BASSCD 2.4
Copyright (c) 2003-2022 Un4seen Developments Ltd. All rights reserved.
Files that you should have found in the BASSCD package
======================================================
Win32 version
-------------
BASSCD.TXT This file
BASSCD.DLL BASSCD module
BASSCD.CHM BASSCD documentation
X64\
BASSCD.DLL 64-bit BASSCD module
C\ C/C++ API and examples...
BASSCD.H BASSCD C/C++ header file
BASSCD.LIB BASSCD import library
BASSCD.SLN Visual Studio solution for examples
MAKEFILE Makefile for examples
X64\
BASSCD.LIB 64-bit BASSCD import library
CDTEST\ Example CD player
...
WRITEWAV\ WAVE writer (ripping) example
...
BIN\ Precompiled examples
CDTEST.EXE
WRITEWAV.EXE
VB\ Visual Basic API and examples...
BASSCD.BAS BASSCD Visual Basic module
CDTEST\ Example CD player
...
DELPHI\ Delphi API and examples...
BASSCD.PAS BASSCD Delphi unit
CDTEST\ Example CD player
...
NOTE: You may need to "Unblock" the BASSCD.CHM file in its "Properties" to
view it on Windows 7. The documentation can also be viewed online at
the BASS website.
NOTE: To run the example EXEs, first you will have to copy BASSCD.DLL and
BASS.DLL into the same directory as them.
NOTE: To build the examples, you will need to copy the BASS API into the
same directory as the BASSCD API.
NOTE: The Delphi and VB examples may not always be up to date with the C
examples, so the latter should be preferred as references if possible.
Linux version
-------------
BASSCD.TXT This file
BASSCD.CHM BASSCD documentation
BASSCD.H BASSCD C/C++ header file
MAKEFILE Makefile for examples
MAKEFILE.IN Makefile helper macros
LIBS\ BASSCD modules
...
CDTEST\ Example CD player
...
NOTE: To build the examples, you will need to copy the BASS API into the
same directory as the BASSCD API.
What's the point?
=================
BASSCD is an extension to the BASS audio library, enabling the streaming
and ripping of CD audio tracks.
Requirements
============
BASS 2.4 is required.
Using BASSCD
=============
The CD format is used in very much the same way as any of the built-in BASS
stream formats, simply call the CD stream creation function instead of the
standard BASS functions. The BASS plugin system (see BASS_PluginLoad) is also
supported for CDA files on Windows.
The usage information in the BASS.TXT file (from the BASS package) is also
applicable to BASSCD and other add-ons.
TIP: The BASSCD.CHM file should be put in the same directory as the BASS.CHM
file, so that the BASSCD documentation can be accessed from within the
BASS documentation.
Latest Version
==============
The latest versions of BASSCD & BASS can be found at the BASS website:
www.un4seen.com
Licence
=======
BASSCD is free to use with BASS.
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, BASSCD IS PROVIDED
"AS IS", WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY
AND/OR FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS SHALL NOT BE HELD
LIABLE FOR ANY DAMAGE THAT MAY RESULT FROM THE USE OF BASSCD. YOU USE
BASSCD ENTIRELY AT YOUR OWN RISK.
Usage of BASSCD indicates that you agree to the above conditions.
All trademarks and other registered names contained in the BASSCD
package are the property of their respective owners.
History
=======
These are the major (and not so major) changes in each release, along with the
functions/options that are introduced/affected by them. There are other little
tweaks and fixes made along the way too.
2.4.8 - 16/8/2024
-----------------
* Custom "hello" ID in CDDB server requests
BASS_CONFIG_CD_CDDB_HELLO
2.4.7.1 - 2/2/2022
------------------
* Default CDDB server changed to gnudb.gnudb.org
BASS_CONFIG_CD_CDDB_SERVER
2.4.7 - 19/6/2019
-----------------
* Read block size configuration
BASS_CONFIG_CD_READ (BASS_SetConfig option)
* Unicode CDDB server config option on Windows
BASS_CONFIG_CD_CDDB_SERVER (BASS_SetConfigPtr option)
2.4.6 - 11/6/2014
-----------------
* Track index position retrieval
BASS_CD_TOC_INDEX (BASS_CD_GetTOC option)
* Support for 1st track pregap
BASS_CD_TRACK_PREGAP (BASS_CD_StreamCreate/Ex track)
* Track position mode
BASS_POS_CD_TRACK (BASS_ChannelGetLength/GetPosition/SetPosition mode)
* Fix for drives with letter A
2.4.5 - 12/5/2011
-----------------
* CDDB entry retrieval
BASS_CDID_CDDB_QUERY/READ (BASS_CD_GetID types)
BASS_CONFIG_CD_CDDB_SERVER (BASS_SetConfig option)
CDTEST example updated
* TOC (table of contents) retrieval
BASS_GD_GetTOC
* CD-TEXT reading bug fix
BASS_CDID_TEXT (BASS_CD_GetID type)
2.4.4 - 27/10/2010
------------------
* Drive offset correction support
BASS_CD_SetOffset
* Out-of-band sub-channel/C2 data reading
BASS_CD_StreamCreateEx
BASS_CD_StreamCreateFileEx
CDDATAPROC
* Fix for analog playback regression
BASS_CD_Analog_Play/File
2.4.3 - 2/12/2009
-----------------
* Support for drives with letter A/B
2.4.2 - 16/3/2009
-----------------
* Support for C2 error info
BASS_CD_C2ERRORS (BASS_CD_StreamCreate/File flag)
2.4 - 2/4/2008
--------------
* Drive access interface selection
BASS_CD_SetInterface
* Support for limited/restricted user accounts
BASS_CD_IF_WIO (BASS_CD_SetInterface interface)
* Drive description/letter moved to info structure
BASS_CD_INFO (vendor/product/rev/letter members)
BASS_CD_GetDriveDescription *removed*
BASS_CD_GetDriveLetter *removed*
2.3.0.3 - 9/7/2007
------------------
* Vista compatibility fix
2.3.0.2 - 25/11/2006
--------------------
* Drive letter support when using ASPI on NT-based Windows
BASS_CD_GetDriveLetter
2.3.0.1 - 27/6/2006
-------------------
* Pregap length retrieval
BASS_CD_GetTrackPregap
* MusicBrainz ID generation
BASS_CDID_MUSICBRAINZ (BASS_CD_GetID type)
2.3 - 21/5/2006
---------------
* Adjustable read speed
BASS_CD_SetSpeed
BASS_CD_GetSpeed
* Automatic speed reduction upon read errors
BASS_CONFIG_CD_AUTOSPEED (BASS_SetConfig option)
BASS_SYNC_CD_SPEED (BASS_ChannelSetSync type)
* Configurable read error retries
BASS_CONFIG_CD_RETRY (BASS_SetConfig option)
* Skip past read errors
BASS_CONFIG_CD_SKIPERROR (BASS_SetConfig option)
* Error sync now triggered by every read error (not just ending playback)
BASS_SYNC_CD_ERROR (BASS_ChannelSetSync type)
2.2 - 2/10/2005
---------------
* Support for new plugin system (BASS_PluginLoad)
* Track changing
BASS_CD_StreamSetTrack
CDTEST example updated
* FREEOLD flag replaced by a config option
BASS_CONFIG_CD_FREEOLD (BASS_SetConfig option)
BASS_CD_FREEOLD *removed*
* Info structure "size" member removed
BASS_CD_INFO structure
2.1 - 28/11/2004
----------------
* Support for the improved "mixtime" sync system (allows custom looping)
* C/C++ examples reorganised, with makefiles & VC++ projects
2.0 - 31/10/2003
----------------
* CDA file support
BASS_CD_StreamCreateFile
* Syncing integrated into BASS.DLL
BASS_CD_ChannelSetSync *removed*
* Analog playback (replaces the BASS.DLL built-in CD functions)
BASS_CD_Analog_Play
BASS_CD_Analog_PlayFile
BASS_CD_Analog_Stop
BASS_CD_Analog_IsActive
BASS_CD_Analog_GetPosition
BASS_CD_RWFLAG_READANALOG (BASS_INFO/rwflags flag)
* Sub-channel data reading
BASS_CD_SUBCHANNEL (BASS_CD_StreamCreate/File flag)
BASS_CD_RWFLAG_READSUBCHAN/DI (BASS_CD_INFO/rwflags flags)
* CDPLAYER.INI lookup ID generation
BASS_CDID_CDPLAYER (BASS_CD_GetID type)
* Support for CDs that don't begin at track 1
BASS_CD_GetTrackLength
BASS_CD_StreamCreate
* Force channels to use software mixing
BASS_SAMPLE_SOFTWARE (BASS_CD_StreamCreate/File flag)
* Support for BASS_StreamGetFilePosition
1.8 - 26/4/2003
---------------
* First release
Bug reports, Suggestions, Comments, Enquiries, etc
==================================================
If you have any of the aforementioned please visit the BASS forum at the
website.