Enova DVX2100HD Volume
mjones2620
Junior Member
Novice question here,
I am trying to program an Enova DVX2100HD using the audio "amp" output. In the manual there is a section that explains how you could send specific volume levels to this output, but obviously I'd like to be able to send it variable output levels based on how loud I want it. I have created two buttons on my TP, up and down. For each button, what should my code look like?
Thank you,
Matt
I am trying to program an Enova DVX2100HD using the audio "amp" output. In the manual there is a section that explains how you could send specific volume levels to this output, but obviously I'd like to be able to send it variable output levels based on how loud I want it. I have created two buttons on my TP, up and down. For each button, what should my code look like?
Thank you,
Matt
Comments
-
From the manual:
AUDOUT_VOLUME
Sets the volume on the
specified audio output.
Sets the volume on the audio output addressed by the D:P:S to <value>.
Syntax:
SEND_COMMAND <DEV>, "'AUDOUT_VOLUME-<VALUE>'"
Variable:
value = 0..100
Example:
SEND_COMMAND AUDOUT_VOLUME_1, "'AUDOUT_VOLUME-50'"
Sets the volume of audio output port #1 to 50.
Note: Volume attenuation on the DVX-2150, 2155, 3150 & 3155 is not set by
percentage, like it was on earlier DVX models: On the 215x and 315x, the
output volume slider changes .5dB per click, to provide a more subtle
adjustment.
Unity gain is at 88, so a setting of 100 is actually 6dB gain. A setting of 20 would
be -34 reduction (88-20=68 clicks. @ .5dB per click =34 dB). This is only the
output slider.
See Appendix C - Volume Attenuation Table on page 123. -
Note that there is a lot of value in the "complication" of direct set volume levels. Your programming needs to keep track of where the volume is, and when you get an up or down button, send the next appropriate level.
This lets you:
* know the level at all times without having to ask the unit.
* chose the increment/decrement amount per "step" so you can regulate the speed and granularity of the volume contour.
* re-contour the volume curve to correct or create non-linearity so you get a wider range of adjustment that matches the audio perception.
* start a source at a known volume level.
* do volume ramps on turn-on for smooth startup.
* build timed events that can regulate the volume over a period of time.
* create volume limits.
* choose how far to allow the volume to move per hold on the button, to manage volume runaway.
While many audio devices offer both "up/down" and discrete volume settings, the benefits of discrete operation are many, and worth the work to include. -
Yes John you are correct that is what I have these structures for:
Struct TVolume
{
Integer Type;
Integer Muted;
Integer RampLevel;
TAFLLevel AFLLevel;
TCommand CmdUp;
TCommand CmdDown;
TCommand CmdUpRelease;
TCommand CmdDownRelease;
TCommand CmdMute;
TCommand CmdUnMute;
TCommand QryVolume;
TCommand QryMute;
}
Struct TAFLLevel
{
Float Current;
Float Pending;
Integer ScalingRequired;
Float MinDevice;
Float MaxDevice;
SInteger MinPanel;
SInteger MaxPanel;
Integer ModuleScaling;
SInteger MinModule;
SInteger MaxModule;
Float Step;
Float StepRepeat;
}
Struct TAudio
{
Dev Device;
Dev vDevice;
Integer Zone;
Integer Type;
Integer SubType;
Integer Gated;
//think about removing these 2
Integer ControlType;
Integer SourceIndex;
Char Name[LEN_NAME];
Char DeviceType[LEN_NAME];
Char DeviceID[LEN_NAME];
Char Caption[LEN_CAPTION];
TVolume Volume;
TCommand CurrentCommand;
} -
Jim Donachiue wrote: »From the manual:
AUDOUT_VOLUME
Sets the volume on the
specified audio output.
Sets the volume on the audio output addressed by the D:P:S to <value>.
Syntax:
SEND_COMMAND <DEV>, "'AUDOUT_VOLUME-<VALUE>'"
Variable:
value = 0..100
Example:
SEND_COMMAND AUDOUT_VOLUME_1, "'AUDOUT_VOLUME-50'"
Sets the volume of audio output port #1 to 50.
Note: Volume attenuation on the DVX-2150, 2155, 3150 & 3155 is not set by
percentage, like it was on earlier DVX models: On the 215x and 315x, the
output volume slider changes .5dB per click, to provide a more subtle
adjustment.
Unity gain is at 88, so a setting of 100 is actually 6dB gain. A setting of 20 would
be -34 reduction (88-20=68 clicks. @ .5dB per click =34 dB). This is only the
output slider.
See Appendix C - Volume Attenuation Table on page 123.
So my only option is to have a static value? How do I attenuate? I don't see a page 123 on my 2100 manual
Categories
- All Categories
- 2.5K AMX General Discussion
- 922 AMX Technical Discussion
- 514 AMX Hardware
- 502 AMX Control Products
- 3 AMX Video Distribution Products
- 9 AMX Networked AV (SVSI) Products
- AMX Workspace & Collaboration Products
- 3.4K AMX Software
- 151 AMX Resource Management Suite Software
- 386 AMX Design Tools
- 2.4K NetLinx Studio
- 135 Duet/Cafe Duet
- 248 NetLinx Modules & Duet Modules
- 57 AMX RPM Forum
- 228 MODPEDIA - The Public Repository of Modules for Everyone
- 943 AMX Specialty Forums
- 2.6K AMXForums Archive
- 2.6K AMXForums Archive Threads
- 1.5K AMX Hardware
- 432 AMX Applications and Solutions
- 249 Residential Forum
- 182 Tips and Tricks
- 146 AMX Website/Forums