if (m->message == Message::CHANGED_OPTIONS)
{
doApplyChanges((map<int,int>*)m->parameter);
- viewman->removeView(this);
+ //viewman->removeView(this);
if (!VDR::getInstance()->isConnected()) Command::getInstance()->connectionLost();
}
const static OPTIONDATA optionData[numOptions] =
{
- {9, "Default start margin (minutes)", "Timers", "Start margin", OPTIONTYPE_INT, 20, 5, 0, NULL },
+ {9, "Default start margin (minutes)", "Timers", "Start margin", OPTIONTYPE_INT, 20, 5, 0, NULL },
{10, "Default end margin (minutes)", "Timers", "End margin", OPTIONTYPE_INT, 20, 5, 0, NULL },
{11, "Default priority", "Timers", "Priority", OPTIONTYPE_INT, 100, 99, 0, NULL },
{12, "Default lifetime", "Timers", "Lifetime", OPTIONTYPE_INT, 100, 99, 0, NULL },
void VOptionsMenu::doAdvanced()
{
- static const int numOptions = 2;
+ static const int numOptions = 3;
static const char* options13[] = {"1024", "2048", "4096", "8192", "16384", "32768", "65536"};
+ static const char* options14[] = {"No", "Yes"};
const static OPTIONDATA optionData[numOptions] =
{
{8, "VDR-Pri 0=OK !See forums!", "General", "Live priority", OPTIONTYPE_INT, 100, 0, 0, NULL },
- {13, "TCP receive window size", "Advanced", "TCP receive window", OPTIONTYPE_TEXT, 7, 1, 0, options13 }
+ {13, "TCP receive window size", "Advanced", "TCP receive window", OPTIONTYPE_TEXT, 7, 1, 0, options13 },
+ {14, "Use WSS (PAL only)", "General", "WSS", OPTIONTYPE_TEXT, 2, 0, 0, options14 }
};
// As all the above data is const static, it can be sent to the new View, this stack frame can
Colour transparent(0, 0, 0, 0);
setBackgroundColour(transparent);
+ char* optionWSS = vdr->configLoad("General", "WSS");
+ if (strstr(optionWSS, "Yes")) dowss = true;
+ else dowss = false;
+ Log::getInstance()->log("VVideoLive", Log::DEBUG, "Do WSS: %u", dowss);
+ delete[] optionWSS;
+
wss.setSurface(surface);
wss.setWide(true);
}
case Player::ASPECT43:
{
- Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 43");
- wss.setWide(false);
- wss.draw();
- ViewMan::getInstance()->updateView(this, &wssRegion);
+ if (dowss)
+ {
+ Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 43");
+ wss.setWide(false);
+ wss.draw();
+ ViewMan::getInstance()->updateView(this, &wssRegion);
+ }
break;
}
case Player::ASPECT169:
{
- Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 169");
- wss.setWide(true);
- wss.draw();
- ViewMan::getInstance()->updateView(this, &wssRegion);
+ if (dowss)
+ {
+ Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 169");
+ wss.setWide(true);
+ wss.draw();
+ ViewMan::getInstance()->updateView(this, &wssRegion);
+ }
break;
}
}
barShowing = false;
stickyBar = false;
+ char* optionWSS = vdr->configLoad("General", "WSS");
+ if (strstr(optionWSS, "Yes")) dowss = true;
+ else dowss = false;
+ Log::getInstance()->log("VVideoRec", Log::DEBUG, "Do WSS: %u", dowss);
+ delete[] optionWSS;
+
wss.setSurface(surface);
wss.setWide(true);
{
doBar(0);
player->setLengthBytes(lengthBytes);
- player->setLengthFrames(lengthFrames);
- player->setStartFrame(startFrameNum);
+ if (!isRadio) player->setLengthFrames(lengthFrames);
+ player->setStartFrame(startFrameNum); // means bytes if radio (FIXME not done yet!)
player->play();
playing = true;
}
}
case Remote::FORWARD:
{
+ if (isRadio) return 2;
player->fastForward();
doBar(0);
return 2;
}
case Remote::REVERSE:
{
+ if (isRadio) return 2;
player->fastBackward();
doBar(0);
return 2;
case Remote::FULL:
case Remote::TV:
{
+ if (isRadio) return 2;
toggleChopSides();
return 2;
}
}
case Player::ASPECT43:
{
- Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 43");
- wss.setWide(false);
- wss.draw();
- ViewMan::getInstance()->updateView(this, &wssRegion);
+ if (dowss)
+ {
+ Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 43");
+ wss.setWide(false);
+ wss.draw();
+ ViewMan::getInstance()->updateView(this, &wssRegion);
+ }
break;
}
case Player::ASPECT169:
{
- Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 169");
- wss.setWide(true);
- wss.draw();
- ViewMan::getInstance()->updateView(this, &wssRegion);
+ if (dowss)
+ {
+ Log::getInstance()->log("VVideoRec", Log::DEBUG, "Received do WSS 169");
+ wss.setWide(true);
+ wss.draw();
+ ViewMan::getInstance()->updateView(this, &wssRegion);
+ }
break;
}
}
rectangle(barRegion.x + progBarXbase + 2, barRegion.y + 14, 306, 20, barBlue);
if (currentFrameNum > lengthFrames) return;
-
+ if (lengthFrames == 0) return;
// Draw yellow portion
int progressWidth = 302 * currentFrameNum / lengthFrames;