dont start timers as recurring timers... this is better for blocking syscalls
[enigma2.git] / lib / dvb / decoder.cpp
index 440317266cc7fd038afab63ee12ef90c49890dea..71b3f39e055d916d2d6c570133b89c04a508b673 100644 (file)
@@ -563,6 +563,20 @@ void eDVBVideo::video_event(int)
                        event.width = evt.u.size.w;
                        /* emit */ m_event(event);
                }
+               else if (evt.type == VIDEO_EVENT_FRAME_RATE_CHANGED)
+               {
+                       struct iTSMPEGDecoder::videoEvent event;
+                       event.type = iTSMPEGDecoder::videoEvent::eventFrameRateChanged;
+                       event.framerate = evt.u.frame_rate;
+                       /* emit */ m_event(event);
+               }
+               else if (evt.type == 16 /*VIDEO_EVENT_PROGRESSIVE_CHANGED*/)
+               {
+                       struct iTSMPEGDecoder::videoEvent event;
+                       event.type = iTSMPEGDecoder::videoEvent::eventProgressiveChanged;
+                       event.progressive = evt.u.frame_rate;
+                       /* emit */ m_event(event);
+               }
                else
                        eDebug("unhandled DVBAPI Video Event %d", evt.type);
        }
@@ -1007,12 +1021,7 @@ RESULT eTSMPEGDecoder::setSyncMaster(int who)
 
 RESULT eTSMPEGDecoder::start()
 {
-       timespec now, tmp;
-       extern timespec service_start;
        RESULT r;
-       clock_gettime(CLOCK_MONOTONIC, &now);
-       tmp = now - service_start;
-       eDebug("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! %d:%d", tmp.tv_sec, tmp.tv_nsec);
        r = setState();
        if (r)
                return r;