From a3557cbc4f192b520f7fccd849ebf4f70937cfee Mon Sep 17 00:00:00 2001
From: DH4
Date: Sat, 3 Jun 2017 19:10:27 -0500
Subject: UI Updates, encode lockout, added encoder-options.json. FIXME: Add
encoder options to the UI.
---
encoder-options.json | 191 ++++++++++++++++++++++++++++
main.py | 44 +++++++
mainwindow.ui | 350 ++++++++++++++++++++++++++++-----------------------
3 files changed, 427 insertions(+), 158 deletions(-)
create mode 100644 encoder-options.json
diff --git a/encoder-options.json b/encoder-options.json
new file mode 100644
index 0000000..699ead4
--- /dev/null
+++ b/encoder-options.json
@@ -0,0 +1,191 @@
+{
+ "containers":[
+ {
+ "name": "MP4",
+ "container": "mp4",
+ "default-vcodec": "H264",
+ "default-acodec": "AAC",
+ "video-codecs": [
+ {
+ "name": "H264",
+ "encoders": ["libx264"]
+ },
+ {
+ "name": "H264 (nvenc)",
+ "encoders": ["nvenc_264"]
+ },
+ {
+ "name": "MPEG4",
+ "encoders": ["mpeg4"]
+ }
+ ],
+ "audio-codecs": [
+ {
+ "name": "AAC",
+ "encoders": ["libfdk_aac","aac"]
+ },
+ {
+ "name": "AC3",
+ "encoders": ["ac3"]
+ },
+ {
+ "name": "MP3",
+ "encoders": ["libmp3lame"]
+ }
+ ]
+ },
+ {
+ "name": "MOV",
+ "container": "mov",
+ "default-vcodec": "H264",
+ "default-acodec": "AAC",
+ "video-codecs": [
+ {
+ "name": "H264",
+ "encoders": ["libx264"]
+ },
+ {
+ "name": "H264 (nvenc)",
+ "encoders": ["nvenc_264"]
+ },
+ {
+ "name": "MPEG4",
+ "encoders": ["mpeg4"]
+ },
+ {
+ "name": "XVID",
+ "encoders": ["libxvid"]
+ }
+ ],
+ "audio-codecs": [
+ {
+ "name": "AAC",
+ "encoders": ["libfdk_aac","aac"]
+ },
+ {
+ "name": "AC3",
+ "encoders": ["ac3"]
+ },
+ {
+ "name": "MP3",
+ "encoders": ["libmp3lame"]
+ },
+ {
+ "name": "PCM s16 LE",
+ "encoders": ["pcm_s16le"]
+ }
+ ]
+ },
+ {
+ "name": "AVI",
+ "container": "avi",
+ "default-vcodec": "H264",
+ "default-acodec": "AAC",
+ "video-codecs": [
+ {
+ "name": "H264",
+ "encoders": ["libx264"]
+ },
+ {
+ "name": "H264 (nvenc)",
+ "encoders": ["nvenc_264"]
+ },
+ {
+ "name": "MPEG4",
+ "encoders": ["mpeg4"]
+ },
+ {
+ "name": "MPEG2",
+ "encoders": ["mp2video"]
+ },
+ {
+ "name": "DV",
+ "encoders": ["dvvideo"]
+ },
+ {
+ "name": "WMV",
+ "encoders": ["wmv2"]
+ }
+ ],
+ "audio-codecs": [
+ {
+ "name": "AAC",
+ "encoders": ["libfdk_aac","aac"]
+ },
+ {
+ "name": "AC3",
+ "encoders": ["ac3"]
+ },
+ {
+ "name": "WMA",
+ "encoders": ["wmav2"]
+ },
+ {
+ "name": "MP3",
+ "encoders": ["libmp3lame"]
+ },
+ {
+ "name": "PCM s16 LE",
+ "encoders": ["pcm_s16le"]
+ }
+ ]
+ },
+ {
+ "name": "WEBM",
+ "container": "webm",
+ "default-vcodec": "VP9",
+ "default-acodec": "Vorbis",
+ "video-codecs": [
+ {
+ "name": "VP9",
+ "encoders": ["libvpx-vp9"]
+ },
+ {
+ "name": "VP8",
+ "encoders": ["libvpx"]
+ }
+ ],
+ "audio-codecs": [
+ {
+ "name": "Vorbis",
+ "encoders": ["vorbis"]
+ }
+ ]
+ },
+ {
+ "name": "FLV",
+ "container": "flv",
+ "default-vcodec": "FLV",
+ "default-acodec": "Vorbis",
+ "video-codecs": [
+ {
+ "name": "Sorenson (flv)",
+ "encoders": ["flv"]
+ },
+ {
+ "name": "H264",
+ "encoders": ["libx264"]
+ },
+ {
+ "name": "MPEG4",
+ "encoders": ["mpeg4"]
+ }
+ ],
+ "audio-codecs": [
+ {
+ "name": "MP3",
+ "encoders": ["libmp3lame"]
+ },
+ {
+ "name": "Vorbis",
+ "encoders": ["vorbis"]
+ },
+ {
+ "name": "PCM s16 LE",
+ "encoders": ["pcm_s16le"]
+ }
+ ]
+ }
+ ]
+
+}
\ No newline at end of file
diff --git a/main.py b/main.py
index 49fe469..c5080f3 100644
--- a/main.py
+++ b/main.py
@@ -305,9 +305,53 @@ class Main(QtCore.QObject):
if status:
self.window.pushButton_createVideo.setEnabled(False)
self.window.pushButton_Cancel.setEnabled(True)
+ self.window.comboBox_resolution.setEnabled(False)
+ self.window.stackedWidget.setEnabled(False)
+ self.window.tab_encoderSettings.setEnabled(False)
+ self.window.label_audioFile.setEnabled(False)
+ self.window.toolButton_selectAudioFile.setEnabled(False)
+ self.window.label_outputFile.setEnabled(False)
+ self.window.toolButton_selectOutputFile.setEnabled(False)
+ self.window.lineEdit_audioFile.setEnabled(False)
+ self.window.lineEdit_outputFile.setEnabled(False)
+ self.window.pushButton_addComponent.setEnabled(False)
+ self.window.pushButton_removeComponent.setEnabled(False)
+ self.window.pushButton_listMoveDown.setEnabled(False)
+ self.window.pushButton_listMoveUp.setEnabled(False)
+ self.window.comboBox_openPreset.setEnabled(False)
+ self.window.pushButton_removePreset.setEnabled(False)
+ self.window.pushButton_savePreset.setEnabled(False)
+ self.window.pushButton_openProject.setEnabled(False)
+ self.window.listWidget_componentList.setEnabled(False)
+
+ self.window.label_background.setEnabled(False)
+ self.window.lineEdit_background.setEnabled(False)
+ self.window.toolButton_selectBackground.setEnabled(False)
else:
self.window.pushButton_createVideo.setEnabled(True)
self.window.pushButton_Cancel.setEnabled(False)
+ self.window.comboBox_resolution.setEnabled(True)
+ self.window.stackedWidget.setEnabled(True)
+ self.window.tab_encoderSettings.setEnabled(True)
+ self.window.label_audioFile.setEnabled(True)
+ self.window.toolButton_selectAudioFile.setEnabled(True)
+ self.window.lineEdit_audioFile.setEnabled(True)
+ self.window.label_outputFile.setEnabled(True)
+ self.window.toolButton_selectOutputFile.setEnabled(True)
+ self.window.lineEdit_outputFile.setEnabled(True)
+ self.window.pushButton_addComponent.setEnabled(True)
+ self.window.pushButton_removeComponent.setEnabled(True)
+ self.window.pushButton_listMoveDown.setEnabled(True)
+ self.window.pushButton_listMoveUp.setEnabled(True)
+ self.window.comboBox_openPreset.setEnabled(True)
+ self.window.pushButton_removePreset.setEnabled(True)
+ self.window.pushButton_savePreset.setEnabled(True)
+ self.window.pushButton_openProject.setEnabled(True)
+ self.window.listWidget_componentList.setEnabled(True)
+
+ self.window.label_background.setEnabled(True)
+ self.window.lineEdit_background.setEnabled(True)
+ self.window.toolButton_selectBackground.setEnabled(True)
diff --git a/mainwindow.ui b/mainwindow.ui
index 5e10028..f9e8f5e 100644
--- a/mainwindow.ui
+++ b/mainwindow.ui
@@ -325,11 +325,11 @@
0
-
+
- Input Settings
+ Export Video
-
+
10
@@ -348,10 +348,16 @@
- 100
+ 85
0
+
+
+ 80
+ 16777215
+
+
80
@@ -427,7 +433,7 @@
- 100
+ 85
0
@@ -482,9 +488,142 @@
+ -
+
+
-
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 85
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
+ Output File
+
+
+ Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 28
+
+
+
+
+ 16777215
+ 28
+
+
+
+
+ -
+
+
+
+ 0
+ 28
+
+
+
+
+ 16777215
+ 28
+
+
+
+ ...
+
+
+
+
+
+
+
+ -
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+ 24
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+ QSizePolicy::Minimum
+
+
+
+ 10
+ 20
+
+
+
+
+ -
+
+
+ Create Video
+
+
+
+ -
+
+
+ false
+
+
+ Cancel
+
+
+
+
+
+
+
+
-
+
Encoder Settings
@@ -504,17 +643,40 @@
- 98
+ 85
0
- Video Format
+ Container
+
+
+
+ -
+
+
+
+ 150
+ 0
+
-
-
+
+
+ Qt::Horizontal
+
+
+ QSizePolicy::Minimum
+
+
+
+ 5
+ 5
+
+
+
-
@@ -525,12 +687,25 @@
- Video Preset
+ Resolution
-
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
@@ -546,7 +721,7 @@
- 98
+ 85
0
@@ -590,12 +765,12 @@
- Resolution
+ Video Bitrate
-
-
+
@@ -611,7 +786,7 @@
- 98
+ 85
0
@@ -655,158 +830,17 @@
- Bitrate
+ Audio Bitrate
-
-
+
-
-
- Export Video
-
-
-
- 10
-
- -
-
-
-
-
-
-
-
-
-
- 0
- 0
-
-
-
-
- 100
- 0
-
-
-
-
- 0
- 0
-
-
-
- Output File
-
-
- Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 0
- 28
-
-
-
-
- 16777215
- 28
-
-
-
-
- -
-
-
-
- 0
- 28
-
-
-
-
- 16777215
- 28
-
-
-
- ...
-
-
-
-
-
-
-
- -
-
-
- 0
-
-
-
-
-
-
- 0
- 0
-
-
-
- 24
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Minimum
-
-
-
- 10
- 20
-
-
-
-
- -
-
-
- Create video
-
-
-
- -
-
-
- true
-
-
- Cancel
-
-
-
-
-
-
-
-
-
--
cgit v1.2.3