Emx::MediaStreamAsync类 参考

MediaFrame异步数据接收

#include "MediaStream.hpp"

类 Emx::MediaStreamAsync 继承关系图:
Emx::MediaStreamAsync 的协作图:

Public 成员函数

 MediaStreamAsync ()
 
virtual ~MediaStreamAsync ()
 
ErrCodeE Start (EuvLoop &loop, char *buffer, int size, Channel &chn, OnGetFrameCallback cb, OnGetFrameInfoCallback cbInfo=nullptr)
 开始接收 更多...
 
void Stop ()
 停止MediaFrame异步数据接收 更多...
 
void RecvFramePause ()
 暂停接收消息数据 更多...
 
void RecvFrameResume ()
 恢复接收消息数据 更多...
 
bool IsReceivingFrame ()
 是否正在接收消息数据 更多...
 
- Public 成员函数 继承自 Emx::MediaStream
 MediaStream ()
 
virtual ~MediaStream ()
 
ErrCodeE GetFrameByInfo (MediaFrame &frame)
 根据帧信息获取帧数据 更多...
 

额外继承的成员函数

- Public 类型 继承自 Emx::MediaStream
using OnGetFrameCallback = std::function< void(Emx::ErrCodeE e, MediaFrame &frame)>
 接收到MediaFrame帧数据的回调函数 更多...
 
using OnGetFrameInfoCallback = std::function< void(MediaFrame &)>
 仅接收到MediaFrame帧信息的回调函数(未去接收实际帧数据,里面的data数据无效) 更多...
 
- Protected 成员函数 继承自 Emx::MediaStream
void OnMsgRecv (uint32_t topic, const char *data, int32_t size)
 
ErrCodeE CheckFrame (ErrCodeE errPop, MediaFrame &frame)
 
- Protected 属性 继承自 Emx::MediaStream
OnGetFrameCallback m_cbFrame
 
OnGetFrameInfoCallback m_cbFrameInfo
 
MediaRingBufferReader m_ring
 
std::string m_data
 
Channel m_chn
 

构造及析构函数说明

◆ MediaStreamAsync()

Emx::MediaStreamAsync::MediaStreamAsync ( )
inline

◆ ~MediaStreamAsync()

virtual Emx::MediaStreamAsync::~MediaStreamAsync ( )
inlinevirtual

成员函数说明

◆ Start()

ErrCodeE Emx::MediaStreamAsync::Start ( EuvLoop loop,
char *  buffer,
int  size,
Channel chn,
OnGetFrameCallback  cb,
OnGetFrameInfoCallback  cbInfo = nullptr 
)
参数
loop[in] 需要绑定的loop
buffer[in] 提供一个buffer用于消息的接收
size[in] buffer的大小
chn[in] 需要接收的通道
cb[in] 接收到MediaFrame帧数据的回调函数
cbInfo[in] 仅接收到MediaFrame帧信息的回调函数(未去接收实际帧数据),可选参数
返回
ErrCodeE

◆ Stop()

void Emx::MediaStreamAsync::Stop ( )

◆ RecvFramePause()

void Emx::MediaStreamAsync::RecvFramePause ( )
inline

◆ RecvFrameResume()

void Emx::MediaStreamAsync::RecvFrameResume ( )
inline

◆ IsReceivingFrame()

bool Emx::MediaStreamAsync::IsReceivingFrame ( )
inline