Add support for svdr command "stat".

This commit is contained in:
mini73 2012-04-20 16:51:04 +02:00 committed by Johns
parent 3e39ffd5e0
commit 24a8c7f763
2 changed files with 47 additions and 16 deletions

View File

@ -1,6 +1,14 @@
User johns User johns
Date: Date:
User mini73
Date: Fri Apr 20 16:51:14 CEST 2012
Add support for svdr command "stat".
User johns
Date: Fri Apr 20 16:05:40 CEST 2012
Made showing black picture configurable. Made showing black picture configurable.
Show black picture, if no video stream is available. Show black picture, if no video stream is available.
Setup split into foldable sections. Setup split into foldable sections.

View File

@ -624,10 +624,10 @@ void cMenuSetupSoft::Create(void)
&VideoFormat, "4:3", "16:9")); &VideoFormat, "4:3", "16:9"));
if (VideoFormat) { if (VideoFormat) {
Add(new cMenuEditStraItem(trVDR("Setup.DVB$Video display format"), Add(new cMenuEditStraItem(trVDR("Setup.DVB$Video display format"),
&VideoDisplayFormat, 3, video_display_formats_16_9)); &VideoDisplayFormat, 3, video_display_formats_16_9));
} else { } else {
Add(new cMenuEditStraItem(trVDR("Setup.DVB$Video display format"), Add(new cMenuEditStraItem(trVDR("Setup.DVB$Video display format"),
&VideoDisplayFormat, 3, video_display_formats_4_3)); &VideoDisplayFormat, 3, video_display_formats_4_3));
} }
// FIXME: switch config gray/color configuration // FIXME: switch config gray/color configuration
@ -734,8 +734,8 @@ eOSState cMenuSetupSoft::ProcessKey(eKeys key)
if (key != kNone) { if (key != kNone) {
// update menu only, if something on the structure has changed // update menu only, if something on the structure has changed
// this needed because VDR menus are evil slow // this needed because VDR menus are evil slow
if (old_general != General || old_video != Video if (old_general != General || old_video != Video || old_audio != Audio
|| old_audio != Audio || old_video_format != VideoFormat) { || old_video_format != VideoFormat) {
Create(); // update menu Create(); // update menu
} else { } else {
for (i = 0; i < RESOLUTIONS; ++i) { for (i = 0; i < RESOLUTIONS; ++i) {
@ -843,8 +843,9 @@ void cMenuSetupSoft::Store(void)
SetupStore("VideoFormat", Setup.VideoFormat); SetupStore("VideoFormat", Setup.VideoFormat);
if (Setup.VideoDisplayFormat != VideoDisplayFormat) { if (Setup.VideoDisplayFormat != VideoDisplayFormat) {
Setup.VideoDisplayFormat = VideoDisplayFormat; Setup.VideoDisplayFormat = VideoDisplayFormat;
cDevice::PrimaryDevice()->SetVideoDisplayFormat( cDevice::
eVideoDisplayFormat(Setup.VideoDisplayFormat)); PrimaryDevice()->SetVideoDisplayFormat(eVideoDisplayFormat
(Setup.VideoDisplayFormat));
printf("video-display-format\n"); printf("video-display-format\n");
} }
SetupStore("VideoDisplayFormat", Setup.VideoDisplayFormat); SetupStore("VideoDisplayFormat", Setup.VideoDisplayFormat);
@ -907,17 +908,20 @@ void cMenuSetupSoft::Store(void)
CodecSetAudioPassthrough(ConfigAudioPassthrough); CodecSetAudioPassthrough(ConfigAudioPassthrough);
SetupStore("AudioDownmix", ConfigAudioDownmix = AudioDownmix); SetupStore("AudioDownmix", ConfigAudioDownmix = AudioDownmix);
CodecSetAudioDownmix(ConfigAudioDownmix); CodecSetAudioDownmix(ConfigAudioDownmix);
SetupStore("AudioSoftvol", ConfigAudioSoftvol = AudioSoftvol ); SetupStore("AudioSoftvol", ConfigAudioSoftvol = AudioSoftvol);
AudioSetSoftvol(ConfigAudioSoftvol); AudioSetSoftvol(ConfigAudioSoftvol);
SetupStore("AudioNormalize", ConfigAudioNormalize = AudioNormalize ); SetupStore("AudioNormalize", ConfigAudioNormalize = AudioNormalize);
SetupStore("AudioMaxNormalize", ConfigAudioMaxNormalize = AudioMaxNormalize ); SetupStore("AudioMaxNormalize", ConfigAudioMaxNormalize =
AudioMaxNormalize);
AudioSetNormalize(ConfigAudioNormalize, ConfigAudioMaxNormalize); AudioSetNormalize(ConfigAudioNormalize, ConfigAudioMaxNormalize);
SetupStore("AudioCompression", ConfigAudioCompression = AudioCompression ); SetupStore("AudioCompression", ConfigAudioCompression = AudioCompression);
SetupStore("AudioMaxCompression", ConfigAudioMaxCompression = AudioMaxCompression ); SetupStore("AudioMaxCompression", ConfigAudioMaxCompression =
AudioMaxCompression);
AudioSetCompression(ConfigAudioCompression, ConfigAudioMaxCompression); AudioSetCompression(ConfigAudioCompression, ConfigAudioMaxCompression);
SetupStore("AudioStereoDescent", ConfigAudioStereoDescent = AudioStereoDescent ); SetupStore("AudioStereoDescent", ConfigAudioStereoDescent =
AudioStereoDescent);
AudioSetStereoDescent(ConfigAudioStereoDescent); AudioSetStereoDescent(ConfigAudioStereoDescent);
SetupStore("AudioBufferTime", ConfigAudioBufferTime = AudioBufferTime ); SetupStore("AudioBufferTime", ConfigAudioBufferTime = AudioBufferTime);
} }
////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////
@ -2019,7 +2023,7 @@ bool cPluginSoftHdDevice::SetupParse(const char *name, const char *value)
return true; return true;
} }
if (!strcasecmp(name, "AudioSoftvol")) { if (!strcasecmp(name, "AudioSoftvol")) {
AudioSetSoftvol(ConfigAudioSoftvol = atoi(value)); AudioSetSoftvol(ConfigAudioSoftvol = atoi(value));
return true; return true;
} }
if (!strcasecmp(name, "AudioNormalize")) { if (!strcasecmp(name, "AudioNormalize")) {
@ -2106,13 +2110,19 @@ static const char *SVDRPHelpText[] = {
" 12: toggle audio pass-through\n" " 12: toggle audio pass-through\n"
" 13: decrease audio delay by 10ms\n" " 13: decrease audio delay by 10ms\n"
" 14: increase audio delay by 10ms\n" " 14: increase audio delay by 10ms\n"
" 20: disable fullscreen\n 21: enable fullscreen\n" " 20: disable fullscreen\n 21: enable fullscreen\n"
" 22: toggle fullscreen\n" " 22: toggle fullscreen\n"
" 23: disable auto-crop\n 24: enable auto-crop\n" " 23: disable auto-crop\n 24: enable auto-crop\n"
" 25: toggle auto-crop\n" " 25: toggle auto-crop\n"
" 30: stretch 4:3 to 16:9\n 31: pillar box 4:3 in 16:9\n" " 30: stretch 4:3 to 16:9\n 31: pillar box 4:3 in 16:9\n"
" 32: center cut-out 4:3 to 16:9\n" " 32: center cut-out 4:3 to 16:9\n"
" 39: rotate 4:3 to 16:9 zoom mode\n", " 39: rotate 4:3 to 16:9 zoom mode\n",
"STAT\n" " Display SuspendMode of the plugin.\n\n"
" reply code is 910 + SuspendMode\n"
" SUSPEND_EXTERNAL == -1 (909)\n"
" NOT_SUSPENDED == 0 (910)\n"
" SUSPEND_NORMAL == 1 (911)\n"
" SUSPEND_DETACHED == 2 (912)\n",
NULL NULL
}; };
@ -2137,6 +2147,19 @@ const char **cPluginSoftHdDevice::SVDRPHelpPages(void)
cString cPluginSoftHdDevice::SVDRPCommand(const char *command, cString cPluginSoftHdDevice::SVDRPCommand(const char *command,
const char *option, __attribute__ ((unused)) int &reply_code) const char *option, __attribute__ ((unused)) int &reply_code)
{ {
if (!strcasecmp(command, "STAT")) {
reply_code = 910 + SuspendMode;
switch (SuspendMode) {
case SUSPEND_EXTERNAL:
return "SuspendMode is SUSPEND_EXTERNAL";
case NOT_SUSPENDED:
return "SuspendMode is NOT_SUSPENDED";
case SUSPEND_NORMAL:
return "SuspendMode is SUSPEND_NORMAL";
case SUSPEND_DETACHED:
return "SuspendMode is SUSPEND_DETACHED";
}
}
if (!strcasecmp(command, "SUSP")) { if (!strcasecmp(command, "SUSP")) {
if (cSoftHdControl::Player) { // already suspended if (cSoftHdControl::Player) { // already suspended
return "SoftHdDevice already suspended"; return "SoftHdDevice already suspended";