Unsolved Trying to capture QImage of video frame
-
For converting YUV to RGB, Qt has a private API , qt_imageFromVideoFrame() , which could convert QVideoFrame to QImage in RGB format (I can't remember the exact RGB format to be converted) .
p.s It can't handle texture frame
You could try and see could it solve your problem first.
To enable the private API, you have to add this line in your .pro file
QT += multimedia-private
And include this header file
#include "private/qvideoframe_p.h"
Remarks: That is a private API. Use it as your own risk
-
thank you for reply.I tried it but not working. I tried it after my clone frame syntax(in framegrabber.cpp file function present). Is that write position? I am new to Qt. I dont have much idea about it.
-
Please be more precise. "Not working" doesn't say much. What are you getting ? A blank image ? A black image ? Funny colours ?
-
@SGaist
ooh sorry for that. it still gives me .jpg image, where I want RGB data of image/frame.yet I am getting only the first frame all though I try to capture frame at any time. -
Aren't you getting a .png file ?
-
yes i am getting .png but i want data in rgb format. because raw data format is only allowed on my frame buffer to display.
-
You do realise that if you load your image again in a QImage, you'll get a RGB image ?
If you really want to save an RGB image then go for bitmap but beware, it's uncompressed.
-
oh yes thank you. this will solve my problem partially. but what about new frame capture.? can you please help me out where I am lacking or what i am missing? why I am getting the same frame every time?If I'll get updated frame my task will be almost on final stage.please solve this.and again thank you.
-
You always take the same image from the list, check that your counter increments properly and that you indeed update the list.
On a side note, you should pass const reference to QImage parameters. That will save useless copies.
-
Thank you for reply and sorry for late response. Yes probably i am incrementing the counter properly. and sir I couldn't understand what you said about const reference to QImage parameter?
-
Use:
const QImage &image
as parameter -
K let me try it