37 #ifndef RTPSESSIONPARAMS_H
39 #define RTPSESSIONPARAMS_H
41 #include "rtpconfig.h"
106 #ifdef RTP_SUPPORT_PROBATION
112 #endif // RTP_SUPPORT_PROBATION
217 bool resolvehostname;
218 #ifdef RTP_SUPPORT_PROBATION
220 #endif // RTP_SUPPORT_PROBATION
222 double sessionbandwidth;
226 bool usehalfatstartup;
230 double sendermultiplier;
231 double generaltimeoutmultiplier;
232 double byetimeoutmultiplier;
233 double collisionmultiplier;
234 double notemultiplier;
236 bool usepredefinedssrc;
237 uint32_t predefinedssrc;
242 #endif // RTPSESSIONPARAMS_H
double GetOwnTimestampUnit() const
Returns the currently set timestamp unit.
Definition: rtpsessionparams.h:93
void SetProbationType(RTPSources::ProbationType probtype)
If probation support is enabled, this function sets the probation type to be used.
Definition: rtpsessionparams.h:108
uint32_t GetPredefinedSSRC() const
Returns the SSRC which will be used if RTPSessionParams::GetUsePredefinedSSRC returns true...
Definition: rtpsessionparams.h:204
double GetCollisionTimeoutMultiplier() const
Returns the multiplier to be used when timing out entries in the collision table (default is 10)...
Definition: rtpsessionparams.h:186
bool GetSenderReportForBYE() const
Returns true if a BYE packet will be sent in an RTCP compound packet which starts with a sender repor...
Definition: rtpsessionparams.h:162
void SetReceiveMode(RTPTransmitter::ReceiveMode recvmode)
Sets the receive mode to be used by the session.
Definition: rtpsessionparams.h:79
void SetUsePredefinedSSRC(bool f)
Sets a flag which indicates if a predefined SSRC identifier should be used.
Definition: rtpsessionparams.h:195
void SetBYETimeoutMultiplier(double m)
Sets the multiplier to be used when timing out a member after it has sent a BYE packet.
Definition: rtpsessionparams.h:177
void SetSenderTimeoutMultiplier(double m)
Sets the multiplier to be used when timing out senders.
Definition: rtpsessionparams.h:165
int SetUsePollThread(bool usethread)
If usethread is true, the session will use a poll thread to automatically process incoming data and t...
double GetSenderControlBandwidthFraction() const
Returns the minimum fraction of the control traffic that will be used by senders (default is 25%)...
Definition: rtpsessionparams.h:130
void SetCNAME(const std::string &s)
Forces this string to be used as the CNAME identifier.
Definition: rtpsessionparams.h:207
std::string GetCNAME() const
Returns the currently set CNAME, is blank when this will be generated automatically (the default)...
Definition: rtpsessionparams.h:210
This class is used to specify wallclock time, delay intervals etc.
Definition: rtptimeutilities.h:77
void SetSenderReportForBYE(bool v)
When sending a BYE packet, this indicates whether it will be part of an RTCP compound packet that beg...
Definition: rtpsessionparams.h:157
void SetUseHalfRTCPIntervalAtStartup(bool usehalf)
If usehalf is set to true, the session will only wait half of the calculated RTCP interval before sen...
Definition: rtpsessionparams.h:141
void SetMaximumPacketSize(size_t max)
Sets the maximum allowed packet size for the session.
Definition: rtpsessionparams.h:65
double GetControlTrafficFraction() const
Returns the fraction of the session bandwidth that will be used for control traffic (default is 5%)...
Definition: rtpsessionparams.h:124
bool IsUsingPollThread() const
Returns whether the session should use a poll thread or not (default is true).
Definition: rtpsessionparams.h:62
void SetSessionBandwidth(double sessbw)
Sets the session bandwidth in bytes per second.
Definition: rtpsessionparams.h:115
ProbationType
Type of probation to use for new sources.
Definition: rtpsources.h:75
void SetOwnTimestampUnit(double tsunit)
Sets the timestamp unit for our own data.
Definition: rtpsessionparams.h:90
double GetNoteTimeoutMultiplier() const
Returns the multiplier to be used when timing out SDES NOTE information (default is 25)...
Definition: rtpsessionparams.h:192
double GetBYETimeoutMultiplier() const
Returns the multiplier to be used when timing out a member after it has sent a BYE packet (default is...
Definition: rtpsessionparams.h:180
void SetNoteTimeoutMultiplier(double m)
Sets the multiplier to be used when timing out SDES NOTE information.
Definition: rtpsessionparams.h:189
RTPSources::ProbationType GetProbationType() const
Returns the probation type which will be used (default is RTPSources::ProbationStore).
Definition: rtpsessionparams.h:111
double GetSourceTimeoutMultiplier() const
Returns the multiplier to be used when timing out members (default is 5).
Definition: rtpsessionparams.h:174
void SetRequestImmediateBYE(bool v)
If v is true, the session will send a BYE packet immediately if this is allowed.
Definition: rtpsessionparams.h:149
RTPTransmitter::ReceiveMode GetReceiveMode() const
Sets the receive mode to be used by the session (default is: accept all packets). ...
Definition: rtpsessionparams.h:82
bool AcceptOwnPackets() const
Returns true if the session should accept its own packets (default is false).
Definition: rtpsessionparams.h:76
ReceiveMode
Three kind of receive modes can be specified.
Definition: rtptransmitter.h:73
void SetSourceTimeoutMultiplier(double m)
Sets the multiplier to be used when timing out members.
Definition: rtpsessionparams.h:171
void SetPredefinedSSRC(uint32_t ssrc)
Sets the SSRC which will be used if RTPSessionParams::GetUsePredefinedSSRC returns true...
Definition: rtpsessionparams.h:201
void SetControlTrafficFraction(double frac)
Sets the fraction of the session bandwidth to be used for control traffic.
Definition: rtpsessionparams.h:121
Describes the parameters for to be used by an RTPSession instance.
Definition: rtpsessionparams.h:51
bool GetUseHalfRTCPIntervalAtStartup() const
Returns whether the session will only wait half of the calculated RTCP interval before sending its fi...
Definition: rtpsessionparams.h:146
bool GetUsePredefinedSSRC() const
Returns a flag indicating if a predefined SSRC should be used.
Definition: rtpsessionparams.h:198
void SetResolveLocalHostname(bool v)
Sets a flag indicating if a DNS lookup should be done to determine our hostname (to construct a CNAME...
Definition: rtpsessionparams.h:100
double GetSessionBandwidth() const
Returns the session bandwidth in bytes per second (default is 10000 bytes per second).
Definition: rtpsessionparams.h:118
size_t GetMaximumPacketSize() const
Returns the maximum allowed packet size (default is 1400 bytes).
Definition: rtpsessionparams.h:68
void SetAcceptOwnPackets(bool accept)
If the argument is true, the session should accept its own packets and store them accordingly in the ...
Definition: rtpsessionparams.h:73
void SetMinimumRTCPTransmissionInterval(const RTPTime &t)
Set the minimal time interval between sending RTCP packets.
Definition: rtpsessionparams.h:133
void SetSenderControlBandwidthFraction(double frac)
Sets the minimum fraction of the control traffic that will be used by senders.
Definition: rtpsessionparams.h:127
bool GetResolveLocalHostname() const
Returns whether the local hostname should be determined from the transmitter's list of local IP addre...
Definition: rtpsessionparams.h:105
RTPTime GetMinimumRTCPTransmissionInterval() const
Returns the minimal time interval between sending RTCP packets (default is 5 seconds).
Definition: rtpsessionparams.h:136
void SetCollisionTimeoutMultiplier(double m)
Sets the multiplier to be used when timing out entries in the collision table.
Definition: rtpsessionparams.h:183
double GetSenderTimeoutMultiplier() const
Returns the multiplier to be used when timing out senders (default is 2).
Definition: rtpsessionparams.h:168
bool GetRequestImmediateBYE() const
Returns whether the session should send a BYE packet immediately (if allowed) or not (default is true...
Definition: rtpsessionparams.h:152