Klasse GhostPad

Alle implementierten Schnittstellen:
PointerInterface

public class GhostPad extends ProxyPad
GhostPads are useful when organizing pipelines with #GstBin like elements.
The idea here is to create hierarchical element graphs. The bin element
contains a sub-graph. Now one would like to treat the bin-element like any
other #GstElement. This is where GhostPads come into play. A GhostPad acts as
a proxy for another pad. Thus the bin can have sink and source ghost-pads
that are associated with sink and source pads of the child elements.

If the target pad is known at creation time, gst_ghost_pad_new() is the
function to use to get a ghost-pad. Otherwise one can use gst_ghost_pad_new_no_target()
to create the ghost-pad and use gst_ghost_pad_set_target() to establish the
association later on.

Note that GhostPads add overhead to the data processing of a pipeline.

https://gstreamer.freedesktop.org/documentation/gstreamer/gi-index.html

  • Konstruktordetails

    • GhostPad

      public GhostPad(PointerContainer pointer)
    • GhostPad

      public GhostPad(@Nullable Str name, @Nonnull Pad target)
      Create a new ghostpad with @target as the target. The direction will be taken
      from the target pad. @target must be unlinked.

      Will ref the target.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name
      target - the pad to ghost.
    • GhostPad

      public GhostPad(String name, @Nonnull Pad target)
      Create a new ghostpad with @target as the target. The direction will be taken
      from the target pad. @target must be unlinked.

      Will ref the target.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name
      target - the pad to ghost.
  • Methodendetails

    • getClassHandler

      public static ClassHandler getClassHandler()
    • newFromTemplateGhostPad

      public static GhostPad newFromTemplateGhostPad(@Nullable Str name, @Nonnull Pad target, @Nonnull PadTemplate templ)
      Create a new ghostpad with @target as the target. The direction will be taken
      from the target pad. The template used on the ghostpad will be @template.

      Will ref the target.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name.
      target - the pad to ghost.
      templ - the #GstPadTemplate to use on the ghostpad.
      Gibt zurück:
      a new #GstPad, or %NULL in case of an error.
    • newFromTemplateGhostPad

      public static GhostPad newFromTemplateGhostPad(String name, @Nonnull Pad target, @Nonnull PadTemplate templ)
      Create a new ghostpad with @target as the target. The direction will be taken
      from the target pad. The template used on the ghostpad will be @template.

      Will ref the target.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name.
      target - the pad to ghost.
      templ - the #GstPadTemplate to use on the ghostpad.
      Gibt zurück:
      a new #GstPad, or %NULL in case of an error.
    • newNoTargetGhostPad

      public static GhostPad newNoTargetGhostPad(@Nullable Str name, int dir)
      Create a new ghostpad without a target with the given direction.
      A target can be set on the ghostpad later with the
      gst_ghost_pad_set_target() function.

      The created ghostpad will not have a padtemplate.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name.
      dir - the direction of the ghostpad
      Gibt zurück:
      a new #GstPad, or %NULL in case of an error.
    • newNoTargetGhostPad

      public static GhostPad newNoTargetGhostPad(String name, int dir)
      Create a new ghostpad without a target with the given direction.
      A target can be set on the ghostpad later with the
      gst_ghost_pad_set_target() function.

      The created ghostpad will not have a padtemplate.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name.
      dir - the direction of the ghostpad
      Gibt zurück:
      a new #GstPad, or %NULL in case of an error.
    • newNoTargetFromTemplateGhostPad

      public static GhostPad newNoTargetFromTemplateGhostPad(@Nullable Str name, @Nonnull PadTemplate templ)
      Create a new ghostpad based on @templ, without setting a target. The
      direction will be taken from the @templ.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name
      templ - the #GstPadTemplate to create the ghostpad from.
      Gibt zurück:
      a new #GstPad, or %NULL in case of an error.
    • newNoTargetFromTemplateGhostPad

      public static GhostPad newNoTargetFromTemplateGhostPad(String name, @Nonnull PadTemplate templ)
      Create a new ghostpad based on @templ, without setting a target. The
      direction will be taken from the @templ.
      Parameter:
      name - the name of the new pad, or %NULL to assign a default name
      templ - the #GstPadTemplate to create the ghostpad from.
      Gibt zurück:
      a new #GstPad, or %NULL in case of an error.
    • construct

      @Deprecated public boolean construct()
      Veraltet.
      Finish initialization of a newly allocated ghost pad.

      This function is most useful in language bindings and when subclassing
      #GstGhostPad; plugin and application developers normally will not call this
      function. Call this function directly after a call to g_object_new
      (GST_TYPE_GHOST_PAD, "direction", @dir, ..., NULL).
      Gibt zurück:
      %TRUE if the construction succeeds, %FALSE otherwise.
    • getTarget

      public Pad getTarget()
      Get the target pad of @gpad. Unref target pad after usage.
      Gibt zurück:
      the target #GstPad, can be %NULL if the ghostpad has no target set. Unref target pad after usage.
    • setTarget

      public boolean setTarget(@Nullable Pad newtarget)
      Set the new target of the ghostpad @gpad. Any existing target
      is unlinked and links to the new target are established. if @newtarget is
      %NULL the target will be cleared.
      Parameter:
      newtarget - the new pad target
      Gibt zurück:
      %TRUE if the new target could be set. This function can return %FALSE when the internal pads could not be linked.
    • activateModeDefault

      public static boolean activateModeDefault(@Nonnull Pad pad, @Nullable Object parent, int mode, boolean active)
      Invoke the default activate mode function of a ghost pad.
      Parameter:
      pad - the #GstPad to activate or deactivate.
      parent - the parent of @pad or %NULL
      mode - the requested activation mode
      active - whether the pad should be active or not.
      Gibt zurück:
      %TRUE if the operation was successful.
    • internalActivateModeDefault

      public static boolean internalActivateModeDefault(@Nonnull Pad pad, @Nullable Object parent, int mode, boolean active)
      Invoke the default activate mode function of a proxy pad that is
      owned by a ghost pad.
      Parameter:
      pad - the #GstPad to activate or deactivate.
      parent - the parent of @pad or %NULL
      mode - the requested activation mode
      active - whether the pad should be active or not.
      Gibt zurück:
      %TRUE if the operation was successful.
    • getTypeID

      public static long getTypeID()
    • getParentTypeID

      public static long getParentTypeID()
    • getTypeSize

      public static TypeSystem.TypeSize getTypeSize()
    • getParentTypeSize

      public static TypeSystem.TypeSize getParentTypeSize()
    • getInstanceSize

      public static int getInstanceSize()