Hi,
I am using waylandsink to play h264 file. My decoder gives output in NV12 format, But my wayland accepts only BGRA, BGRx, RGB16. So I am using a video convertor. I cannot use a software video convert as its very slow. I want to use hardware video convert.
Pipeline using software video convert :
gst-launch-1.0 filesrc location=/home/root/VSS/video_with_display.h264 ! h264parse ! vpudec ! videoconvert ! waylandsink -v
Pipeline using hardware video convert :
gst-launch-1.0 filesrc location=/home/root/VSS/video_with_display.h264 ! h264parse ! vpudec ! imxvideoconvert_ipu ! waylandsink -v
I am using gstreamer1.0-plugins-bad, version : 1.6.0
You could get it from here : https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.6.0.tar.xz
But when I use hardware video convert, the buffer release function, which is a call back, is not getting called. There fore, I am not able to pick next buffers in pipeline.
Code flow as I understood.
In gst_wayland_sink_render (in gstwaylandsink.c ) function, we will get the buffer from pipeline.
When I use hardware video convert, I am able to see that data is coming upto gst_wl_buffer_attach, but buffer releasing is not done.
What can be the reason ?
I am attaching the logs taken for both software videoconvert and hardware videoconvert, And our gst-plugins-bad-1.6.0 code with my own debug logs added. I have added the logs containing ** VSS ** .