Merge pull request #5 from IamDH4/tassaron-render-test
minor fixes, comments
This commit is contained in:
commit
6620f48bfd
|
@ -95,19 +95,16 @@ class Component(__base__.Component):
|
||||||
im = Image.new("RGBA", (width, height),(0,0,0,0))
|
im = Image.new("RGBA", (width, height),(0,0,0,0))
|
||||||
image = ImageQt(im)
|
image = ImageQt(im)
|
||||||
|
|
||||||
image1 = QtGui.QImage(image)
|
painter = QPainter(image)
|
||||||
painter = QPainter(image1)
|
|
||||||
self.titleFont.setPixelSize(self.fontSize)
|
self.titleFont.setPixelSize(self.fontSize)
|
||||||
painter.setFont(self.titleFont)
|
painter.setFont(self.titleFont)
|
||||||
painter.setPen(QColor(*self.textColor))
|
painter.setPen(QColor(*self.textColor))
|
||||||
|
|
||||||
fm = QtGui.QFontMetrics(self.titleFont)
|
|
||||||
painter.drawText(self.xPosition, self.yPosition, self.title)
|
painter.drawText(self.xPosition, self.yPosition, self.title)
|
||||||
painter.end()
|
painter.end()
|
||||||
|
|
||||||
buffer = QtCore.QBuffer()
|
buffer = QtCore.QBuffer()
|
||||||
buffer.open(QtCore.QIODevice.ReadWrite)
|
buffer.open(QtCore.QIODevice.ReadWrite)
|
||||||
image1.save(buffer, "PNG")
|
image.save(buffer, "PNG")
|
||||||
|
|
||||||
strio = io.BytesIO()
|
strio = io.BytesIO()
|
||||||
strio.write(buffer.data())
|
strio.write(buffer.data())
|
||||||
|
|
|
@ -71,7 +71,7 @@ class Worker(QtCore.QObject):
|
||||||
if time.time() - self.lastPreview >= 0.05 or i[0] == 0:
|
if time.time() - self.lastPreview >= 0.05 or i[0] == 0:
|
||||||
self._image = ImageQt(i[1])
|
self._image = ImageQt(i[1])
|
||||||
self.imageCreated.emit(QtGui.QImage(self._image))
|
self.imageCreated.emit(QtGui.QImage(self._image))
|
||||||
lastPreview = time.time()
|
self.lastPreview = time.time()
|
||||||
|
|
||||||
self.previewQueue.task_done()
|
self.previewQueue.task_done()
|
||||||
|
|
||||||
|
@ -139,28 +139,6 @@ class Worker(QtCore.QObject):
|
||||||
# create video for output
|
# create video for output
|
||||||
numpy.seterr(divide='ignore')
|
numpy.seterr(divide='ignore')
|
||||||
|
|
||||||
self.compositeQueue = Queue()
|
|
||||||
self.compositeQueue.maxsize = 20
|
|
||||||
self.renderQueue = PriorityQueue()
|
|
||||||
self.renderQueue.maxsize = 20
|
|
||||||
self.previewQueue = PriorityQueue()
|
|
||||||
|
|
||||||
for i in range(2):
|
|
||||||
t = Thread(target=self.renderNode)
|
|
||||||
t.daemon = True
|
|
||||||
t.start()
|
|
||||||
|
|
||||||
self.dispatchThread = Thread(target=self.renderDispatch)
|
|
||||||
self.dispatchThread.daemon = True
|
|
||||||
self.dispatchThread.start()
|
|
||||||
|
|
||||||
self.previewDispatch = Thread(target=self.previewDispatch)
|
|
||||||
self.previewDispatch.daemon = True
|
|
||||||
self.previewDispatch.start()
|
|
||||||
|
|
||||||
frameBuffer = {}
|
|
||||||
self.lastPreview = 0.0
|
|
||||||
|
|
||||||
# initialize components
|
# initialize components
|
||||||
print('loaded components:',
|
print('loaded components:',
|
||||||
["%s%s" % (num, str(component)) for num, component in enumerate(components)])
|
["%s%s" % (num, str(component)) for num, component in enumerate(components)])
|
||||||
|
@ -174,13 +152,37 @@ class Worker(QtCore.QObject):
|
||||||
)
|
)
|
||||||
|
|
||||||
if properties and 'static' in properties:
|
if properties and 'static' in properties:
|
||||||
self.staticComponents[compNo] = comp.frameRender(compNo, 0)
|
self.staticComponents[compNo] = comp.frameRender(compNo, 0)
|
||||||
|
|
||||||
|
self.compositeQueue = Queue()
|
||||||
|
self.compositeQueue.maxsize = 20
|
||||||
|
self.renderQueue = PriorityQueue()
|
||||||
|
self.renderQueue.maxsize = 20
|
||||||
|
self.previewQueue = PriorityQueue()
|
||||||
|
|
||||||
|
# create threads to render frames and send them back here for piping out
|
||||||
|
for i in range(2):
|
||||||
|
t = Thread(target=self.renderNode, name="Render Thread")
|
||||||
|
t.daemon = True
|
||||||
|
t.start()
|
||||||
|
|
||||||
|
self.dispatchThread = Thread(target=self.renderDispatch, name="Render Dispatch Thread")
|
||||||
|
self.dispatchThread.daemon = True
|
||||||
|
self.dispatchThread.start()
|
||||||
|
|
||||||
|
self.previewDispatch = Thread(target=self.previewDispatch, name="Render Dispatch Thread")
|
||||||
|
self.previewDispatch.daemon = True
|
||||||
|
self.previewDispatch.start()
|
||||||
|
|
||||||
|
frameBuffer = {}
|
||||||
|
self.lastPreview = 0.0
|
||||||
|
|
||||||
for i in range(0, len(self.completeAudioArray), self.sampleSize):
|
for i in range(0, len(self.completeAudioArray), self.sampleSize):
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
if i in frameBuffer:
|
if i in frameBuffer:
|
||||||
|
# if frame's in buffer, pipe it to ffmpeg
|
||||||
break
|
break
|
||||||
|
# else fetch the next frame & add to the buffer
|
||||||
data = self.renderQueue.get()
|
data = self.renderQueue.get()
|
||||||
frameBuffer[data[0]] = data[1]
|
frameBuffer[data[0]] = data[1]
|
||||||
self.renderQueue.task_done()
|
self.renderQueue.task_done()
|
||||||
|
|
Reference in New Issue