RAVENNAKIT
Loading...
Searching...
No Matches
rav::sdp::SessionDescription Struct Reference

A struct that represents an SDP session description as defined in RFC 8866. More...

#include <sdp_session_description.hpp>

Public Types

enum class  Section { session_description , media_description }
 Type to specify which section of the SDP we are parsing. More...

Public Member Functions

void add_or_update_source_filter (const SourceFilter &filter)
 Adds a source filter to the session description.
tl::expected< void, std::string > parse_attribute (std::string_view line)
 Parse an attribute from given line and adds it to attributes.

Public Attributes

int version {}
OriginField origin
std::string session_name
std::optional< ConnectionInfoField > connection_info
TimeActiveField time_active
std::optional< std::string > session_information
std::optional< MediaDirection > media_direction
std::optional< ReferenceClock > reference_clock
std::optional< MediaClockSource > media_clock
std::optional< RavennaClockDomain > ravenna_clock_domain
std::optional< uint32_t > ravenna_sync_time
std::vector< SourceFilter > source_filters
std::optional< Group > group
std::map< std::string, std::string > attributes
std::vector< MediaDescription > media_descriptions

Detailed Description

A struct that represents an SDP session description as defined in RFC 8866.

https://datatracker.ietf.org/doc/html/rfc8866

Definition at line 42 of file sdp_session_description.hpp.

Member Enumeration Documentation

◆ Section

Type to specify which section of the SDP we are parsing.

Enumerator
session_description 
media_description 

Definition at line 44 of file sdp_session_description.hpp.

Member Function Documentation

◆ add_or_update_source_filter()

void rav::sdp::SessionDescription::add_or_update_source_filter ( const SourceFilter & filter)

Adds a source filter to the session description.

If the filter already exists, it will be replaced.

Parameters
filterThe source filter to add.

◆ parse_attribute()

tl::expected< void, std::string > rav::sdp::SessionDescription::parse_attribute ( std::string_view line)

Parse an attribute from given line and adds it to attributes.

Parameters
lineThe input text.
Returns
An expected indicating success or an error.

Member Data Documentation

◆ attributes

std::map<std::string, std::string> rav::sdp::SessionDescription::attributes

Definition at line 59 of file sdp_session_description.hpp.

◆ connection_info

std::optional<ConnectionInfoField> rav::sdp::SessionDescription::connection_info

Definition at line 49 of file sdp_session_description.hpp.

◆ group

std::optional<Group> rav::sdp::SessionDescription::group

Definition at line 58 of file sdp_session_description.hpp.

◆ media_clock

std::optional<MediaClockSource> rav::sdp::SessionDescription::media_clock

Definition at line 54 of file sdp_session_description.hpp.

◆ media_descriptions

std::vector<MediaDescription> rav::sdp::SessionDescription::media_descriptions

Definition at line 60 of file sdp_session_description.hpp.

◆ media_direction

std::optional<MediaDirection> rav::sdp::SessionDescription::media_direction

Definition at line 52 of file sdp_session_description.hpp.

◆ origin

OriginField rav::sdp::SessionDescription::origin

Definition at line 47 of file sdp_session_description.hpp.

◆ ravenna_clock_domain

std::optional<RavennaClockDomain> rav::sdp::SessionDescription::ravenna_clock_domain

Definition at line 55 of file sdp_session_description.hpp.

◆ ravenna_sync_time

std::optional<uint32_t> rav::sdp::SessionDescription::ravenna_sync_time

Definition at line 56 of file sdp_session_description.hpp.

◆ reference_clock

std::optional<ReferenceClock> rav::sdp::SessionDescription::reference_clock

Definition at line 53 of file sdp_session_description.hpp.

◆ session_information

std::optional<std::string> rav::sdp::SessionDescription::session_information

Definition at line 51 of file sdp_session_description.hpp.

◆ session_name

std::string rav::sdp::SessionDescription::session_name

Definition at line 48 of file sdp_session_description.hpp.

◆ source_filters

std::vector<SourceFilter> rav::sdp::SessionDescription::source_filters

Definition at line 57 of file sdp_session_description.hpp.

◆ time_active

TimeActiveField rav::sdp::SessionDescription::time_active

Definition at line 50 of file sdp_session_description.hpp.

◆ version

int rav::sdp::SessionDescription::version {}

Definition at line 46 of file sdp_session_description.hpp.


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