Enova DVX2100HD Volume
mjones2620
Posts: 86
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
0
Comments
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.
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.
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;
}
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