Esempio n. 1
0
    def load_media(self):
        # update list of media
        dct_media = {}
        # Create personalize media
        for conf_media in self.config.get_lst_media_config():
            name = conf_media.name
            o_media = conf_media.media(conf_media)
            if o_media.is_opened():
                if name in dct_media.keys():
                    log.print_function(logger.error,
                                       "Media %s already exist." % name)
                    continue
                dct_media[name] = o_media
                logger.info("Media %s detected." % name)
            else:
                log.print_function(logger.error,
                                   "Camera %s not detected" % name)
        # Force media_video
        media_video = media.media_video.MediaVideo(
            keys.get_media_file_video_name())
        dct_media[keys.get_media_file_video_name()] = media_video
        # TODO this is a hack to remove missing key warning about publisher
        # Register in publisher
        # media_video._get_cb_publisher()
        # Force create empty media
        from SeaGoatVision.server.media.implementation.empty import Empty

        dct_media[keys.get_media_empty_name()] = Empty(
            keys.get_media_empty_name())

        self.dct_media = dct_media
        self.set_all_publisher()
Esempio n. 2
0
    def load_media(self):
        # update list of media
        dct_media = {}
        # Create personalize media
        for conf_media in self.config.get_lst_media_config():
            name = conf_media.name
            o_media = conf_media.media(conf_media)
            if o_media.is_opened():
                if name in dct_media.keys():
                    log.print_function(logger.error, "Media %s already exist." % name)
                    continue
                dct_media[name] = o_media
                logger.info("Media %s detected." % name)
            else:
                log.print_function(logger.error, "Camera %s not detected" % name)
        # Force media_video
        media_video = media.media_video.MediaVideo(keys.get_media_file_video_name())
        dct_media[keys.get_media_file_video_name()] = media_video
        # TODO this is a hack to remove missing key warning about publisher
        # Register in publisher
        # media_video._get_cb_publisher()
        # Force create empty media
        from SeaGoatVision.server.media.implementation.empty import Empty

        dct_media[keys.get_media_empty_name()] = Empty(keys.get_media_empty_name())

        self.dct_media = dct_media
        self.set_all_publisher()
Esempio n. 3
0
 def _change_media_path(self, value=None):
     # TODO validate if not another execution is created with same argument
     if self.ui.newButton.isEnabled():
         self.new()
     self.ui.txtMedia.setText(keys.get_media_file_video_name())
     if self.ui.previewButton.isEnabled():
         self.preview()
Esempio n. 4
0
 def _update_media_default_edit(self, value):
     if self.edit_mode and not self.mode_new:
         return
     txt = ""
     if value != keys.get_media_file_video_name():
         txt = value
     self.ui.media_default_edit.setText(txt)
Esempio n. 5
0
 def _execute(self, execution_name, media_name, filterchain_name):
     if not self._is_unique_execution_name(execution_name):
         QtGui.QMessageBox.warning(self.ui.centralwidget,
                                   "Wrong name",
                                   "The execution name \"%s\" already \
                                   exist." % execution_name,
                                   QtGui.QMessageBox.Ok,
                                   QtGui.QMessageBox.Ok)
         return False
     file_name = self.shared_info.get(SharedInfo.GLOBAL_PATH_MEDIA)
     is_client_manager = media_name == keys.get_media_file_video_name()
     status = self.controller.start_filterchain_execution(
         execution_name,
         media_name,
         filterchain_name,
         file_name,
         is_client_manager
     )
     if not status:
         self.cancel()
         return False
     self._mode_edit(False)
     exec_info = {"media": media_name,
                  "execution_name": execution_name,
                  "filterchain_name": filterchain_name,
                  "file_name": file_name}
     self.shared_info.set(SharedInfo.GLOBAL_START_EXEC, exec_info)
     self._lst_execution_clicked()
     return True
Esempio n. 6
0
 def _update_media_default_edit(self, value):
     if self.edit_mode and not self.mode_new:
         return
     txt = ""
     if value != keys.get_media_file_video_name():
         txt = value
     self.ui.media_default_edit.setText(txt)
Esempio n. 7
0
 def _start_execution(self, value=None):
     if not value or not isinstance(value, dict):
         return
     media_name = value.get("media")
     if media_name == keys.get_media_file_video_name():
         self.set_slider_value(1)
         self.is_play = False
         self.play()
Esempio n. 8
0
 def _start_execution(self, value=None):
     if not value or not isinstance(value, dict):
         return
     media_name = value.get("media")
     if media_name == keys.get_media_file_video_name():
         self.set_slider_value(1)
         self.is_play = False
         self.play()
Esempio n. 9
0
    def load_media(self):
        # update list of media
        dct_media = {}
        # Create personalize media
        for conf_media in self.config.get_lst_media_config():
            name = conf_media.name
            o_media = conf_media.media(conf_media)
            if o_media.is_opened():
                if name in dct_media.keys():
                    log.print_function(logger.error, "Media %s already exist." % name)
                    continue
                dct_media[name] = o_media
                logger.info("Media %s detected." % name)
            else:
                log.print_function(logger.error, "Camera %s not detected" % name)
        # Force media_video
        dct_media[keys.get_media_file_video_name()] = media.media_video.Media_video(keys.get_media_file_video_name())

        self.dct_media = dct_media
 def _execute(self, execution_name, media_name, filterchain_name):
     if not self._is_unique_execution_name(execution_name):
         QtGui.QMessageBox.warning(self.ui.centralwidget,
                                   "Wrong name",
                                   "The execution name \"%s\" already exist." % execution_name,
                                   QtGui.QMessageBox.Ok, QtGui.QMessageBox.Ok)
         return False
     file_name = self.shared_info.get("path_media")
     is_client_manager = media_name == keys.get_media_file_video_name()
     status = self.controller.start_filterchain_execution(execution_name, media_name,
                                                          filterchain_name, file_name=file_name,
                                                          is_client_manager=is_client_manager)
     if not status:
         self.cancel()
         return False
     self.ui.lstExecution.addItem(execution_name)
     self.ui.lstExecution.setCurrentRow(self.ui.lstExecution.count() - 1)
     self._mode_edit(False)
     self.shared_info.set("start_execution", {"media" : media_name,
                                              "execution_name" : execution_name,
                                              "filterchain_name" : filterchain_name,
                                              "file_name" : file_name})
     return True