Thanks for sharing the user guide. I tried to use the gstreamer plugin specified. But, the output is not suitable to our specific requirement.
1. For video rotation I used the below pipeline. Playback is rotated to 90degree, But the aspect ratio is not maintained. Instead, height and width of the playback area were fixed, resulting in the playback being stretched on one direction and compressed on other direction
gst-launch-1.0 filesrc location=/media/mmcblk1p1/DCIM/ilux/10000_2021_03_25_05_55_23_GEN_OD.mp4 ! qtdemux ! vpudec ! imxvideoconvert_g2d rotation=1 ! video/x-raw,format=RGB16,width=1920,height=1080 ! imxg2dvideosink framebuffer=/dev/fb0 use-vsync=true sync=true
Is there any way to actually rotate the playback area along with the contents of the video being rotated?
2. For modifying the video playback area coordinates, below pipeline works fine. This pipeline displays the playback on overlaysink. But, I need to display the video playback on the background framebuffer instead of the overlay. A QT application with UI will be running on the foreground framebuffer. I used color keying to make the video playback from background to be visible.
gst-launch-1.0 filesrc location=/media/mmcblk1p1/DCIM/ilux/10000_2021_03_25_05_55_23_GEN_OD.mp4 ! qtdemux ! vpudec ! overlaysink overlay-width=240 overlay-height=135 overlay-left=0 overlay-top=100 sync=true
Please suggest any solution to achieve the above results on background framebuffer.