This mxm provides IP control to the Richmond Soundman server.
SoundMan-Server is a virtual sound system. It is an audio routing, playback and processing solution.. It runs under Windows and uses ASIO drivers. The software runs as a server and thus can be controlled externally by TCP/IP on the network. (See http://www.richmondsounddesign.com
for more details).
MxM Installation
No specific installation as long as the computer has a network card to communicate
with the SoundMan.
Device Setup
Setup dialog box:
If a SoundMan server is running, enter its IP address in the TCP/IP address edit box and then click the “Update” button: the interface list will be filled with the names of the ASIO interfaces present on the computer where SoundMan is running.
When you select an interface, the SoundMan server returns the count of live inputs and the count of outputs of the selected interface: these values are displayed in the corresponding edit boxes and if the count of playback inputs is higher than the count of playbacks supported by the SoundMan, it is lowered.
If no SoundMan server is running, enter the values manually. If you enter a value of ‘0’ for the interface ID, the first interface found will be taken.
Important note: The maximum count of playback inputs supported by the SoundMan server is 999 but Manager monitoring variables are created for each playback input, so think about it when you enter this count if you don’t want your project to be overloaded with variables.
The remote path and the local path is the same path, the one where the media are stored. The remote path is the path as seen from the computer where Manager is running. The local path is the path as seen from the computer where SoundMan is running.
Graphical User Interface
This MxM provides
a Device Control Panel that can be displayed either as a stand
alone window or inside a User Screen Contenair object
with the “Device Control” Manager command. Note: See the
Manager Help menu for details about using this command.
The Device Control Panel has 2 main functions:
Direct control/monitoring of the SoundMan
Preset editing and management
Direct Control
Ranges
The drop down lists at the top left allows selecting
the range of inputs and outputs which are displayed in
the control panel.
Status
A status LED indicator at the top right shows the current status of the
Soundman. Note that the LED flashes while the MxM is initiliazing
the connection to the Soundman (approx. 10 seconds).
Inputs
Each audio input
can be controlled and monitor via a dedicated panel.
Fader: sets the level.
Level Text: click on the level text to fine tune the level.
Mute button/LED: click on this button to mute or un mute the input
Solo button/LED: click on this button to solo or unsolo the input
Live Matrix / Playback Matrix
The SoundMan has two sets of inputs: each set can be selected by these buttons..
Selected Playback Input Detail
Clicking on one input panel selects the input and shows
additional related controls at he bottom left of the control
panel.
Stop button: stops playback of the currently loaded audio file.
Play button: starts playback of the currently loaded audio file.
TimeCode display: shows the timecode position of the currently
loaded audio file.
Current Selection: shows the file currently loaded on this input. Clicking
on the “Load a new file” button allows loading a new
audio file in the playback input.
Crosspoints
The crosspoint grid shows the levels of the crosspoints.
Left click on any crosspoint to set the level of the crosspoint.
Right-click on a crosspoint to fine-tune its level.
Output control
Each audio output can be controlled and monitor via a dedicated panel.
Fader: sets the level.
Level Text: click on the level text to fine tune the level.
Mute button/LED: click on this button to mute or unmute the output
Solo button/LED: click on this button to solo or unsolo the output
Preset Editing
A preset is a set
of pre-programmed commands which can be sent all at once
to the SoundMan either via the Control Panel or via a
cue in a task. To add a command to a preset, merely change
its associated control value (for example, moving a fader). Once a command
is part of a preset it is drawn with a special violet
background color. To remove a command
from a preset, click on the control with while the Ctrl
key is pressed.
Presets can be
created and executed by the Preset Management Panel
on the right of the control panel.
“Live Edit” button and LED: when activated commands are sent to the SoundMan.
“Preset Preview” and LED: button: when activated user action on any audio
controls modifies the current preset.
“Take button”: the current preset is executed (sent to the SoundMan)
when this button is pushed. Note that “LiveEdit”
is automatically turned ON and “Preset Preview”
is turned OFF.
“New” button: creates a new blank preset.
“Store”: stores the modifications into the current preset.
Preset List: click on one of the presets of the list to select
it and “recall” it. Note that “Preset
Preview” is automatically turned ON and “Live
Edit” is turned OFF.
“Fade” display: shows the fade time associated to the preset.
Click on the display to modify the fade time.
Device Commands
Notes about Positrack:
Commands marked with a star (*) are positracked.
Positracking processes only the values which are
modified from the beginning of the positracked timeline
up to the the positrack point. This means for example
that an input fade level would not be modified by positracking
if there’s no cue which impacts this input fade level
from the beginning of the timeline up to the positrack
point. If there’s a need to set the “initial state”
of positrack, the programmer can insert a preset cue
(which sets the intial values of all of the values which
need to be positracked) at the begining of the timeline.
The positracking of commands which accept a fade
time, positracks only the target fade value (as the
fade is performed by the SoundMan hardware).
Set output level*
To set the level of a specified output, with ramp time.
Output: [Integer] Output number to set.
Gain: [Real] Value to reach in Db (–160 +20).
Time: [Time] Ramp time.
Mute output*
To mute the specified output.
Output: [Integer] Output number to set.
Value: [Enum] “On” or “Off”.
Solo output*
To solo the specified output.
Output: [Integer] Output number to set.
Value: [Enum] “On” or “Off”.
Set output equalizer
To equalize the specified output.
Output: [Integer] Output number to set.
Band: [Integer] The band concerned by the following parameters, available values are 1 to 7. if 0 is specified, all the equalization is canceled.
Filter shape: [Enum] The filter shape
“flat”
“6db/octave lowpass”
“12db/octave lowpass”
“6db/octave highpass”
“12db/octave highpass”
“adjustable Q bandpass or notch (depending on the gain setting)”
“6db/octave low-shelf”
“12db/octave low shelf”
“6db/octave high shelf”
“12db/octave high shelf”.
Center frequency: [Integer] Value of the center frequency, in hertz.
Band width: [Integer] This is the percentage of the bandwidth (only if the filter is “bandpass”).
Gain: [Real] Value of the gain, in dB *10 (e.g. 156 = +15,6dB), from –30 to +30 dB.
Set live input crosspoint level*
To set the mix level of the input of the device
to the specified output, with ramp time.
Input: [Integer] Input to set.
Output: [Integer] Output number to set.
Gain: [Real] Value to reach in Db (–160 +20).
Time: [Time] Ramp time.
Set live input level*
To set the level of an input, with ramp time.
Input: [Integer] Input to set.
Gain: [Real] Value to reach in Db (–160 +20).
Time: [Time] Ramp time.
Mute live input*
To mute an input.
Input: [Integer] Input to set.
Value: [Enum] “On” or “Off”.
Solo live input*
To solo an input.
Input: [Integer] Input to set.
Value: [Enum] “On” or “Off”.
Set live input delay*
To set the delay of an input.
Input: [Integer] Input to set.
Value: [time] Value of the delay.
Set live input equalizer
To equalize an input.
Input: [Integer] Input to set.
Band: [Integer] The band concerned by the following parameters, available values are 1 to 7. If 0 is specified, all the equalization is cancelled.
Filter shape: [Enum] The filter shape
“flat”
“ 6db/octave lowpass”
“12db/octave lowpass”
“6db/octave highpass”
“12db/octave highpass”
“adjustable Q bandpass or notch (depending on the gain setting)”
“6db/octave low-shelf”
“12db/octave low shelf”
“6db/octave high shelf”
“12db/octave high shelf”
Center frequency: [Integer] Value of the center frequency, in hertz.
Band width: [Integer] This is the percentage of the bandwidth (only if the filter is “bandpass”).
Gain: [Real] Value of the gain, in dB *10 (e.g. 156 = +15,6dB), from –30 to +30 dB.
Set playback input crosspoint level*
To set the mix level of the input of the device
to the specified output, with ramp time.
Input: [Integer] Input to set.
Output: [Integer] Output number to set.
Gain: [Real] Value to reach in Db (–160 +20).
Time: [Time] Ramp time.
Set playback input level*
To set the level of an input, with ramp time.
Input: [Integer] Input to set.
Gain: [Real] Value to reach in Db (–160 +20).
Time: [Time] Ramp time.
Mute playback input*
To mute an input.
Input: [Integer] Input to set.
Value: [Enum]
“On”
“Off”
Solo playback input*
To solo an input.
Input: [Integer] Input to set.
Value: [Enum]
“On”
“Off”
Set playback input delay*
To set the delay of an input.
Input: [Integer] Input to set.
Value: [time] Value of the delay.
Set playback input equalizer
To equalize an input.
Input: [Integer] Input to set.
Band: [Integer] The band concerned by the following parameters, available values are 1 to 7. If 0 is specified, all the equalization is canceled.
Filter shape: [Enum] The filter shape
“flat”
“ 6db/octave lowpass”
“12db/octave lowpass”
“6db/octave highpass”
“12db/octave highpass”
“adjustable Q bandpass or notch (depending on the gain setting)”
“6db/octave low-shelf”
“12db/octave low shelf”
“6db/octave high shelf”
“12db/octave high shelf”
Center frequency: [Integer] Value of the center frequency, in hertz.
Band width: [Integer] This is the percentage of the bandwidth (only if the filter is “bandpass”).
Gain: [Real] Value of the gain, in dB *10 (e.g. 156 = +15,6dB), from –30 to +30 dB.
Get Audio File List
To list the files located in the media folder (specified in the setup).
Sub Folder: [String] If specified, list only the files of this sub-folder. If this parameter is empty, the root files are listed..
Return File List: [String] The list will be returned in this variable.
Load for playback*
To load the specified audio file on the input.
Input: [Integer] Input to set.
File Name: [integer] Full path of the file to play.
Track: [Integer] Track offset in the file. This number is a one based. “1” is the first track in the file, which for a stereo file is the left channel.
Note: for backward compatibility, a value of “0” is allowed and specifies also the first track of the file.
Play*
To play the audio file loaded in the input (after a pause, use “resume”).
Input: [Integer] Input to control.
Pause*
To pause the audio file loaded in the input.
Input: [Integer] Input to control.
Stop*
To stop the audio file loaded in the input.
Input: [Integer] Input to control
Rewind*
To rewind the audio file loaded in the input.
Input: [Integer] Input to control.
Resume*
To resume the audio file loaded in the input (play after a pause)
Input: [Integer] Input to control.
Locate*
To locate the audio file loaded in the input
at he specified timecode.
Input: [Integer] Input to control.
TimeCode: [Time] Timecode to locate to.
group
To set the group of this input, for the “General
playback” sync command of the Master device.
Channel Block: [String] A string specifying the inputs and/or outputs present in the block, separated by spaces. “I” stands for live inputs, “P” stands for playback inputs, “O” stands for outputs. A wizard is available for creating these blocks (see picture).
Group: [Integer] Group number to set (see “General playback” command).
Group Play
To play the audio file loaded in these inputs (after a pause, use “resume”).
Group: [Integer] group to control.
Group Pause*
To pause the audio file loaded in the input.
Input: [Integer] Input to control.
Group Stop
To stop the audio file loaded in these inputs.
Group: [Integer] Group to control
Group Rewind
To rewind the audio file loaded in these inputs.
Group: [Integer] Group to control.
Group Resume
To resume the audio file loaded in these inputs (play after a pause)
Group: [Integer] Group to control.
Group Submaster Gain
Sets the level of the submaster for all the i/o of this group.
Group: [Integer]Group to control.
Gain: [Real] Value of the submaster in Db (–160 +20).
Take Preset*
Executes the currently active preset.
Fade Time Mode: [Enum]
Specifies which fade time is used when the preset is executed
if “Preset” the fade time associated to the preset is used. If “Specified”
the “Specified Fade Time” parameter is used.
"Preset’
“Specified”
Specified Fade Time: [Time] Fade time used when executing the preset if the “Fade Time Mode” parameter is set to “Specified”.
Recall Preset*
Recalls a preset and make it
the currently active preset. Note that no commands are
sent to the SoundMan when a preset is recalled. Commands
are sent only when the “Take Preset” command
is executed.
Preset Name: [String] Name of the preset.
Start Timecode
Start the specified timecode generator.
Generator: [Integer]Generator to control (either #1 or #2).
Timecode Type: [Enum] Type of the timecode to generate.
Start Timecode: [Time] Start timecode value.
Stop Timecode
Stop the specified timecode generator.
Generator: [Integer]Generator to control (either #1 or #2).
Device Variables
Status
[Enum] Current status of the SoundMan.
“Stopped”: No communication with the SoundMan
“Initializing”: The MxM is trying to communicate with the specified SoundMan
“Error”: Error in communication process.
“Ready”: The SoundMan is ready to receive commands
“File transfer”: Files are uploaded.
“Transfer canceled”:The file transfer has been canceled.
LastCommandStatus
[Enum] Current status of the las command.
“Success”: Last command sent successfully
“Pending”: A command is being sent
“Error”: Error in sending.
“Timeout”: The SoundMan has not answered.
PresetList
[String] List of the presets defined for this device.
ErrorNumber
[Integer] Number of the last error, if any.
ErrorMessage
[String] Message of the last error, if any.
TimecodeGenerator1
[Time] Current value of the time generated by the timecode generator #1.
TimecodeGenerator2
[Time] Current value of the time generated by the timecode generator #2.
Variables for each input:
InXX_Status
[Enum] Playback status for this input.
“Stopped”
“Playing”
InXX_TimeCode
[Time] Current timecode position for this input.
InXX_Selection
[Integer] Currently loaded selection ID (0 = none).
InXX_Duration
[Integer] Duration of the currently loaded selection.
Revisions
V 1.0.1
Fixed: crash when using the mousewheel on the Device Control Panel.
Fixed: inconsistent display update of the Device Control Panel.
Fixed: crash while positracking.
Fixed: Output Mute/Solo buttons on control panel don’t work correctly.
Fixed: statuses of some XPoints are not correctly reported.
Fixed: XPoint preset entries are sometimes not executed.
Fixed: cannot load files which have embedded spaces in their names.
Fixed: memory leak.
Fixed: crash which occurs sometimes after a timeout is detected.
Added: Support for Showmaster.
V 1.0.2
Fixed: Preset commands are available in Showmaster though they cannot work because there is no Control Panel.
V 1.0.3
Fixed: If several Soundman devices are used in a MedialonManager project, the timecode is not polled in some cases.
V 1.0.4
Added: Support for Showmaster Pro.
V 1.0.5
Fixed: preset commands are now available in Showmaster.
Fixed: conversion problems when editing levels in a text box of the control panel.
Fixed: incorrect management of bank switching in the control panel.
Fixed: incomplete presets if several banks are used in the preset.
Fixed: playback preset recall is only directed to the selected channel of the control panel.
Added: filenames are now shortened in the control panel (if they don’t fit).
Added: crosspoint fader detail window can now be closed by clicking anywhere outside of the detail window.
Modified: filenames for cues and presets are now stored as relative paths to the root media folder.
Added: timecode generator commands and system variables.
V 1.0.6
Fixed: Parameter ‘Start Time’ of Start Timecode doesn’t work.
Fixed: Timecode commands and polling format is not compatible with SoundMan Server version 1.0.62.
V 1.0.7
Fixed: Set Output Equalizer command doesn’t work.
V 6.0.0
Modified: Support of Manager V6/Showmaster V2.
V 6.0.1
Fixed: Setup dialog doesn’t open on the correct screen on a multi-screen configuration.
V 6.0.2
Fixed: Device variables are not reset after a project load (Requires Manager 6.0.3+).
V 6.1.0
Added: Support for Showmaster LE & Showmaster XS platforms.
V 6.1.1
Fixed: The Setup dialog box is not always visible at the device creation time.
V 6.1.2
Fixed: ControlPanel doesn’t display properly if the text magnifying settings (DPI) is greater than 100% into Windows system.
Fixed: Wizard dialog were not opened in the right location and could be displayed outside the right screen.
V 6.7.0
Improved: Support for High DPI displays (require Manager 6.7.0+ or Showmaster Editor 2.7.0+)
Changed: Compatibility for Manager 6.7.0 and Showmaster Editor 2.7.0