Change Log

TODO:
- Debug panner.3d creation order confusion issue
- Print error messages when config files is not formatted correctly
- Create an about page for copyright, version and author(s) information.
- Make "mute" specifier in the am_config also work for none autoload projects

v1.2.5:
- Built with Max6.
- No longer using Alex Harker's vMSP objects (awaiting Max6 64-bit builds).
- Overdrive now enabled at startup in standalone app.

v1.2.4:
- Added Setup{} block in am_config.txt with SearchPath field (corresponding config parsing updates in am.main.maxpat)
- Changed [standalone] Preferences File Name attribute from "Max 5 Preferences" to "Asset Manager Preferences"

v.1.2.3:
- Updated MXJ_shellAccess to newer version.
- Updated Asset_Manager.maxpat to include [standalone]
- Use correct path for [am.network.recorder] when loaded in standalone 
- [osc.prepend] and [osc.append] moved to _common/Asset_Manager
- Aggregate 3rd party licenses into the "Licenses" folder

v1.2.2:
- Updated documentation

v1.2.1:
- Replace [sa.tcp-osc.recv] with [sa.tcp.server].
- Add alias [project.panner.in~] of [project.panner.input~]
- Update [sa.function] to version 0.3.2.

v1.2.0:
- New "mute" specifier in am_config to mute projects by default for autoload projects. 
- Fix bug where skipping hardware output channel does not work in am_config.txt

v1.1.6:
- Renamed panner debugging objects. New objects -> project.panner.input~.debug.maxpat, proejct.panner.out~.debug.maxpat
- Renamed project.3d.input.maxpat to project.panner.input~.maxpat
- Added virtual output objects, project.virtual.out~ and the debugging equivalent project.virtual.out~.debug.
- Updated SampleProject to reflect usage of virtual output. SampleProject_config.txt also includes documentation.
- Fixed /AM/Project/Mute/Unmute command bug when used without additional arguments

v1.1.5:
- Fixed inconsistency in SampleProject_config.txt using the panner object [project.panner~]
- Fixed coordinates not set correctly in [project.panner~] and [panner.3d] when it's only set once during initialization.
- Fixed bug where all adc~ inputs were routed to am.adc~ channel 1 only.
- Fixed bug in [project.inti] where Projects Outputs did not work. Output channels were not implied correctly by the channel outputs list. The problem only occurred when projects were opened locally. 
- Removed copyright and author info from the first page.
- Renamed label "Log" to "Log System Events"

v1.1.4:
- Fixed bug in am.split_osc.js introduced in v1.1.3.
- Added version indicator on the main window

v1.1.3:
- Fixed _saved_network_recordings folder not creating properly when path to Asset Manager includes spaces.
- Fixed system slowdown caused by [regexp] to split OSC addresses. 

v1.1.2:
- Added project mute feature using "/AM/Project/Mute" and "/AM/Project/Unmute" with error checking.
- Added "pass~" for "project.aux.out~", "project.panner.out~" to support muting with "mute~".
- 2nd outlet of "project.init" reports [1/0] for mute status. 
- Fixed bug where Asset Manager tries to load project when the file doesn't exist

v1.1.1:
- Fixed logic flaw involving [route symbol] when checking for volume setting in the project config file.

v1.1:
- Updated "sa.autopath" external to follow symbolic links.
- Added "pass~" for "panner.3d", "project.out~" to support muting with "mute~".
- Added new abstractions "softgate~" and "softgate2~" inspired by Joachim Gossman for avoiding clipping.
- Added better message handling and error checking for "/AM/Volume" and "/AM/Project/Volume" command.
- Added "/AM/Mute" and "/AM/Unmute" commands. (with error checking).
- Added feature for logging activities. (Beta: not all activities are logged). 
- Added "receive AM.Network" for routing network messages internally to Asset Manager.
- Fixed signal chain build failure when UseTransform is not specified in project config file.
- Fixed "am.adc~" and "adc~" channel mapping problem.
- Fixed "Aux channel count mismatch" warning when loading project config file.
- Fixed "project.out~" scripting error when argument is not ordered and does not start from 1.
- Fixed "osc.append" and "osc.prepend" error when no argument is specified.

v1.0.8:
- Fixed typo in am_config.txt, which caused missing SampleProject’s config file warning.
- Fixed Network playback not sending the project to playback.
- Better handling with am_config.txt is not found.
- Including a experimental “include.txt” generator.
- Including Zachary Seldess’s shellAccess.
- Fixed: sending /AM/Unload all will unload projects specified as autoload
- Removing vmap3D~ from distribution because of IP issue.
- Including VBAP’s copyright notice.

v1.0.7 - stable:
- Previous “fix” in v1.0.5, calculating num_outputs from output_channels should only happen for Projects setup, not for Panner or Aux since that depends on the use of Transform or not.
- jit.cellblock no longer uses refer coll. Now selection is more correct.

v1.0.6a:
- Fixed bug where recording project seems to be selected by is not actually targeted.

v1.06:
- New feature to record and playback project network traffic. The actually timing is playback in somewhat crude manner, not 100% exact. _saved_network_recordings folder will be created automatically if it doesn't exist.
- New main UI. Cleaned up copyright statements and removed the large "asset manager" banner. New menu-like drop down selection.
- Fixed main volume not working. (am.project_manager was not using am.dac~)
- New abstraction for parsing project config file (am.parse.projectconfig)

v1.0.5:
- Better panner.3d test patchers.
- Including vmap3d~ panner 3D abstraction.
- Including debugging abstractions for panner.3d.input~ and project.out~. Not to be used in project files.
- Fixed project.init not calculating num_outputs from output_channels.

v1.0.4:
- Fixed bug of not being able to set negative MasterLevel in am_config.txt.

v1.0.3:
- Added ability to reload am_config.txt file without restarting AssetManager. ADC/DAC will also be reconfigured.
- Project config file can be reloaded by banging the right inlet of project.init.
- Project config file can now be specified in the Projects definitions in the am_config.txt file.
- If project config file is not specified in am_config, Asset Manager will try to load the default, {ProjectName}_config.txt.
- Updated am_config.txt file comments.
- Fixed error when reading project config file with quotes around panner definition's variables.
- Added "spread" parameter for vbap.3d.
- No need to set num_outputs for Projects, Panner and Aux in the project config file. They are implied from their output_channels values respectively.

v1.0.2 - stable:
- When project is set to autoload in am.config.txt, it does not respond to remote /AM/Load and /AM/Unload messages. They can only be controlled via the server GUI.
- Fixed error message from jit.cellblock when removing the top active project from the list.
- New: am.network.maxpat can be used to handle project network messages without having to open Asset Manager.
- Cleaned up [am.project_manager] and removed unnecessary boxes.
- Removed unnecessary comment boxes in [panner.3d], [panner.3d.input].
- Cleaned up [project.init]

v1.0: This version will break existing projects. Change IO connection [project.ini] 
- New project config file format with detail documentation. All previous config file will need to be updated.
- New output objects, [project.panner.out~] and [project.aux.out~].
- Panner.3d implementation should now use [project.panner.out~] instead of [project.out~].
- New flexible icstambipanning and vbap panner.3d objects. (File names were changed and now prefixed with "panner.3d.")
- Including [prepend set] in [project.init] so overflow doesn't occur when connecting outlet to inlet.
- Fixed number box getting stuck by adding [atodb] after the inlet in [project.init],
- Created folders "external" and "js" inside _common/Asset_Manager to include Max/MSP externals and javascript files in different folders for organization.
- Main Asset Manager class was renamed to am.main.maxpat and moved to _common/Asset_Manager. The patcher Asset_Manager now loads am.main in bpatcher.

v0.14:
- Edited v0.13's config to only include sampleproject files.

v0.13:
- FIxed the problem of loading project on start (previous update did not fix this)
- Updated command line tools.
- Added Ambisonics panner for 5 speakers and sample config file.
- Renamed version so it's only *.*. (instaed of *.*.*)

v0.1.2:
- Fixed project.init so that setting the default volume in the project config file will reflect in the first outlet.
- Moved panner.3d.abstraction from am.project_manager to project.init because project_filename.js was not able to find the project name from am.project_manager.
- Fixed fromsymbol not understanding int or float in config file parsers on older version of Max
- Fixed project not loading immediately after AssetManager open
- Improving send efficiency when setting /AM/Project variables
- Fixed project's volume not getting set when passing through the inlet of project.init and from remote.
- Included strjoin.js, which may not be available in the default Max install on older version of Max/MSP.

v0.1.1:
- Changed /AM OpenSoundControl Syntax. /AM/Unmute was removed and now /AM/Mute /projectnmae (0|1). /AM/Project was added for project specific controls, such as /AM/Project/Volume, /AM/Project/Mute, etc.
- Updated amproject command line tool to reflect new OSC syntax
- Changed send/receive name for routing message to project. Now name is AM.Project.ProjectName, where ProjectName used to be an unique integer.
- removed underscore ('_') in the folder name inside /_common/Projects/_lib/.
- Added extra outlet for control commands for panner.3d.input.
- Added handler for receiving /Project/Volume messages to [project.init] and [am.project_manager]
- Added a file Asset_Manager_PATH_ONLY.maxpat to load just the path and not start Asset_Manager

v0.1 (major update):
- Added search path check for the config file. If it doesn't, it prints a message in the Max window.
- Added a new abstraction patcher [project.init] to make local I/O for each project. This abstraction is recommended to be included in all project.
- Changed word "Delete" button of Active Projects to "Unload"
- Renamed filename of poly~ implementation of am.project_managaer.maxpat to am.project_manager.poly~.maxpat. (file is unused)
- Added panner.3d implementation, files including panner.3d, panner.3d.abstraction, panner.3d.input, icstambipanning-8spk (example file for implementing custom panning).
- Added utility abstraction for handling OSC addresses, [osc.append] and [osc.prepend].
- Updated SampleProject project to demonstrate various functions such as [project.init], [panner.3d] and [project.out~].

v0.0.4:
- Added inline comment filter
- Added mute/unmute OSC syntax (e.g. "/AM/Mute /project", "/AM/Unmute /project"), but it's currently not implemented.
- Added volume OSC syntax (e.g. "/AM/Volume dB") to set master volume level.
- Can use keyword "all" to load all projects and unload/mute/unmute active projects. (e.g. "/AM/Load all")
- Added command line tools "am" and "amproject."
- Added mechanism so only one instance of Asset Manager can be opened.
- Removed dual poly~ loading structure, and replaced with dynamically loading abstraction. This is because using send~/receive~ inside poly~ is unsafe.

v0.0.3a:
- Rearranged Projects/_lib folder and deleted unused abstractions.

v0.0.3:
- Added new keyword "autoload" to load project on startup. The keyword should be used on the same like you specify project OSC address and file name.
- Don't know how to keep aliases and highlights using git, so added sa.autopath.mxo to the top folder
- Fixed active project not opening when clicked "open" from main GUI
- Fixed duplicate loading - some colls did not include AM. prefix.
- Added onebang after loadbang to prevent it from banging twice.
- Now prints error message when project is already loaded.
- Replaces unnecessary pv objects with [zl reg].
- Added file checking when loading a project so if the file doesn't exist in the search path, it will print an error.

v0.0.2:
- Fixed alias and highlight problem in finder (had to include .DS_Store)
- Remove unnecessary print messages.
- Added prefix "AM." to top layer coll

v0.0.1:
- Initial project
- Basic load/unload projects.
- Use am.adc~ and am.dac~ to interface with inputs and outputs.