1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177
|
Changes to Snack
----------------- Released 1.3, 10/1/98 -----------------------
10/1/98 (new feature) AIFF file support, although there seems to be lots of
files out there that don't adhere to the specification.
10/1/98 (new feature) Sound objects now can be linked to disk files and
streams (Tcl channels) as well as having their audio data in memory.
10/5/98 (new feature) Added -byteOrder option to the sound data command and to all commands taking the -byteswap option, which is deprecated.
10/7/98 (bug fix) Fixed problem playing zero-length sounds on HP-UX.
10/7/98 (bug fix) Fixed problem playing multi-channel disk files.
10/12/98 (bug fix) The configure command now stops any active play/record operation before setting an option. Also, corrected -format and -channels options.
10/12/98 (new feature) Added cget command to complement configure command.
10/14/98 (bug fix) Fixed problem with insert command.
10/21/98 (bug fix) Fixed problem with APause() on IRIX.
----------------- Released 1.4b, 10/26/98 -----------------------
10/26/98 (new feature) Makefile now also builds a Tcl only libsound.so
10/28/98 (new feature) Split OSound.c into jkSound*.c and added Snack_AddSoundCmd() for Snack extensions. Added pause command.
10/30/98 (bug fix) StopSound() now only called if the format of the sound samples change while a sound is playing, as a result of read or copy, e.g.
11/3/98 (bug fix) Fixed bug in destroyCmd() and flushCmd() causing unwanted closing of audio device.
11/6/98 (bug fix) Fixed bug in Snack_SoundCmd() for -load'ing raw files.
11/11/98 (new feature) Better validation of options -fftlen/-winlen/-channel.
11/18/98 (bug fix) Snack now more robust to audio device peculiarities, misc audio fixes for HP-UX, Solaris, Linux, and Windows.
11/18/98 (new feature) Play commands now queue up and play in sequence.
11/22/98 (bug fix) Fixed bugs in SmpMov() and lengthCmd() for byte sized sample data.
12/19/98 (new feature) Added -colormap option to spectrograms.
12/20/98 (new feature) Added on the fly sample conversion for play back, lin8 on HP-UX and u-/A-law on Linux (if not supported by the hardware).
12/22/98 (new feature) PS generation for color spectrograms.
----------------- Released 1.4p2, 1/1/99 -----------------------
1/1/99 (new feature) Added -subsample option to waveforms. Now large sounds can be sub-sampled when drawing the waveform envelope. This can be much faster. For some synthetic sounds this can be problematic, in this case setting -subsample to 1 gives the old behaviour, i.e. don't sub-sample. Fixed drawing of zoomed sounds which look nicer now.
1/1/99 (new feature) Made some optimizations to spectrogram drawing. Added -gridcolor option. 256-color displays now supported under Windows.
1/4/99 (new feature) Raw file input now tries to guess byte order and sample format if they weren't specified in the read/data commands.
1/7/99 (new feature) Added -fileformat option to the sound write command which overrides the guess of format from the file name extension.
1/15/99 (new feature) Added sound convert command. Rather simple resampling algorithm (to start with).
1/26/99 (new feature) Modified spectrogram canvas item code with the goal of making it replace the spectrogram widget, which is now deprecated.
1/27/99 (bug fix) Swapped Lin8 and Lin8offset everywhere, long overdue.
1/29/99 (new feature) Split the file AudIO.c into one jkAudIO_*.c per platform. Renamed some other source and header files too.
2/1/99 (bug fix) Waveforms redraw properly now.
----------------- Released 1.5a1, 2/8/99 -----------------------
2/8/99 (new feature) It is now possible to add new sound file formats using the Snack_AddFileFormat() function. Only reading supported to start with.
2/8/99 (new feature) Added support for the NIST/Sphere file formats (NistFile.c). This must be specified at configure time, see the README file.
2/8/99 (new feature) Automatic detection of byte order and sample encoding format now also for -file/-channel sounds.
2/8/99 (new feature) Snack now uses immediate loading. This eliminates the problems with, for example, finding the Snack item types in some cases.
2/8/99 (feature change) Waveform -subsample option now has a default value of 1.
2/9/99 (bug fix) Copy command now allocates sufficient memory when copying multi-channel sounds.
2/10/99 (bug fix) Fixed canvas item bug when UpdateXXX() is called before an item has been drawn on screen.
----------------- Released 1.5a2, 2/10/99 -----------------------
2/12/99 (bug fix) Corrected error progagation when failing to read sounds and parsing headers.
----------------- Released 1.5b1, 2/16/99 -----------------------
2/21/99 (new feature) Convert command now does low-pass filtering when resampling sounds.
2/21/99 (bug fix) Corrected the code for immediate loading, which would have caused problems in future versions.
2/21/99 (new feature) Improved documentation and configuration of the snackSphere package.
2/22/99 (bug fix) Corrected right edge padding of spectrograms.
2/28/99 (new feature) Created commands getOGIwave and createOGIwave for interaction between Snack sounds and the wave objects of the OGI toolkit.
3/1/99 (new feature) Added support for reading the MPEG layer 3 sound format.
----------------- Released 1.5b2, 3/3/99 -----------------------
3/17/99 (new feature) Added Snack_GetSound() function which returns a sound struct given a sound command name.
3/18/99 (bug fix) Corrected bug for file based playback of MP3 sounds.
----------------- Released 1.5b3, 3/18/99 -----------------------
3/20/99 (feature change) A number of options to the play and record commands are now deprecated. The configure command provides this functionality. Also, sound command options should now be written in lower case only.
3/23/99 (removed feature) The spectrogram widget was removed as all functionality is provided by the corresponding canvas item.
----------------- Released 1.5b4, 3/27/99 -----------------------
4/6/99 (bug fix) Changed the parsing of sound file headers to allow for example MP3 sounds to be played over a socket connection.
4/6/99 (bug fix) Fixed stereo audio on SGI.
----------------- Released 1.5, 4/6/99 -----------------------
4/8/99 (bug fix) Updated g711.c with fix for Snack_Lin2*() functions.
4/9/99 (feature change) The Snack Tcl library now uses a namespace.
4/12/99 (feature change) The auto detection of encoding format (for raw files) now assumes that Mulaw/Alaw files are 8kHz and that lin8 files are 11.025 kHz.
4/15/99 (enhancement) Added simple sound viewer cool.tcl. Fixed aserver.tcl doesn't hang during exit on Windows anymore.
----------------- Released 1.5p1, 4/15/99 -----------------------
5/3/99 (new feature) Added -fileformat option to the sound read/data/append commands that overrides the file format auto-detection function.
5/3/99 (feature improvements) Improved sample file header detection/parsing.
5/3/99 (API change) The amount of sound data to transfer using Snack_Get{Put}SoundData() should now be specified in bytes.
5/9/99 (bug fix) Fixed bug in sound data command for stereo sounds. Caused too much data to be written to binary Tcl variables.
----------------- Released 1.5p2, 5/10/99 -----------------------
5/20 (bug fix) Proper clean-up if an error occurs during creation of a sound.
5/26 (bug fix) Bug fix for the AIFF header parsing routine. (Barras)
5/26 (new feature) User fields in the sound structure to be used with, e. g.,
new file formats. (Zhou)
5/26 (improved feature) Changed and improved the mixer code. Snack's mixer interface is now orthogonal to audio device functions such as play/record. It also reflects the underlying hardware capabilities better. Some minor changes to the API.
*** POTENTIAL INCOMPATIBILITY ***
----------------- Released 1.6a1, 5/27/99 -----------------------
5/30 (bug fix) More robust seeking in MP3 files.
5/30 (bug fix) The play command callback (-command) now gets executed when -start is at the very end of a sound.
----------------- Released 1.6a2, 5/31/99 -----------------------
5/31 (improved feature) Added format Lin8 (AFMT_S8) for Linux (if supported by hardware). (Barras)
5/31 (improved feature) If the audio device supports a sampling frequency close to the requested one, it will be used without reporting an error. (Barras)
6/7 (improved feature) The "audio frequencies" command on Linux now reports the actual audio device capabilities.
6/7 (enhancement) More informative error messages for audio I/O.
6/8 (new feature) Snack can now use the Tcl/Tk stub libraries (default behaviour). Also, eliminated use of private Tcl library functions.
6/14 (feature change) The sound read/write commands now do nothing if filename is specified as "".
6/15 (new feature) Extensions to Snack can now link with Snack's stub library (libsnackstub1.6.a) This is the preferred method.
----------------- Released 1.6b1, 6/15/99 -----------------------
|