diff options
| author | tassaron | 2017-06-17 19:08:18 -0400 |
|---|---|---|
| committer | tassaron | 2017-06-17 19:08:18 -0400 |
| commit | 2c63b053769ecdc2791af3b35392f0ff0b19ad76 (patch) | |
| tree | aabbc3ecec6c1b3c7f8d53346892362ab5717002 /video_thread.py | |
| parent | ffc5966042e1490930396dd541e4c9497a6b7a73 (diff) | |
exports to ~ if no dir given, fix infinite loop when cancelling
Diffstat (limited to 'video_thread.py')
| -rw-r--r-- | video_thread.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/video_thread.py b/video_thread.py index fc877bd..d7220f1 100644 --- a/video_thread.py +++ b/video_thread.py @@ -116,6 +116,7 @@ class Worker(QtCore.QObject): for cont in options['containers']: if cont['name'] == containerName: container = cont['container'] + break vencoders = options['video-codecs'][vcodec] aencoders = options['audio-codecs'][acodec] @@ -222,13 +223,15 @@ class Worker(QtCore.QObject): if not self.canceled: for i in range(0, len(self.completeAudioArray), self.sampleSize): while True: - if i in frameBuffer: + if i in frameBuffer or self.canceled: # if frame's in buffer, pipe it to ffmpeg break # else fetch the next frame & add to the buffer data = self.renderQueue.get() frameBuffer[data[0]] = data[1] self.renderQueue.task_done() + if self.canceled: + break try: self.out_pipe.stdin.write(frameBuffer[i].tobytes()) |
