GNOME Bugzilla – Bug 765309
player: Handle rotation
Last modified: 2018-11-03 13:49:02 UTC
Can you please provide some more info on this bug ?? I think we need to handle
this in video sink element, but do not much idea.
Barun Kr. Singh
The video sink should handle it, i.e. playsink should probably have an (optional) videoflip inside. And then do auto-rotation based on the rotation tag, but also have a property to override this and explicitly set the rotation.
(Similar the aspect-ratio overriding, it should probably first become a playsink feature)
I have gone through the code of playsink and as a first impression,
I think videoflip can be added just like existing element/properties "video-filter" in playsink. Please suggest futher.
It should only be added if the sink (and nothing in the sink) supports it already, see also bug #768687. And videoflip probably needs support added for passthrough of caps it does not handle itself.
Also see bug #769147
So, are you saying that we need to add videoflip code inside playsink
and do the rotation part (if user requested by setting some properties value) before sending to sink ?? Please explain..
Basically the same as the handling of colorbalance in playsink, yes
About the gstplayer rotation realization.
As you mentioned above it is similar as colorbalance
I'm not sure if my understanding is correct as below:
1. in playsink, we should implement GstVideoOrientation / GstVideoDirection interface.
and when gen_video_chain(), we should check if there is any sink element can handle GstVideoOrientation / GstVideoDirection. and set the videoOri_element, for the interface to use.
(I still don't understand how GstVideoDirection interface works, cause the interface only has "video-direction" property, but no other virtual function to set )
2. In gstplayer, we should add some properties (like rotate/video-direction), so that it can be set to playbin ( then set to playsink, maybe playsink also add similar property)
Could you please give me some advice about that.
And, in some element like glimagesink, it doesn't implement GstVdieoOrientation/GstVdieoDirection interface. but it has property "rotate-method", in that case, how to realize it in playsink (realize it in playsink VideoOrientation/VideoDirection interface ?)
Looking forward to your advice.
-- GitLab Migration Automatic Message --
This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.
You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/372.