After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 632453 - AppFilter element
AppFilter element
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
unspecified
Other Linux
: Normal enhancement
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-10-18 12:51 UTC by Per Smitt
Modified: 2015-02-24 12:26 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
app filter implementaion (6.82 KB, text/x-csrc)
2010-10-18 12:51 UTC, Per Smitt
Details
header file for the app filter (1.29 KB, text/x-chdr)
2010-10-18 12:51 UTC, Per Smitt
Details

Description Per Smitt 2010-10-18 12:51:13 UTC
Created attachment 172602 [details]
app filter implementaion

Hi

This is an early draft of a simple app-filter element. Its use is simple application controlled buffer filtering/modification.

If you have any comments on flaws in the code they are more than welcome.
Comment 1 Per Smitt 2010-10-18 12:51:57 UTC
Created attachment 172604 [details]
header file for the app filter
Comment 2 Sebastian Dröge (slomo) 2010-10-18 13:15:11 UTC
I think this should be more modeled after GstBaseTransform and then have the vfuncs as callbacks (and additionally signals to make bindings happy, similar to appsrc/appsink).
Comment 3 Jonas Holmberg 2010-10-18 15:43:34 UTC
Wouldn't that limit what you can do with the element? I mean not all filter elements can be implemented using basetransform. So even if it might be nice to have an apptransform element it would still be good to have this appfilter for implementing things that cannot be done using basetransform.
Comment 4 Sebastian Dröge (slomo) 2010-10-25 12:54:09 UTC
What do you think can't be implemented with GstBaseTransform that can be implemented with this AppFilter element?
Comment 5 Per Smitt 2010-10-25 12:58:07 UTC
Correct me if I'm wrong but when I have tried the BaseTransform I have needed to know the size of the output buffer before the actual transform function. My task was to create an element which transformed from one format to XML format. 

I was forced away from BaseTransform then because there was no way I could know before the actual conversion how many bytes of data I needed to store the output XML.

Unless of course I have missed something.
Comment 6 Sebastian Dröge (slomo) 2010-10-25 13:32:10 UTC
Yes, that's correct. For BaseTransform you have to know the output buffer size in advance. But that's something that would be worth changing in basetransform imho.

Anyway, this appfilter element also needs some caps functions to get notified about new caps and to set caps for the output. And the filter vfunc should probably return a GstFlowReturn, which is then used in the chain function
Comment 7 Edward Hervey 2013-07-18 05:57:37 UTC
Per, any updates on this ?
Comment 8 Per Smitt 2013-07-20 08:15:34 UTC
As far as I know the AppFilter was never developed to the level that would be required to hand it upstream.

I am now working on another department and not involved in GStreamer work currently. Perhaps Jonas Holmberg can tell you the exact status of it since I have been out of touch for 2 years.
Comment 9 Tim-Philipp Müller 2015-02-24 12:26:16 UTC
It seems to me that this can just as easily be done with pad probes now (in 1.0 you can replace the buffer in the pad probe with a different one), so I'd say let's close this for now.