1080p alpha channel video playback – dramatic frame rate drop
Hello Cycling74 forumites,
I’m running 32-bit Jitter on Windows 7 (as 64-bit doesn’t do video stuff so well yet). It’s a Core I7-920 with a GTX 780.
My project involves having a static "starfield" background (1920 x 1080), and multiple copies of a small .png with alpha channel changing size at various places around the scene. (stars twinkling, triggered by MIDI input)
In "front" of all that a 1080p23.976 video (about 6 minutes) with an alpha channel to allow the bg and moving .png’s to be seen.
The 1080p video file is a photorealistic (pre-rendered) planet Earth coming into shot and turning slowly on its axis. Two minutes in, when (possibly) the maximum amount of movement from frame to frame is taking place, the frame rate attached to my jit.gl.render object drops from 50+fps to 5fps for about one minute, and then returns to how it was.
The image is encoded as Quicktime Animation – I’ve tried Quicktime PNG and it was slightly better, but not noticeably.
Windows Resource Monitor shows no particular stress on CPU, HD or RAM.
Any initial thoughts?
- This topic was modified 3 months by domus.
On PC video performance in Max is a bit problematic. Check DXV codec (https://resolume.com/software/dxv.php), use SSD drive if possible…
Thank you for your advice Yaniki.
I tried encoding with DXV at 100 quality – the frame rate is now consistent, but hangs around 15fps. I’m going to try a few lower quality settings, etc.
Thanks again for your help! (Yep, was on an SSD already)
I hit the same barrier some time ago – simple to solve with OSX, but not with Windows.
Another possibility you may check is [jit.gl.hap] external – even if is impossible to deal with HAP codec on Windows this external may save a little bit of performance.
I actually got around this problem – HAP didn’t help, as jit.gl.hap does not work with Windows yet, as far as I can tell.
The solution was rendering my colour footage out as UYVY and rendering a separate video file as UYVY (with only greyscale information) and playing them both at the same time. Then I could use @color_blend settings to use the greyscale video to blacken out the parts of the lower image I didn’t want, and put the colour image on top. Hope that makes sense.
YOu mean you solve it on Mac using DXV ?
I solved this on Windows, not Mac. Also I didn’t use DXV codec, I used Quicktime and uncompressed YUV 4:2:2 8-bit setting.