Ring Daemon 16.0.0
Loading...
Searching...
No Matches
jami::video::VideoRtpSession Class Reference

#include <video_rtp_session.h>

Inheritance diagram for jami::video::VideoRtpSession:
Inheritance graph
Collaboration diagram for jami::video::VideoRtpSession:
Collaboration graph

Public Types

using BaseType = RtpSession
 
- Public Types inherited from jami::RtpSession
enum class  Direction { SEND , RECV }
 

Public Member Functions

void bindMixer (VideoMixer *mixer)
 
void deinitRecorder () override
 
void enterConference (Conference &conference)
 
void exitConference ()
 
void forceKeyFrame ()
 
const VideoBitrateInfogetVideoBitrateInfo ()
 
std::shared_ptr< VideoInput > & getVideoLocal ()
 
std::shared_ptr< VideoMixer > & getVideoMixer ()
 
std::shared_ptr< VideoReceiveThread > & getVideoReceive ()
 
bool hasConference ()
 
void initRecorder () override
 
void restartSender () override
 
void setChangeOrientationCallback (std::function< void(int)> cb)
 
void setMuted (bool mute, Direction dir=Direction::SEND) override
 
void setRequestKeyFrameCallback (std::function< void(void)> cb)
 
void setRotation (int rotation)
 Set video orientation.
 
void start (std::unique_ptr< dhtnet::IceSocket > rtp_sock, std::unique_ptr< dhtnet::IceSocket > rtcp_sock) override
 
void stop () override
 
void unbindMixer ()
 
void updateMedia (const MediaDescription &send, const MediaDescription &receive) override
 Setup internal VideoBitrateInfo structure from media descriptors.
 
 VideoRtpSession (const std::string &callId, const std::string &streamId, const DeviceParams &localVideoParams, const std::shared_ptr< MediaRecorder > &rec)
 
 ~VideoRtpSession ()
 
- Public Member Functions inherited from jami::RtpSession
std::shared_ptr< SystemCodecInfogetCodec () const
 
const std::string & getInput () const
 
MediaType getMediaType () const
 
const dhtnet::IpAddr & getRecvAddr () const
 
const dhtnet::IpAddr & getSendAddr () const
 
 RtpSession (const std::string &callId, const std::string &streamId, MediaType type)
 
void setMediaSource (const std::string &resource)
 
void setMtu (uint16_t mtu)
 
void setSuccessfulSetupCb (const std::function< void(MediaType, bool)> &cb)
 
std::string streamId () const
 
virtual ~RtpSession ()
 

Additional Inherited Members

- Protected Member Functions inherited from jami::RtpSession
std::string getRemoteRtpUri () const
 
- Protected Attributes inherited from jami::RtpSession
const std::string callId_
 
std::string input_ {}
 
MediaType mediaType_
 
uint16_t mtu_
 
std::recursive_mutex mutex_
 
std::function< void(MediaType, bool)> onSuccessfulSetup_
 
MediaDescription receive_
 
std::shared_ptr< MediaRecorderrecorder_
 
MediaDescription send_
 
std::unique_ptr< SocketPairsocketPair_
 
const std::string streamId_
 

Detailed Description

Definition at line 63 of file video_rtp_session.h.

Member Typedef Documentation

◆ BaseType

Constructor & Destructor Documentation

◆ VideoRtpSession()

jami::video::VideoRtpSession::VideoRtpSession ( const std::string &  callId,
const std::string &  streamId,
const DeviceParams localVideoParams,
const std::shared_ptr< MediaRecorder > &  rec 
)

Definition at line 60 of file video_rtp_session.cpp.

◆ ~VideoRtpSession()

jami::video::VideoRtpSession::~VideoRtpSession ( )

Definition at line 75 of file video_rtp_session.cpp.

References deinitRecorder(), JAMI_LOG, and stop().

Here is the call graph for this function:

Member Function Documentation

◆ bindMixer()

void jami::video::VideoRtpSession::bindMixer ( VideoMixer mixer)

◆ deinitRecorder()

void jami::video::VideoRtpSession::deinitRecorder ( )
overridevirtual

Implements jami::RtpSession.

Definition at line 843 of file video_rtp_session.cpp.

References jami::emitSignal(), and jami::RtpSession::recorder_.

Referenced by ~VideoRtpSession().

Here is the call graph for this function:

◆ enterConference()

void jami::video::VideoRtpSession::enterConference ( Conference conference)

◆ exitConference()

void jami::video::VideoRtpSession::exitConference ( )

Definition at line 583 of file video_rtp_session.cpp.

References jami::emitSignal(), JAMI_DBG, jami::RtpSession::mutex_, and jami::RtpSession::streamId_.

Referenced by enterConference().

Here is the call graph for this function:

◆ forceKeyFrame()

void jami::video::VideoRtpSession::forceKeyFrame ( )

Definition at line 495 of file video_rtp_session.cpp.

References jami::emitSignal(), and jami::RtpSession::mutex_.

Here is the call graph for this function:

◆ getVideoBitrateInfo()

const VideoBitrateInfo & jami::video::VideoRtpSession::getVideoBitrateInfo ( )

Definition at line 83 of file video_rtp_session.cpp.

◆ getVideoLocal()

std::shared_ptr< VideoInput > & jami::video::VideoRtpSession::getVideoLocal ( )
inline

Definition at line 105 of file video_rtp_session.h.

◆ getVideoMixer()

std::shared_ptr< VideoMixer > & jami::video::VideoRtpSession::getVideoMixer ( )
inline

Definition at line 107 of file video_rtp_session.h.

◆ getVideoReceive()

std::shared_ptr< VideoReceiveThread > & jami::video::VideoRtpSession::getVideoReceive ( )
inline

Definition at line 109 of file video_rtp_session.h.

◆ hasConference()

bool jami::video::VideoRtpSession::hasConference ( )
inline

Definition at line 103 of file video_rtp_session.h.

◆ initRecorder()

void jami::video::VideoRtpSession::initRecorder ( )
overridevirtual

◆ restartSender()

void jami::video::VideoRtpSession::restartSender ( )
overridevirtual

Implements jami::RtpSession.

Definition at line 223 of file video_rtp_session.cpp.

References jami::emitSignal(), jami::RtpSession::mutex_, jami::RtpSession::SEND, and jami::RtpSession::socketPair_.

Referenced by enterConference(), and setMuted().

Here is the call graph for this function:

◆ setChangeOrientationCallback()

void jami::video::VideoRtpSession::setChangeOrientationCallback ( std::function< void(int)>  cb)

Definition at line 864 of file video_rtp_session.cpp.

References jami::emitSignal().

Here is the call graph for this function:

◆ setMuted()

void jami::video::VideoRtpSession::setMuted ( bool  mute,
Direction  dir = Direction::SEND 
)
overridevirtual

◆ setRequestKeyFrameCallback()

void jami::video::VideoRtpSession::setRequestKeyFrameCallback ( std::function< void(void)>  cb)

Definition at line 105 of file video_rtp_session.cpp.

References jami::emitSignal().

Here is the call graph for this function:

◆ setRotation()

void jami::video::VideoRtpSession::setRotation ( int  rotation)

Set video orientation.

Send to the receive thread rotation to apply to the video (counterclockwise)

Parameters
rotationRotation in degrees (counterclockwise)

Definition at line 508 of file video_rtp_session.cpp.

◆ start()

◆ stop()

◆ unbindMixer()

void jami::video::VideoRtpSession::unbindMixer ( )

◆ updateMedia()

void jami::video::VideoRtpSession::updateMedia ( const MediaDescription send,
const MediaDescription receive 
)
overridevirtual

The documentation for this class was generated from the following files: