Monado OpenXR Runtime
gstreamer_sink Struct Reference

An xrt_frame_sink that uses appsrc. More...

#include <gstreamer/gst_internal.h>

Inheritance diagram for gstreamer_sink:
Collaboration diagram for gstreamer_sink:

Data Fields

struct xrt_frame_sink base
 The base structure exposing the sink interface. More...
 
struct xrt_frame_node node
 A sink can expose multie xrt_frame_sink but only one node. More...
 
struct gstreamer_pipelinegp
 Pipeline this sink is producing frames into. More...
 
uint64_t offset_ns
 Offset applied to timestamps given to GStreamer. More...
 
uint64_t timestamp_ns
 Last sent timestamp, used to calculate duration. More...
 
GstElement * appsrc
 Cached appsrc element. More...
 
- Data Fields inherited from xrt_frame_sink
void(* push_frame )(struct xrt_frame_sink *sink, struct xrt_frame *frame)
 Push a frame into the sink. More...
 
- Data Fields inherited from xrt_frame_node
struct xrt_frame_nodenext
 
void(* break_apart )(struct xrt_frame_node *node)
 Called first in when the graph is being destroyed, remove any references frames and other objects and stop threads. More...
 
void(* destroy )(struct xrt_frame_node *node)
 Do the actual freeing of the objects. More...
 

Additional Inherited Members

- Public Member Functions inherited from xrt_frame_sink
void u_sink_create_format_converter (struct xrt_frame_context *xfctx, enum xrt_format f, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_create_to_r8g8b8_or_l8 (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_create_to_r8g8b8_bayer_or_l8 (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_create_to_rgb_yuv_yuyv_uyvy_or_l8 (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_create_to_yuv_yuyv_uyvy_or_l8 (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_create_to_yuv_or_yuyv (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_create_to_r8g8b8_r8g8b8a8_r8g8b8x8_or_l8 (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_deinterleaver_create (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
bool u_sink_queue_create (struct xrt_frame_context *xfctx, uint64_t max_size, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
bool u_sink_simple_queue_create (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
 
void u_sink_quirk_create (struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct u_sink_quirk_params *params, struct xrt_frame_sink **out_xfs)
 
void u_sink_split_create (struct xrt_frame_context *xfctx, struct xrt_frame_sink *left, struct xrt_frame_sink *right, struct xrt_frame_sink **out_xfs)
 
static void xrt_sink_push_frame (struct xrt_frame_sink *sink, struct xrt_frame *frame)
 Push a frame into the sink. More...
 

Detailed Description

An xrt_frame_sink that uses appsrc.

Field Documentation

◆ appsrc

GstElement* gstreamer_sink::appsrc

Cached appsrc element.

◆ base

struct xrt_frame_sink gstreamer_sink::base

The base structure exposing the sink interface.

◆ gp

struct gstreamer_pipeline* gstreamer_sink::gp

Pipeline this sink is producing frames into.

◆ node

struct xrt_frame_node gstreamer_sink::node

A sink can expose multie xrt_frame_sink but only one node.

◆ offset_ns

uint64_t gstreamer_sink::offset_ns

Offset applied to timestamps given to GStreamer.

◆ timestamp_ns

uint64_t gstreamer_sink::timestamp_ns

Last sent timestamp, used to calculate duration.


The documentation for this struct was generated from the following file: