Hello! I decided to post this question here as the github repo owner has stopped maintaing this addon.
The addon works when you allocated the FBO you want to save as GL_RGB, but not GL_RGBA. Does anyone know why this is and how to get around it?
If not, and the question following is unrelated to the main question, does anyone know what’s the best way to record high quality frames without frame dropping (which happens using ofSaveScreen() for example)?
So to encode RGBA, you will need to use a codec FFV1 which accepts RGBA. format in ffmpegRecorder, using setVideoCodec. I would advice to test the codec outside the addon.
Hey thanks for this! I should have known it was something to do with the codecs. Yes, I have been able to use the addon but I’ve switched to using Arturo’s ofxTextureRecorder as it’s been the best fit for my use case.
and trying to record a ofFBO with alpha channel mCapFbo.allocate( m_Grabber.getWidth(), m_Grabber.getHeight(), GL_RGBA );
But the recorded file causes the images to slide vertically.
I circumvented all fumes arguments setting in the addon and basically call ffmpeg with this command args.push_back(" -f -an -vsync 0 -framerate 30.000000 -video_size 1280x720 -f rawvideo -pix_fmt rgba -vcodec rawvideo -i - -vcodec hap -format hap_alpha -b:v 8000k -framerate 30.000000 -pix_fmt rgba");
I also tried this output option with the same result.
args.push_back("-pix_fmt yuva444p10le");
it might be something about OpenGL RGBA not lining up with -f rawvideo -pix_fmt rgba
???
File only works with VLC on my macOS 10.15.7 system https://www.dropbox.com/s/gvvlx55y0bqy715/2022-04-21-19-28-04-728.mov?dl=0
HI @stephanschulz ,
Looking at this line in your addon, I think it should be multiplied by pixels.getNumChannels() instead of 3 since you are using rgba instead of rgb.