Disabling processing in filter elelements

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Disabling processing in filter elelements

Baby Octopus
Administrator
Hi,

Is there a way to disable filtering through some 'passthrough' property? I need to do it for videoscale element. I prefer dynamically changing the property than removing the element from the pipeline :)

~BO
Reply | Threaded
Open this post in threaded view
|

Re: Disabling processing in filter elelements

Sebastian Dröge-3
On Di, 2016-09-13 at 23:09 -0700, Baby Octopus wrote:
> Hi,
>
> Is there a way to disable filtering through some 'passthrough' property? I
> need to do it for videoscale element. I prefer dynamically changing the
> property than removing the element from the pipeline :)

Some elements have such a property, others not. In theory you could set
the passthrough setting of GstBaseTransform from the outside, but in
practice this will confuse elements and cause many problems.

A passthrough property on videoscale also does not seem to make any
sense (or on any converter). Those elements are already passthrough if
nothing has to be done. And if something has to be done, going into
passthrough instead would cause a negotiation error.

--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (985 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Disabling processing in filter elelements

Baby Octopus
Administrator
I need to dynamically enable or disable resize, say keep 1920x1080 as it is or change it to 1280x720.

1. Either remove this videoscale element from the pipeline
2. Just make the element passthrough from the application

Is not the second option easier?

I also see a usecase when use need to dynamically change color filter elements such as gamma, change gamma from 1 to 1.2, and then bring it back to 1
i. Why to have processing when gamma is set to 1? Ideally it should be a passthrough
ii. To avoid this processing, you can simply make the element passthrough than changing the pipeline
Reply | Threaded
Open this post in threaded view
|

Re: Disabling processing in filter elelements

Sebastian Dröge-3
On Mi, 2016-09-14 at 00:56 -0700, Baby Octopus wrote:
> I need to dynamically enable or disable resize, say keep 1920x1080 as it is
> or change it to 1280x720. 
>
> 1. Either remove this videoscale element from the pipeline
> 2. Just make the element passthrough from the application
>
> Is not the second option easier?

How do you force it to 1280x720? With a capsfilter I assume? In that
case you can control passthrough or not also with the capsfilter.
videoscale will adapt according to what downstream can do.

> I also see a usecase when use need to dynamically change color filter
> elements such as gamma, change gamma from 1 to 1.2, and then bring it back
> to 1
> i. Why to have processing when gamma is set to 1? Ideally it should be a
> passthrough
> ii. To avoid this processing, you can simply make the element passthrough
> than changing the pipeline

The element that has this gamma property is supposed to run in
passthrough mode based on that property already. If no processing has
to be done, the element should do nothing.

--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (985 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Disabling processing in filter elelements

Baby Octopus
Administrator
Makes sense. Can set capsfilter's caps property than setting videoscale's property

Thanks for the kind information :)