Platform is iMX6 Quad, Linux-3.14.28, gstreamer 0.10.36, gst-fsl-plugins-4.0.3, firmware-imx-3.14.28-1.0.0
Dual screen, video playback on HDMI at 1080p
I am trying to use gstreamer 0.10 to play back scaled, positioned, rotated and flipped video on the HDMI overlay output (fb1)
- We require 0, 90, 180, 270 degree rotations, and optional Horizontal flip
I have tried many different pipelines, but none seem to be usable.
gst-launch uridecodebin ! imxv4l2sink
Scaling works well ("axis-top", "axis-left", "disp-width", "disp-height")
"rotate": Only works for 0 and 180 degree90 and 270 degree rotations result in a black screen.
It doesn't seem to matter what output size I use.
gst-launch uridecodebin ! mfw_isink
Scaling works but often flickers as the pipeline transitions from PAUSE to PLAY
The scaled frame is briefly drawn at another location on screen before being drawn at the correct one.
"rotation": Values 0-3 work as expected
Values 4-7 (+/-90 deg rotation) fail, and I see a lot of "set_crop error exceeds width/height" debug messages.
It will then not play any further videos until the board is power cycled.
If I reduce the video size down to 800x600 then it works - however this is not an acceptable size, we must be able to play full-screen, full-resolution video.
It would be ok to rotate and flip the entire framebuffer, however this must be selectable at runtime - we cannot restart the machine to apply this.