Change Log

Version 9 (Pascal Baltazar, 08/09/2009 12:49 pm)

1 1
h1. Change Log
2 1
3 7 Pascal Baltazar
h2. Version 0.5 
4 1
5 3 Pascal Baltazar
Jamoma 0.5 works with/requires Max 5.0.7 or higher, and is a major rewrite of all parts of the framework.
6 8 Pascal Baltazar
There is a guideline on how to port Jamoma 0.4 modules to Jamoma 0.5 "here":http://redmine.jamoma.org/wiki/modular/Jamoma_05 
7 1
8 1
    * All patches revamped to work with Max 5.
9 9 Pascal Baltazar
    * *Overview* patch : The jamoma-overview patch has been reworked and is currently a good place to start exploring Jamoma
10 9 Pascal Baltazar
    * *Tutorials* : There are a series of new "tutorials":http://groupware.bek.no/groups/jamoma/wiki/c05cb/Tutorials_-_Overview.html . Old ones have also been updated to reflect the changes to 0.5.
11 9 Pascal Baltazar
    * *Templates* have been improved in a number of ways, including the jcom.parameterCreate utility, which is intended to help the module developper creating parameters without having to remember all attribute values. New template _Jamoma_Patcher_ 
12 9 Pascal Baltazar
    * *Modules* : many modules have been renamed :
13 8 Pascal Baltazar
    ** All names avoid using undescores now, and use camelCase instead (e.g. this_module->thisModule)
14 8 Pascal Baltazar
    ** Wherever possible, modules have been renamed in order to be sorted out by functionnality (e.g. cue and mapper series)
15 8 Pascal Baltazar
    ** Several new modules have been added to the distro, including :
16 8 Pascal Baltazar
    *** jmod.cueManager : a module for easily creating and managing cuelists 
17 8 Pascal Baltazar
    *** jmod.layout : an utility to manage the layout of Jamoma patchers and the creation of modules
18 8 Pascal Baltazar
    *** several slab-based OpenGL modules : jmod.gl. series
19 8 Pascal Baltazar
    ** namespace has been cleaned up in several places in order to offer more consistency 
20 8 Pascal Baltazar
    ** in particular, the namespace for all spatialization modules has been refactored in order to comply with SpatDif, as described on this "article":http://redmine.jamoma.org/documents/show/4
21 9 Pascal Baltazar
    * *Data types* changed to more intuitive/sensible names :
22 4 Pascal Baltazar
    ** msg_int -> integer
23 4 Pascal Baltazar
    ** msg_float -> decimal
24 4 Pascal Baltazar
    ** msg_toggle -> boolean 
25 4 Pascal Baltazar
    ** msg_list -> array
26 4 Pascal Baltazar
    ** msg_symbol -> string
27 1
    ** msg_generic -> generic
28 3 Pascal Baltazar
    ** msg_none -> none 
29 9 Pascal Baltazar
    * *Externals*:
30 2 Trond Lossius
    **  jcom.ui: The jamoma gui is ported to an external.
31 1
    ***  Improves load time significantly
32 7 Pascal Baltazar
    ***  Module sizes changed to multiples of 150x70 pixels.
33 7 Pascal Baltazar
    ***  Module size is now set by resizing jcom.ui to desired size
34 1
    ***  Widgets for mute/bypass/panel...etc configurable in jcom.ui's inspector (has_mute, has_... etc.)
35 8 Pascal Baltazar
    ***  Inspector has been renamed panel and the /inspector/open message /panel/open
36 1
    **  Attributes can be set using the new inspector common to all Max externals
37 8 Pascal Baltazar
    ** The DataspaceLib has been developped in order to manage different units
38 8 Pascal Baltazar
    *** dataspace support has been added to jcom.parameter/message/return
39 8 Pascal Baltazar
    *** external jcom.dataspace has been added
40 8 Pascal Baltazar
    **  jcom.colorspace, jcom.aed2xyz, jcom.xyz2aed, jcom.rad2deg, jcom.deg2rad... etc removed as conversions are now taken care of by the dataspace library.
41 8 Pascal Baltazar
    **  jcom.textslider has been ported to a proper UI external
42 1
    **  jcom.meter~: Finally works properly on Mac and Windows
43 1
    **  jcom.delta2 and jcom.velocity merged with jcom.delta.
44 8 Pascal Baltazar
    **  jcom.mkdir has been overhauled by jcom.folder 
45 8 Pascal Baltazar
    **  list support added to jcom.ramp and jcom.map
46 8 Pascal Baltazar
    **  jcom.change and jcom.round removed because equivalent objects now exist in Max5 (zl change and round)
47 2 Trond Lossius
    **  MSP externals substituted for ttblue equivalents, and new ones introduced. The distro now sports the following MSP-related externals:
48 2 Trond Lossius
    ***  tt.balance~
49 2 Trond Lossius
    ***  tt.dcblock~.mxo
50 2 Trond Lossius
    ***  tt.degrade~.mxo
51 1
    ***  tt.ramp~.mxo
52 1
    ***  tt.filter~.mxo
53 1
    ***  tt.limiter~.mxo
54 1
    ***  tt.overdrive~.mxo
55 1
    ** jcom.dbap has been improved in a number of ways (visualization, speakers weights, convex hulls... check help patch or upcoming article)
56 8 Pascal Baltazar
    **  Teabox externals moved to UserLib
57 9 Pascal Baltazar
    * *Components* :
58 9 Pascal Baltazar
    ** The collection of namespace analyzis components  has been renamed (jcom.get*)
59 9 Pascal Baltazar
    ** All externals/components/javascripts are now called "components"
60 2 Trond Lossius
    * Compiler for Windows:
61 9 Pascal Baltazar
    **  Now using Cygwin to compile on Windows. Please refer to "this":http://redmine.jamoma.org/wiki/modular/Setting_up_a_development_environment and "this":http://redmine.jamoma.org/wiki/modular/Building_externals pages for more information
62 9 Pascal Baltazar
    * Spatialisation modules/help patches :
63 5 Pascal Baltazar
    **  The ICST ui external ambimonitor is not yet available for Windows, and show up as bogus in some modules and help patches.
64 5 Pascal Baltazar
65 8 Pascal Baltazar
66 1
67 1
68 1
69 1
h2. Version 0.4.6 (24 April 2008 - rev 3090)
70 1
71 1
    * Mainly a bunch of bug fixes and further work on features introduced for Jamoma 0.4.5. This is the last version of Jamoma that will be compatible with Max 4.6.3.
72 1
73 1
74 1
h2. Version 0.4.5 (17 December 2007 - rev 2772)
75 1
76 1
    * FunctionLib: a new library of mathematical functions that are accessible throughout the Jamoma system.  A new jcom.map object uses this functionality to create a sort-of "super scale object" swiss-army-knife for patching.  The functions are also used by jcom.ramp and jcom.message/jcom.parameter's ramping.
77 1
    * RampLib: the ramp library has been re-written so that the shape of the ramp is function from the FunctionLib, as defined by the user.  The RampUnit? then defines the mechanism for driving ramps.  In addition to scheduler-based and queue-based RampUnits? we also created an async unit, which is particularly well-suited to Jitter modules.
78 1
    * DataspaceLib?: A new library that will eventually be integrated into the rest of Jamoma (currently only used by the new jcom.dataspace external).  This is not yet implemented in parameters and messages, but we have a working prototype.  It allows to say that a parameter or message belongs to a dataspace such as 'gain' and then that parameter or message will be able to handle input values in various formats (e.g. decibels, midi, linear, etc.).
79 1
    * Refining the OpenSoundControl? namespace.  In general we are making the namespace more consistent and rational.  We also discussed a variety of issues in terms of OSC syntax and began preparing some papers on the subject.  Of particular focus is the use in Jamoma of the ':' character to denote that we are addressing the metadata of a node instead of the node value itself.
80 1
    * Interpolation between presets in each module.  Also a variety of other features and improvements to the preset system.
81 1
    * Implemented setting and getting parameters of attributes of parameters (for example: the power parameter of the ramp/function attribute of the bitdepth module-parameter).
82 1
    * Lots of bug fixes (and probably the introduction of some new bugs too ;-)
83 1
    * New 'Oblique Strategies' component to help with decision making when working on patches.
84 1
85 1
h2. Version 0.4.4 (10 December 2007 - rev 2562)
86 1
87 1
    * New Modules:
88 2 Trond Lossius
    **  jmod.vst~: a module for VST effects / instruments
89 2 Trond Lossius
    **  jmod.tremolo~: stereo tremolo module with phase offset between channelsjmod.condition: module for signal conditioning
90 2 Trond Lossius
    **  jmod.bcf2000: module for interfacing with the Behringer BCF2000 MIDI faderjmod.continuum: module for interfacing with the Haken Continuum fingerboard
91 2 Trond Lossius
    **  jmod.cue_trigger: an interface for triggering cues from jmod.cuescript
92 2 Trond Lossius
    **  jmod.uc-33: module for interfacing with Edirol UC-33 MIDI fader
93 2 Trond Lossius
    **  jmod.wi-microdig: module for working with the wi-microdig
94 2 Trond Lossius
    **  jmod.background%: background subtraction video module
95 2 Trond Lossius
    **  jmod.gl.alphamixer%: OpenGL? module using a slab to mix four video streams with alpha channels
96 2 Trond Lossius
    **  jmod.gl.edgeblend%: OpenGL? module using a slab to perform edge blending with alpha channel
97 2 Trond Lossius
    **  jmod.gl.text2d%: OpenGL? module for 2D text
98 2 Trond Lossius
    **  jmod.gl.td.rota%: OpenGL? slab based rotation and repositioning
99 2 Trond Lossius
    **  jmod.movie_player%: QuickTime? movie player with additional control parameters and external clocking   
100 1
101 1
    * Module Bug Fixes and Updates:
102 2 Trond Lossius
    **  surround modules such as jmod.sur.ambi.decode~ now accept up to 32 channels
103 2 Trond Lossius
    **  jmod.oscnet no longer causes a stack overflow and reliability has been enhanced
104 2 Trond Lossius
    **  jmod.file_browser now lets you change the folder displayed with a /folder <folder>  message
105 2 Trond Lossius
    **  jmod.cont_mapper has been updated for the new core and now works
106 2 Trond Lossius
    **  jmod.mapper update button now works correctly
107 2 Trond Lossius
    **  jmod.fluoride% allows you to control the saturation now
108 2 Trond Lossius
    **  jmod.gl.videoplane% now works again
109 2 Trond Lossius
    **  jmod.motion%.mxt now draws a windowed contraction box around the motion image
110 1
111 1
    * New Components:
112 2 Trond Lossius
    **  jcom.send~: send audio to a named module without patch cords
113 2 Trond Lossius
    **  jcom.receive~: receive audio from a named module without patch cords
114 2 Trond Lossius
    **  jcom.metro: a metro that doesn't drift
115 2 Trond Lossius
    **  jcom.phasor~: a phasor that doesn't drift
116 2 Trond Lossius
    **  jcom.aed2xyz and jcom.xyz2aed convert between Cartesian and spherical coordinates according to SpatDIF? conventions
117 2 Trond Lossius
    **  jcom.map: component for mapping x to y using various different functions (linear, tanh, cos)
118 2 Trond Lossius
    **  jcom.mkdir: component for making directories on the hard disk
119 2 Trond Lossius
    **  jcom.stats: calculates running statistical values: minimum, maximum, mean, standard deviation similar to lp.stacey from the Litter power package.  Statistics can be windowed or run ad infinitum. 
120 1
121 1
    * Core Bug Fixes and improvements:
122 2 Trond Lossius
    **  reorganized folder structure, all modules are self contained in their own folder, including help file, preset file etc.
123 2 Trond Lossius
    **  common code moved to it's own library
124 2 Trond Lossius
    **  Windows externals are now built using GCC under cygwin
125 2 Trond Lossius
    **  modules are now maintained and looked up by storing their OSC name in a hash table (faster!)
126 2 Trond Lossius
    **  /preset/store with no arguments now resaves the current settings as the last selected preset
127 2 Trond Lossius
    **  added a /preset/copy
128 2 Trond Lossius
    **  fixed memory leak in jcom.hub
129 2 Trond Lossius
    **  optional arguments to inc and dec methods /degrade~/bitdepth:+ 4 will no increment by 4
130 2 Trond Lossius
    **  jcom.parameter performance enhancements, particularly when working with lists
131 2 Trond Lossius
    **  ramping with lists now works            
132 1
133 1
h2. Version 0.4.3 (not officially released)
134 1
135 1
    * Other Improvements:
136 2 Trond Lossius
    **  jmod.autosize%: adding argument to specify height or width
137 2 Trond Lossius
    **  fixed multiple video modules so that they can work with any matrix size
138 1
139 1
h2. Version 0.4.2 (31 March 2007 - rev 1860)
140 1
141 1
    * New Modules:
142 2 Trond Lossius
    **  jmod.blur%: spatial blurring
143 1
144 1
    * New Components:
145 2 Trond Lossius
    **  jcom.char2float%: convert a matrix from char to float32, keeping planecount and dimensions
146 2 Trond Lossius
    **  jcom.float2char%: convert a matrix from float32 to char, keeping planecount and dimensions
147 2 Trond Lossius
    **  jcom.spray%: distribute a video matrix to multiple (8) windows on bang
148 1
149 1
    * Core Bug Fixes:
150 2 Trond Lossius
    **  fixed problems with jcom.send and jcom.receive binding getting corrupted
151 2 Trond Lossius
    **  fixed problems on Windows with many crashes (caused by receiver list corruption in jcom.receive)
152 2 Trond Lossius
    **  fixed file reading (including presets) on Windows -- this was crashing and failing to read files
153 2 Trond Lossius
    **  fixed crashes on Windows caused by RampUnits? being set in some parameters
154 2 Trond Lossius
    **  fixed incorrect offset of the ambisonic panel in half-width modules
155 2 Trond Lossius
    **  Ramping now works again when changing gain parameters using dB.
156 1
157 1
    * Module Bug Fixes:
158 2 Trond Lossius
    **  jmod.file_browser: fixing problems with various file types
159 2 Trond Lossius
    **  fixed init problems in jmod.mouse
160 2 Trond Lossius
    **  mapper.mod: fixed bug where the algorithm would not be created in the mapping if the ui of the module was used to create it
161 2 Trond Lossius
    **  updates to jmod.equalizer~ and jmod.multidelay~ to bring them up to date with the new core. (jmod.equalizer~ is still not ready for use though)
162 2 Trond Lossius
    **  jmod.limiter~ and jmod.saturation~ now directly use an external for their algorithms
163 2 Trond Lossius
    **  added /preamp and /mode parameters to jmod.saturation
164 1
165 1
    * Other Improvements:
166 2 Trond Lossius
    **  miscellaneous cleanup and fixes throughout
167 2 Trond Lossius
    **  help patch updates
168 2 Trond Lossius
    **  overview updated 
169 1
170 1
h2. Version 0.4.1 (23 March 2007 - rev 1805)
171 1
172 1
    * New Modules:
173 2 Trond Lossius
    **  jmod.file_browser: browse a list of files and pass on to audio and video players
174 2 Trond Lossius
    **  jmod.noise~: playing various types of noise
175 2 Trond Lossius
    **  jmod.sine~: playing various simple waveforms, including sine, square, sawtooth, etc.
176 2 Trond Lossius
    **  jmod.fluidsynth~: synthesizer using soundfonts
177 2 Trond Lossius
    **  jmod.similarity%: creating similarity matrices from video
178 2 Trond Lossius
    **  jmod.background%: doing simple background subtraction
179 1
180 1
    * Changes to the Core:
181 2 Trond Lossius
    **  osc names given to modules should now happen as an argument (not scripting name)
182 2 Trond Lossius
    **  alternative sample-rate processing for modules has been removed
183 2 Trond Lossius
    **  move away from poly~ for wrapping simple audio algorithms
184 2 Trond Lossius
    **  algorithms re-structured to be more consistent with the module structure
185 2 Trond Lossius
    **  default skin changed to provide a cleaner basic gui to begin with
186 2 Trond Lossius
    **  made /module_name/get message to modules available in Max patches
187 2 Trond Lossius
    **  added /parameter_values/dump message to modules
188 2 Trond Lossius
    **  improved thread-safety
189 2 Trond Lossius
    **  XML presets now read correctly off of hard drives other than the boot drive
190 2 Trond Lossius
    **  removed @type msg_menu
191 1
192 1
    * Bug Fixes:
193 2 Trond Lossius
    **  many many modules have been fixed, including the cuelist module
194 2 Trond Lossius
    **  fixed broken audio bypass when a module was also muted
195 2 Trond Lossius
    **  fixed some internal initialization problems which led sometimes to crashes
196 2 Trond Lossius
    **  fixed problems with jcom.out~ sending to meters that don't exist (fixes crashes and many errors in the Max window)
197 2 Trond Lossius
    **  proper syntax used for ramp specification in help patches and examples
198 2 Trond Lossius
    **  fixed bang implementation for jcom.message with @type msg_none
199 2 Trond Lossius
    **  fixed the display of presets in the module menu
200 1
201 1
    * Other Improvements:
202 2 Trond Lossius
    **  implementation of wildcards in jcom.oscroute
203 2 Trond Lossius
    **  added syntax checking of osc used for module names
204 2 Trond Lossius
    **  namespace improvements in several modules including jmod.input%
205 2 Trond Lossius
    **  initial doxygen commenting added to the source code
206 2 Trond Lossius
    **  addition of standardizing the default colors used for most text in a module interface
207 1
208 1
h2. Version 0.4 (7 March 2007 - rev 1640)
209 1
210 1
    * Entire core infrastructure (except for the gui) re-written in C.  Please check the wiki @ jamoma.org for information on how to re-write modules from 0.3 to be compatible with the new core.
211 2 Trond Lossius
    **  created a ramplib for implementing various types of ramp units
212 2 Trond Lossius
    **  new preset system and XML format
213 2 Trond Lossius
    **  new i/o management that allows flexibile channel configurations with poly~ and will allow remote communication of audio & video signals in the future
214 2 Trond Lossius
    **  improved usability, clarity, speed, and structural definition
215 2 Trond Lossius
    **  ability to address parameter properties, in addition to the parameter values
216 2 Trond Lossius
    **  easier/improved debugging
217 2 Trond Lossius
    **  updates to the OSC namespace
218 2 Trond Lossius
    **  all data types now begin with msg_
219 2 Trond Lossius
    **  jcom.message now supports @type msg_none
220 2 Trond Lossius
    **  jcom.init is scoped, meaning it can operate locally or globally.
221 2 Trond Lossius
    **  modules perform local init automatically when they load
222 2 Trond Lossius
    **  meter changes for better performance on Windows, and to make more configurations available
223 1
224 1
    * Changed file naming conventions to eliminate ambiguity, erratic behavior, and other problems.  
225 2 Trond Lossius
    **  jcom.* denotes a Jamoma component
226 2 Trond Lossius
    **  jalg.* denotes a Jamoma algorithm
227 2 Trond Lossius
    **  jmod.* is not reserved only for use to denote a module
228 2 Trond Lossius
    **  all patches now use the .mxt (or .help) extensions
229 1
230 1
    * New Modules:
231 2 Trond Lossius
    **  jmod.chromakey%
232 2 Trond Lossius
    **  jmod.equalizer~
233 2 Trond Lossius
    **  jmod.gl.videoplane%
234 2 Trond Lossius
    **  jmod.keyscreen%
235 2 Trond Lossius
    **  jmod.palette
236 2 Trond Lossius
    **  jmod.record%
237 2 Trond Lossius
    **  jmod.yfade%
238 2 Trond Lossius
    **  jmod.motiongram%
239 2 Trond Lossius
    **  jmod.polhemus
240 2 Trond Lossius
    **  jmod.trig_mapper
241 2 Trond Lossius
    **  jmod.wacom
242 2 Trond Lossius
    **  jmod.phidgets.accelerometer
243 2 Trond Lossius
    **  jmod.phidgets.interfacekit
244 2 Trond Lossius
    **  jmod.mouse.gdif
245 1
246 1
    * New Externals (in addition to those that are a part of the new core):
247 2 Trond Lossius
    **  jcom.mkdir
248 2 Trond Lossius
    **  jcom.colorspace
249 2 Trond Lossius
    **  jcom.cubic_interpolate
250 2 Trond Lossius
    **  jcom.delta / jcom.delta2
251 2 Trond Lossius
    **  jcom.gang
252 2 Trond Lossius
    **  jcom.stats
253 2 Trond Lossius
    **  jcom.teabox.*
254 2 Trond Lossius
    **  jcom.velocity
255 2 Trond Lossius
    **  jcom.zerox
256 1
257 1
    * New Components:
258 2 Trond Lossius
    **  added background sizes for additional sizes of module ui
259 2 Trond Lossius
    **  jcom.slider jsui
260 2 Trond Lossius
    **  jcom.op : similar to jit.op but for flotas
261 2 Trond Lossius
    **  jcom.fullscreen%
262 2 Trond Lossius
    **  jcom.fullscreen
263 2 Trond Lossius
    **  jcom.rgb2luma%: similar to jit.rgb2luma but with planechecking
264 2 Trond Lossius
    **  jcom.luma2rgb% : similar to jit.luma2rgb but with planechecking
265 1
266 1
h2. Version 0.3.4 (Not Released - branch @ rev 1382)
267 1
268 1
    * n/a
269 1
270 1
h2. Version 0.3.3 (November 13 2006 - rev 1274)
271 1
272 1
    * Miscellaneous fixes, additions, and updates
273 1
274 1
h2. Version 0.3.2 (28 July 2006 - rev 825)
275 1
276 1
    * Core/Hub/Gui:
277 2 Trond Lossius
    **  Added new message /ui/refresh that will work with all modules: If display update has been frozen, this message will update displayed values. It do not cause any output, change of parameters, etc. It is simply a message to bring the displayed values back in sync with the real values used by the module.
278 2 Trond Lossius
    **  Added new message that will be understood by all modules: /documentaion/help. This message opens the help patch for the module.
279 2 Trond Lossius
    **  New system for communication between jmod.parameter and jmod.hub which uses dedicated send-receive links to vastly improve efficiency.
280 2 Trond Lossius
    **  global send and receive uses dedicate connections for improved efficiency
281 2 Trond Lossius
    **  Various name changes in the parameters in standard components (especially the gui component) to reflect a more consistent and structured namespace
282 2 Trond Lossius
    **  the pop-up menu in the module toolbar display all messages in alphabetic order
283 1
284 1
    * Externals:
285 2 Trond Lossius
    **  new jmod.dispatcher, jmod.param, jmod.mess, jmod.ret externs are preliminary prototype for future replacement of core components
286 2 Trond Lossius
    **  preliminary verson of jmod.mkdir for creating directories: code donated by Bill Orcutt from the mkdir external (thanks Bill!)
287 1
288 1
    * Modules:
289 2 Trond Lossius
    **  new vbap module
290 2 Trond Lossius
    **  Fixed bugs in the jmod.noisegate~ modules introduced when jmod.return was implemented.
291 2 Trond Lossius
    **  new control module that can be used for testing CPU efficiency in parameter handling (intended for testing/development only)
292 2 Trond Lossius
    **  Fixed bug in jmod.crossfade.mod reported by Guy Levesque at the user list with float number box displaying mix position not being properly updated when the module is receiving /crossfade messages from remote or in left inlet.
293 1
294 1
    * components:
295 2 Trond Lossius
    **  new lcd-based widget: slider with text display on top of it (may be replaced by jsui in the future)
296 1
297 1
    * Documentation:
298 2 Trond Lossius
    **  misc updates to help patches, html docs, and the overview patch
299 1
300 1
h2. Version 0.3.1 (23 June 2006 - rev 764)
301 1
302 1
    * Core/Hub/Gui:
303 2 Trond Lossius
    **  Many tweaks and fixes to the OSC namespace implementation
304 2 Trond Lossius
    **  fixed problems with initialization of psto caused by receiving bangs at loadbang time rather than init time
305 2 Trond Lossius
    **  made the implementation of "View internal components" consistent across all modules
306 2 Trond Lossius
    **  preview item in the module menu is no longer on by default in video modules
307 2 Trond Lossius
    **  module communication now happens using dedicated sends and receives rather than listening to global broadcasts
308 1
309 1
    * Externals:
310 2 Trond Lossius
    **  Mac versions compiled as Universal Binary for Max 4.6
311 2 Trond Lossius
    **  updated Jasch/ICST 3rd party externals
312 2 Trond Lossius
    **  jmod.saturation has a new 'mode' parameter that changes the algorithm it uses internally
313 2 Trond Lossius
    **  bug fix for jmod.change where it would filter messages that it shouldn't have
314 2 Trond Lossius
    **  fixed erratic behavior in jmod.xfade~ on windows
315 2 Trond Lossius
    **  fixed bug in jmod.oscroute, jmod.change, and jmod.equals where the inlet calls were not thread safe
316 1
317 1
    * Modules:
318 2 Trond Lossius
    **  new ambisonic modules: jmod.ambi.speaker.delay~, jmod.ambi.doppler~, jmod.sur.multi.in~, jmod.sur.multi.out~, jmod.sur.speaker.setup
319 2 Trond Lossius
    **  cuelist module now builds a menu with all cues; format for specifying cues in the textfile has changed; comment handling improved
320 2 Trond Lossius
    **  new jmod.midiin module for midi input
321 2 Trond Lossius
    **  various improvements to the jmod.mapper module
322 2 Trond Lossius
    **  new jmod.mouse module for handling mouse input
323 2 Trond Lossius
    **  new jmod.input% module provides video input from a device or a quicktime movie.
324 2 Trond Lossius
    **  new jmod.output% module creates a rendering context for Jitter OpenGL? patches
325 2 Trond Lossius
    **  new jmod.xfade% module crossfades between two video sources
326 2 Trond Lossius
    **  a series of "new" video filters that wrap Jitter externals (ported to Jamoma from Jade): jmod.plur%, jmod.avg4%, jmod.emboss%, jmod.fluoride%
327 2 Trond Lossius
    **  added randomness parameter to jmod.qmetro
328 2 Trond Lossius
    **  new sample-accurate jmod.delay~ and jmod.scope~ modules ported from Jade
329 2 Trond Lossius
    **  jmod.echo~ module now has filtering and limiting built into the feedback loop
330 2 Trond Lossius
    **  new jmod.phidgets module for working with Phidgets devices
331 1
332 1
    * components:
333 2 Trond Lossius
    **  new jmod.autocrop% automatically crops source material
334 2 Trond Lossius
    **  jmod.jsui_multigain.js acts as a visualizer/multislider/gain controller (used in ambisonic modules)
335 2 Trond Lossius
    **  added jmod.thru which does nothing :-)
336 2 Trond Lossius
    **  added a series of components for various trigonometric conversions
337 1
338 1
    * Documentation:
339 2 Trond Lossius
    **  jmod.hub is better documented
340 2 Trond Lossius
    **  cleaned up all of the help patches
341 2 Trond Lossius
    **  examples are now fully implemented in the OSC namespace
342 2 Trond Lossius
    **  pluggo example now works with menu selections
343 2 Trond Lossius
    **  tutorials split into 2 tracks: "Using Jamoma" and "Making Jamoma Modules"
344 1
345 1
    * Misc:
346 2 Trond Lossius
    **  added  the 'j3' skin as an example for how to make your own skins for modules
347 2 Trond Lossius
    **  skin graphics now handled as 'knob' type by pictslider so that the graphic sizes could be reduced by half.
348 1
349 1
h2. Version 0.3 (9 April 2006)
350 1
351 1
    * Jamoma now uses OpenSoundControl? for communication. All modules have been updated accordingly.
352 1
    * Added templates for creating various kinds of modules and algorithms.
353 1
    * Modules now automatically resize their containers (bpatcher frame or window dimensions) when loaded
354 1
    * Hub/Gui Changes:
355 2 Trond Lossius
    **  Module size can now be queried using the /getmodulesize message, returning e.g. /modulesize 1U-half.
356 2 Trond Lossius
    **  @library_type attribute renamed to @algorithm_type.  This attribute also uses more intelligent defaults based on the module_type that is specified.
357 2 Trond Lossius
    **  The @options attribute has been eliminated.  In its place, we are now using more precise @module_type attributes with class-like nomenclature.  For example:
358 2 Trond Lossius
    **  audio
359 2 Trond Lossius
    **  audio.no_panel
360 2 Trond Lossius
    **  audio.ambisonic
361 2 Trond Lossius
    **  control
362 2 Trond Lossius
    **  video
363 2 Trond Lossius
    **  video.gl (not implemented, but reserved for future usage)
364 2 Trond Lossius
    **  Added @inspector attribute.  If 1 it will add an inspector button to the upper-right corner of the gui.  The default is 0.  To use an inspector in your module you must define this, then capture the message from the second outlet of jmod.hub to open your custom inspector window.
365 2 Trond Lossius
    **  jmod.gui now sports panels dedicated for ambisonic and video modules (not just audio modules).  The video panel provides a more immediate interface for previewing, bypassing, muting, and freezing video output from a module.  
366 1
367 1
    * Added new folder for 3rd part libraries and externals
368 2 Trond Lossius
    **  Added zipped version of 3rd part GNU LGPL externals made by jasch/ICST (http://www.icst.net/downloads/) in new folder /library/externals_3rd_part:
369 2 Trond Lossius
    **  ambiencode~: Ambisonic encoding
370 2 Trond Lossius
    **  ambidecode~: Ambisonic decoding
371 2 Trond Lossius
    **  Added ttblue library (http://sourceforge.net/projects/ttblue). Used for compiling jmod.limiter~ and jmod.saturation~.
372 1
373 1
    * Documentation:
374 2 Trond Lossius
    **  Change log is now a separate rich text format file.
375 2 Trond Lossius
    **  Further work on JIG, both to reflect the change to OpenSoundControl?, and to provide more details. Removed some restrictions that are no longer required.
376 2 Trond Lossius
    **  Added a new overview patch
377 2 Trond Lossius
    **  New example added from the Teatrix workshop @ BEK
378 2 Trond Lossius
    **  New example added that re-generates all HTML for the modules using scripting
379 1
380 1
    * Externals:
381 2 Trond Lossius
    **  jmod.oscroute: new external for Routing of OpenSoundControl? messages.
382 2 Trond Lossius
    **  jmod.equals: new external for comparing symbols
383 2 Trond Lossius
    **  jmod.sum%: new external sums the pixels in a Jitter matrix and returns the center of gravity for them
384 2 Trond Lossius
    **  Several audio externals moved from blue to being Jamoma-native, and renamed accordingly.
385 2 Trond Lossius
    **  On Mac OSX platform all externals are now compiled as Mach-O using Xcode
386 2 Trond Lossius
    **  jmod.pass has implemented several new features for dealing with messages starting with a "/", required when passing and routing OSC messages.
387 2 Trond Lossius
    **  jmod.bridge has been incorporated into jmod.hub and no longer exists.  This have some important implications: jmod.bridge is no longer required in main patches. Instead it is required to provide an unique OSC-compatible name (starting with "/") for each module. 
388 1
389 1
    * New components:
390 2 Trond Lossius
    **  jmod.autoscale.mxt - autoscaling of control values
391 2 Trond Lossius
    **  jmod.filewatcher - used for opening files and watching them for changes in external editors
392 2 Trond Lossius
    **  jmod.filesaver - a standardized abstraction for throwing a file dialog and managing consecutive saves
393 2 Trond Lossius
    **  jmod.return - returns data from a module (the opposite of jmod.message); accepts many attributes that are in common with jmod.parameter and jmod.message.  This should be used for things like analysis results or flagging when a soundfile is done playing, etc.
394 1
395 1
    * New ambisonic modules:
396 2 Trond Lossius
    **  jmod.ambi.encodeM~: Encode up to 16 mono ambisonic sources
397 2 Trond Lossius
    **  jmod.ambi.decode~: Decode 1st - 3rd order ambisonic signals for up to 16 loudspeakers.
398 1
399 1
    * New audio modules:
400 2 Trond Lossius
    **  jmod.saturation~-mod: Stereo saturation
401 2 Trond Lossius
    **  jmod.noisegate~.mod: Stereo noise gate.
402 2 Trond Lossius
    **  jmod.noisegateM~.mod: Mono noise gate
403 2 Trond Lossius
    **  jmod.echo~.mod: Stereo echo module
404 1
405 1
    * New control modules (and algorithms):
406 2 Trond Lossius
    **  jmod.mappings: create relationships between module parameters, returns, and messages
407 2 Trond Lossius
    **  jmod.oscnet: send and receive OpenSoundControl? messages over a network
408 2 Trond Lossius
    **  jmod.hi: module for using human interface devices (game controllers, tablets, etc.)
409 2 Trond Lossius
    **  New jmod.transformation.alg: can be used to manipulate the data in mappings.
410 1
411 1
    * New video modules:
412 2 Trond Lossius
    **  jmod.brcosa%.mod: change brigthness, contrast, saturation and b/w
413 2 Trond Lossius
    **  jmod.motion%.mod: calculating motion based on simple frame difference
414 2 Trond Lossius
    **  jmod.orsize%.mod: change orientation and size of incoming matrices 
415 1
416 1
    * Bug fixes in modules (and algorithms)
417 2 Trond Lossius
    **  Increased reliability in the calls to jmod.init from the jmod.contro module.
418 2 Trond Lossius
    **  Implemented new WAIT command in jmod.cuelist.mod.
419 2 Trond Lossius
    **  jmod.limi~ renamed to jmod.limiter~
420 1
421 1
    * Bug fixes to components
422 2 Trond Lossius
    **  jmod.message now uses @clipmode none as the default rather than @clipmode both
423 2 Trond Lossius
    **  Fixed bug in jmod.line
424 2 Trond Lossius
    **  Fixed bug in jmod.cuelist.mod. Can still be developed further for elegancy, functions and efficiency. Maybe for 0.4.
425 2 Trond Lossius
    **  Fixed bug in jmod.filter~.mod. 
426 1
427 1
h2. Version 0.2.1
428 1
429 1
    * documentation proof-reading and expansion, holes in the JIG filled in with some basic material
430 1
    * bug fixes in the externs (most notably in jmod.meter~ and blue.limiter~)
431 1
    * batch building helpers for the externs on both platforms
432 1
    * added jmod.cuelist module for automating modules and getting state information.
433 1
    * added default presets to modules that were lacking them 
434 1
435 1
h2. Version 0.2
436 1
437 1
    * clean up of all existing documentation
438 1
    * fixed problems with checking out objects on Windows
439 1
    * fixed broken loading of html references from the module menu
440 1
    * fixed broken save settings/load settings items in the module menu
441 1
    * removed the old 'enable' message from modules
442 1
    * added qlim to defer loadbangs in example patches
443 1
    * removed quirky support of sd2 format soundfiles
444 1
    * new template files added
445 1
    * new tutorials added to html doc
446 1
    * added many help patches, even if in rough form 
447 1
448 1
h2. Version 0.1.9
449 1
450 1
    * completed all help files
451 1
    * jmod.parameter.mxt: Changes to attributes (some new, some removed, some renamed)
452 1
    * clean up of patch layout for jmod.hub.mxt
453 1
    * introduced "autodoc" message to autogenerate html documentation of modules. 
454 1
455 1
h2. Version 0.1.8
456 1
457 1
    * jmod.meter~ is now compiled for Windows as well as Mac
458 1
    * jmod.meter~ is now placed in the max-startup folder by the Mac installer
459 1
    * new examples:
460 2 Trond Lossius
    **  Scripting Example: Jade-like module loading
461 2 Trond Lossius
    **  Pluggo Simple: Wraps a single module as a Pluggo Plugin
462 2 Trond Lossius
    **  Pluggo Complex: Wraps multiple modules into a Pluggo Plugin 
463 1
464 1
    * blue externs for windows freshly compiled
465 1
    * improvements to the way soft fade in/out is done when audio is turned on/off
466 1
    * new component for internal communication: jmod.gui_message.mxt
467 1
    * bug fixes and improvements to various modules:
468 2 Trond Lossius
    **  jmod.input~
469 2 Trond Lossius
    **  jmod.output~
470 2 Trond Lossius
    **  jmod.control 
471 1
472 1
h2. Version 0.1.7
473 1
474 1
    * parameter name listing can be queried
475 1
    * major change to jmod.parameter.mxt: Left outlet now returns a qlim-ed "set" message for display. This solves a problem with parameter ramps not being killed by user interaction. Also added second outlet, returning non-filtered values.
476 1
    * Reorganization of files and folder structure
477 1
    * gui component now rewritten as one dynamic bpatcher! (old static files have been archived)
478 1
    * New .pct file: jmod.button.link_toggle.pct
479 1
    * Changes to jmod.jsui_texttoggle.js so that background colors for on and off can be set separately
480 1
    * Altered the default preset for jmod.edge% module
481 1
    * jmod.input~.mod: channel gains can be linked, name of sound file displayed, play button green when on
482 1
    * jmod.input~.mod: changed syntax for adc~ channels to "set_ch_1 $1" and "set_ch_2 $1"
483 1
    * removed Tap.Tools dependency
484 1
    * removed Jitter dependency
485 1
    * Added modules:
486 2 Trond Lossius
    **  crossfade~
487 2 Trond Lossius
    **  filter~
488 2 Trond Lossius
    **  filterM~
489 2 Trond Lossius
    **  mblur%
490 2 Trond Lossius
    **  op%
491 2 Trond Lossius
    **  output~
492 2 Trond Lossius
    **  wake%
493 1
494 1
    * Added external projects folder with the following objects:
495 2 Trond Lossius
    **  blue.limiter~
496 2 Trond Lossius
    **  blue.xfade~
497 2 Trond Lossius
    **  jmod.change
498 2 Trond Lossius
    **  jmod.meter~ [still needs a windows version]?
499 2 Trond Lossius
    **  jmod.pass
500 2 Trond Lossius
    **  jmod.round
501 2 Trond Lossius
    **  jmod.route
502 2 Trond Lossius
    **  jmod.usurp
503 1
504 1
    * Added Javascript objects:
505 2 Trond Lossius
    **  jmod.js_link.js: for dealing with linked gains
506 2 Trond Lossius
    **  jmod.jsui_sr.js: new sample-rate jsui widget: 
507 1
508 1
    * Documentation:
509 2 Trond Lossius
    **  Added new classes to CSS for HTML documentation, all documenation now based on the CSS
510 2 Trond Lossius
    **  Added initial documentation (really just moving HTML files from Jade)
511 2 Trond Lossius
    **  Added basic video module demo patch
512 2 Trond Lossius
    **  added some new help files for modules, and expanded existing ones. 
513 1
514 1
515 1
h2. Version 0.1.5
516 1
517 1
    * Added externals folder 
518 1
519 1
    * Eliminated dependency on Tap.Tools 
520 1
521 1
h2. Version 0.1.4
522 1
523 1
    * Misc bug fixes
524 1
    * implemented the new gain mechanism in all audio module gui components
525 1
    * changes param name "gain_m" to simply "gain" 
526 1
527 1
h2. Version 0.1.3
528 1
529 1
    * new module for audio input: jmod.input~.mod, as well as default preset and example patch
530 1
    * new module for controlling audio in Jamoma: jmod.control.mod. Very rough sketch at the time being. Incorporates:
531 2 Trond Lossius
    **  audio on/off with quick fade in/fade out
532 2 Trond Lossius
    **  panic button
533 2 Trond Lossius
    **  screen refresh
534 2 Trond Lossius
    **  initialization of Jamoma
535 2 Trond Lossius
    **  CPU monitor 
536 1
537 1
    * new scheme for gain handling, solving prior problems of ramps not being killed by new gain messages
538 1
    * most important: jmod.parameter.gain.mxt
539 1
    * jmod.core.sr.mxt
540 1
    * jmod.hmeters~.mxt
541 1
    * jmod.receiveamp.mxt
542 1
    * added Javascript text toggle: jmod.jsui_texttoggle.js with help file
543 1
    * added jamoma-help folder
544 1
    * added gainparameter bpatcher to be used by example patches (jmod.gain_params.mxt)
545 1
    * added a number of graphics used by the input module
546 1
    * added file endings to all abstractions used in components to speed up loading of Jamoma modules 
547 1
548 1
    * major rewrite of jmod.parameter.mxt. Should be easier to read, but behave the same as before.
549 1
    * added @autorestore 0 attribute to the pattr used in jmod.parameter.mxt
550 1
    * did the same to the pattr used in jmod.parameter.gain.mxt pattr 
551 1
552 1
h2. Version 0.1.2
553 1
554 1
    * Misc bug fixes
555 1
    * changed tag for video modules to the % symbol
556 1
    * added example patch for using pattrstorage to store and recall attributes
557 1
    * added example patch for using qlist to automate modules 
558 1
559 1
h2. Version 0.1.1
560 1
561 1
    * Misc bug fixes
562 1
    * Resolved some discrepancies in the documentation
563 1
    * File format for the Style Sheet changed to HTML
564 1
    * file name formats change and adjusted for modules, algorithms, and defaults
565 1
    * added edge@ module (video edge detection in Jitter)
566 1
    * updated the example patch and formatted the file properly as text
567 1
    * set pattrstorage attributes correctly in the existing modules 
568 1
569 1
h2. Version 0.1
570 1
571 2 Trond Lossius
    * Initial Developer Release, as extracted from the Jade 2.0 beta