return 0;
}
+printf("sent request\n");
+
if (!getPacket())
{
pthread_mutex_unlock(&mutex);
return 0;
}
+printf("got reply\n");
+
int toReturn = (int)extractULONG();
freePacket();
}
EventList* VDR::getChannelSchedule(ULONG number, time_t start, ULONG duration)
-{
+{
// retrieve event list (vector of events) from vdr within filter window. duration is in seconds
if (!connected) return 0;
case Remote::BACK:\r
case Remote::GUIDE:\r
{\r
- // return to normal TV mode TODO vvideolive should handle this (via message?)\r
- Video::getInstance()->setMode(Video::NORMAL);\r
+ // return to normal TV mode\r
videoLive->setEpgMode(FALSE);\r
return 4;\r
}\r
case Remote::CHANNELUP:\r
{\r
- // change up channel on live TV TODO vvideolive should handle this\r
+ // change up channel on live TV\r
Message* m = new Message();\r
m->from = this;\r
m->to = videoLive;\r
return 2;\r
}\r
case Remote::CHANNELDOWN:\r
- { // change down channel on live TV TODO vvideolive should handle this\r
+ { // change down channel on live TV\r
Message* m = new Message();\r
m->from = this;\r
m->to = videoLive;\r
return 1;
}
+int Video::getMode()
+{
+ return mode;
+}
+
int Video::signalOff()
{
if (ioctl(fdVideo, AV_SET_VID_DENC, 0) != 0) return 0;
int test2();
#endif
-
+ int getMode();
int getFD();
UCHAR getFormat();
UINT getScreenWidth();
unavailableView = NULL;
streamType = tstreamType;
epgmode=false;
+ videoMode = Video::getInstance()->getMode();
if (streamType == VDR::RADIO) player = new PlayerVideo(Command::getInstance(), 0, 1);
else player = new PlayerVideo(Command::getInstance(), 0, 0);
else stop();
return 4;
}
+ // Take up and down from new remote and do live banner
+ case Remote::UP:
+ case Remote::DOWN:
+ {
+ doBanner(true);
+ return 2;
+ }
case Remote::DF_UP:
case Remote::CHANNELUP:
{
void VVideoLive::stop(int noRemoveVLB)
{
-printf("1\n");
if (unavailable) return;
-printf("2\n");
if (!noRemoveVLB && VLiveBanner::getInstance()) viewman->removeView(VLiveBanner::getInstance()); // if live banner is present, remove it. won't cause damage if its not present
-printf("3\n");
player->stop();
-printf("4\n");
+ Log::getInstance()->log("VVideoLive", Log::DEBUG, "Delay starts here due to time taken by plugin to stop");
vdr->stopStreaming();
-printf("5\n");
+ Log::getInstance()->log("VVideoLive", Log::DEBUG, "Delay ends here due to time taken by plugin to stop");
}
UINT VVideoLive::upChannel()
void VVideoLive::setEpgMode(bool mode)
{
epgmode = mode;
-}
+ // Ok so we do need this function
+ // but FIXME improve this, integrate with live mode switching from remote
+ if (mode == FALSE)
+ {
+ Video::getInstance()->setMode(videoMode);
+ }
+}
int xpos;
bool epgmode;
void showEPG();
+ int videoMode;
};
#endif