BasePayload
Object Hierarchy:
Description:
[
CCode ( type_id =
"gst_rtp_base_payload_get_type ()" ) ]
[
GIR ( name =
"RTPBasePayload" ) ]
public abstract class BasePayload :
Element
Provides a base class for RTP payloaders
Content:
Properties:
- public bool auto_header_extension { get; set; }
If enabled, the payloader will automatically try to enable all the RTP
header extensions provided in the src caps, saving the application the need to handle these extensions manually using the
GstRTPBasePayload:GstRTPBasePayload:request-extension: signal.
- public int64 max_ptime { get; set; }
- public int64 min_ptime { get; set; }
Minimum duration of the packet data in ns (can't go above MTU)
- public uint mtu { get; set; }
- public bool onvif_no_rate_control { get; set; }
Make the payloader timestamp packets according to the Rate-Control=no
behaviour specified in the ONVIF replay spec.
- public bool perfect_rtptime { get; set; }
Try to use the offset fields to generate perfect RTP timestamps.
- public uint pt { get; set; }
- public int64 ptime_multiple { get; set; }
Force buffers to be multiples of this duration in ns (0 disables)
- public bool scale_rtptime { get; set; }
Make the RTP packets' timestamps be scaled with the segment's rate (
corresponding to RTSP speed parameter).
- public uint seqnum { get; }
- public int seqnum_offset { get; set; }
- public bool source_info { get; set; }
Enable writing the CSRC field in allocated RTP header based on RTP
source information found in the input buffer's SourceMeta.
- public uint ssrc { get; set; }
- public Structure stats { owned get; }
Various payloader statistics retrieved atomically (and are therefore
synchroized with each other), these can be used e.
- public uint timestamp { get; }
- public uint timestamp_offset { get; set; }
Creation methods:
Methods:
- public Buffer allocate_output_buffer (uint payload_len, uint8 pad_len, uint8 csrc_count)
Allocate a new
Buffer with enough data to hold an RTP packet with minimum
csrc_count CSRCs, a payload length of payload_len and padding of pad_len.
- public virtual Caps get_caps (Pad pad, Caps filter)
get desired caps
- public uint get_source_count (Buffer buffer)
Count the total number of RTP sources found in the meta of
buffer, which will be automically added by
allocate_output_buffer.
- public virtual FlowReturn handle_buffer (Buffer buffer)
process data
- public bool is_filled (uint size, ClockTime duration)
Check if the packet with size and duration
would exceed the configured maximum size.
- public bool is_source_info_enabled ()
Queries whether the payloader will add contributing sources (CSRCs) to
the RTP header from SourceMeta.
- public FlowReturn push (owned Buffer buffer)
Push buffer to the peer element of the payloader.
- public FlowReturn push_list (owned BufferList list)
Push list to the peer element of the payloader.
- public virtual bool query (Pad pad, Query query)
custom query handling
- public virtual bool set_caps (Caps caps)
configure the payloader
- public void set_options (string media, bool @dynamic, string encoding_name, uint32 clock_rate)
Set the rtp options of the payloader.
- public bool set_outcaps_structure (Structure? s)
Configure the output caps with the optional fields.
- public void set_source_info_enabled (bool enable)
Enable or disable adding contributing sources to RTP packets from
SourceMeta.
- public virtual bool sink_event (Event event)
custom event handling on the sinkpad
- public virtual bool src_event (Event event)
custom event handling on the srcpad
Signals:
- public signal void add_extension (owned HeaderExtension ext)
Add ext as an extension for writing part of an RTP header
extension onto outgoing RTP packets.
- public signal void clear_extensions ()
Clear all RTP header extensions used by this payloader.
- public signal HeaderExtension request_extension (uint ext_id, string ext_uri)
The returned ext must be configured with the correct
ext_id and with the necessary attributes as required by the extension implementation.
Inherited Members:
All known members inherited from class Gst.Element
All known members inherited from class Gst.Object
All known members inherited from class GLib.Object