format, ac3 and crypted indicators now working
[enigma2.git] / lib / nav / core.cpp
index 2dfe630d165f71ea908be6a6622c133123ea99f5..deec3739d83ce5506cc7d5ef16e01ad8a8c0a42c 100644 (file)
@@ -43,6 +43,9 @@ void eNavigation::serviceEvent(iPlayableService* service, int event)
        case iPlayableService::evUpdatedEventInfo:
                m_event(this, evUpdatedEventInfo);
                break;
+       case iPlayableService::evUpdatedInfo:
+               m_event(this, evUpdatedInfo);
+               break;
        default:
                break;
        }
@@ -115,31 +118,16 @@ RESULT eNavigation::stopService(void)
        return 0;
 }
 
-RESULT eNavigation::recordService(const eServiceReference &service)
+RESULT eNavigation::recordService(const eServiceReference &ref, ePtr<iRecordableService> &service)
 {
-       if (m_recordingService)
-               endRecording();
-       
        assert(m_servicehandler);
-       RESULT res = m_servicehandler->record(service, m_recordingService);
-       if (m_recordingService)
-       {
-               res = m_recordingService->start();
-       }
+       RESULT res = m_servicehandler->record(ref, service);
+       eDebug("record: %d", res);
        if (res)
-               m_recordingService = 0;
+               service = 0;
        return res;
 }
 
-RESULT eNavigation::endRecording()
-{
-       if (!m_recordingService)
-               return -1;
-       m_recordingService->stop();
-       m_recordingService = 0;
-       return 0;
-}
-
 RESULT eNavigation::pause(int dop)
 {
        if (!m_runningService)