Top | ![]() |
![]() |
![]() |
![]() |
entransGstEntransMultiProcTransentransGstEntransMultiProcTrans — Base class for multiple process transformers |
This is a base class for elements that process and/or transform data by having another program/process do the actual processing for each buffer. That is, for each incoming individual piece of data, a new process is spawned and presented the data on its stdin, and the element will send out what it receives from the process' stdout as a single buffer. It provides for most of the details such as setting up sink and src pads, state changes, etc. An inheriting element need only concern about providing for the proper pad templates and (optionally but recommended) implementing a custom set_caps, which is called during (each) caps negotiation. This typically gives the inheritor a chance to provide the right arguments to the program for the circumstances and specifics of data at hand. Also note that these arguments for the program may vary across each invocation.