예제 #1
0
 def createTempProfile(self):
     ConfigModel.create_or_get(name='TempProfile',
                               encode=True,
                               x264_quality=21,
                               x264_tuning=globvar.tuningParameters[0],
                               output_container=globvar.outputContainers[0],
                               available=False)
예제 #2
0
 def createTempProfile(self):
     ConfigModel.create_or_get(
         name='TempProfile',
         encode=True,
         x264_quality=21,
         x264_tuning=globvar.tuningParameters[0],
         output_container=globvar.outputContainers[0],
         available=False)
예제 #3
0
 def copySelectedConfigToTemp(self, i):
     q = ConfigModel.select(ConfigModel)
     temp_query = ConfigModel.update(
         encode=q[i].encode,
         x264_quality=q[i].x264_quality,
         x264_tuning=q[i].x264_tuning,
         output_container=q[i].output_container).where(
             ConfigModel.name == 'TempProfile')
     temp_query.execute()
예제 #4
0
 def copySelectedConfigToTemp(self, i):
     q = ConfigModel.select(ConfigModel)
     temp_query = ConfigModel.update(
         encode = q[i].encode,
         x264_quality = q[i].x264_quality,
         x264_tuning = q[i].x264_tuning,
         output_container = q[i].output_container).where(
             ConfigModel.name == 'TempProfile'
             )
     temp_query.execute()
예제 #5
0
    def createInitial(self):
        # Create some initial models for the user to access
        ConfigModel.create_or_get(name='Basic',
                                  encode=False,
                                  x264_quality=21,
                                  x264_tuning=globvar.tuningParameters[0],
                                  output_container=globvar.outputContainers[0],
                                  available=True)

        ConfigModel.create_or_get(name='Basic Transcode',
                                  encode=True,
                                  x264_quality=21,
                                  x264_tuning=globvar.tuningParameters[0],
                                  output_container=globvar.outputContainers[0],
                                  available=True)
예제 #6
0
    def createInitial(self):
        # Create some initial models for the user to access
        ConfigModel.create_or_get(
            name='Basic',
            encode=False,
            x264_quality=21,
            x264_tuning=globvar.tuningParameters[0],
            output_container=globvar.outputContainers[0],
            available=True)

        ConfigModel.create_or_get(
            name='Basic Transcode',
            encode=True,
            x264_quality=21,
            x264_tuning=globvar.tuningParameters[0],
            output_container=globvar.outputContainers[0],
            available=True)
예제 #7
0
    def __init__(self, parent=None):
        QtGui.QMainWindow.__init__(self, parent)
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)

        self._x264_location = os.path.join("tools", "x264", "x264.exe")
        self._x264_64_location = os.path.join("tools", "x264", "x264_64.exe")
        self._mp4box_location = os.path.join("tools", "mp4box", "mp4box.exe")
        self._mkvmerge_location = os.path.join("tools", "mkvmerge", "mkvmerge.exe")
        self._mkvextract_location = os.path.join("tools", "mkvmerge", "mkvextract.exe")
        self._avisynth_location = ''

        self.isWindowFullScreen = False

        # Class parameters
        self.profile_str = "* Temp Profile *"

        # connect database!
        globvar.db.connect()

        # setup tables
        ConfigModel.create_table(True)
        VideosModel.create_table(True)
        ProgModel.create_table(True)

        ProgModel.create_or_get(
            times_opened = '0',
            x264_location = self._x264_location,
            x264_64_location = self._x264_64_location,
            mp4box_location = self._mp4box_location,
            mkvmerge_location = self._mkvmerge_location,
            mkvextract_location = self._mkvextract_location)

        # set up controllers
        self._videosController = VideosController()
        self._configController = ConfigController()

        self._configController.createInitial()
        self._configController.createTempProfile()

        self.setupInitialConfigView()
예제 #8
0
    def setViewToConfig(self, i):
        config_query = (ConfigModel.select(ConfigModel))[i]

        # Only disable necessary widgets
        self.ui.comboBoxTuning.setUpdatesEnabled(False)
        self.ui.comboBoxOutputContainer.setUpdatesEnabled(False)
        self.ui.checkBoxEncodex264.setUpdatesEnabled(False)
        self.ui.sliderx264Quality.setUpdatesEnabled(False)

        # Set View to Configs
        self.ui.setCheckBoxEncodex264State(config_query)
        self.ui.setSliderx264Quality(config_query)
        self.ui.setComboBoxTuningParameter(config_query)
예제 #9
0
    def GetConfig():
        try:
            config = ConfigModel()
            configParser = ConfigParser()

            configParser.read('config.ini')

            config.Secret = configParser['Developer App Config']['Secret']
            config.ClientID = configParser['Developer App Config']['ClientID']
            config.RedirectURI = configParser['Developer App Config'][
                'RedirectURI']

            config.Scopes = configParser['Scopes']['Scopes']

            config.CoreIdentityBaseUrl = configParser['urls'][
                'CoreIdentityBaseUrl']

            return config
        except Exception:
            raise
예제 #10
0
    def setupInitialConfigView(self):
        # setup listview
        videoPaths = self._videosController.getCurrent()
        for p in videoPaths:
            self.ui.videoListWidget.addItem(p.url)

        # config_page combo boxes
        self.ui.comboBoxTuning.clear()
        for i in globvar.tuningParameters:
            self.ui.comboBoxTuning.addItem(i)

        self.ui.comboBoxOutputContainer.clear()
        for i in globvar.outputContainers:
            self.ui.comboBoxOutputContainer.addItem(i)

        # Setup Views based on database
        self.ui.configComboBox.clear()
        config_query = ConfigModel.select(ConfigModel)
        for config in config_query:
            if config.name != 'TempProfile':
                self.ui.configComboBox.addItem(config.name)

        config_amt = 0
        for config in config_query:
            config_amt = config_amt + 1

        if config_amt == 1:
            # This means only profile available is TempProfile
            self.ui.configComboBox.addItem(self.profile_str)
        elif config_amt == 0:
            # Something is horribly wrong
            resetConfigState()

        # We load initial based on the [0] entry of the config table
        self.setCheckBoxEncodex264State(config_query[0])
        # Slider
        self.setSliderx264Quality(config_query[0])
        # Output Tuning
        self.setComboBoxTuningParameter(config_query[0])

        # Connections
        # page UI elements
        self.ui.startButton.clicked.connect(self.__startButton)

        # menu UI elements
        self.ui.actionOpen.triggered.connect(self.__actionOpen)
        self.ui.actionRemoveAll.triggered.connect(self.__actionRemoveAll)
        self.ui.comboBoxTuning.currentIndexChanged.connect(
            self.__comboBoxTuningCurrentIndexChanged)
        self.ui.comboBoxOutputContainer.currentIndexChanged.connect(
            self.__comboBoxOutputContainerCurrentIndexChanged)
        self.ui.configComboBox.currentIndexChanged.connect(
            self.__comboBoxConfigCurrentIndexChanged)

        # config_page elements
        self.ui.sliderx264Quality.setMinimum(0)
        self.ui.sliderx264Quality.setMaximum(30)
        self.ui.sliderx264Quality.setTickInterval(1);
        self.ui.sliderx264Quality.valueChanged.connect(
            self.__sliderx264Quality)

        self.ui.checkBoxEncodex264.stateChanged.connect(
            self.__checkBoxEncodex264)
예제 #11
0
 def getCurrentConfig(self):
     config_index = self.ui.configComboBox.currentIndex()
     return config_index, (ConfigModel.select(ConfigModel))[config_index]