BasePyFuncPlugin

Inheritance diagram of BasePyFuncPlugin

BasePyFuncPlugin inheritance diagram

class savant.base.pyfunc.BasePyFuncPlugin(**kwargs)

Base class for a PyFunc implementation to be used in a pyfunc gstreamer element.

PyFunc implementations are defined in and instantiated by a PyFunc structure.

on_start()

Do on plugin start.

on_stop()

Do on plugin stop.

on_event(event)

Do on event.

abstract process_buffer(buffer)

Process gstreamer buffer. Throws an exception if fatal error has occurred.

Parameters:

buffer (Buffer) – Gstreamer buffer.

get_queues()

Get all pipeline queues.

get_upstream_queue()

Get upstream queue, the last queue before the pyfunc.

Can be used to check the current queue size for bandwidth management.

queue = self.get_upstream_queue()
...
if queue.full():
    ...
get_queue(name)

Get pipeline queue by name.

pipeline:
  elements:
    - element: queue
      name: my_queue
    ...
queue = self.get_queue('my_queue')