// ice接收数据回调
void cb_nice_recv(NiceAgent* agent, guint stream_id, guint component_id,
guint len, gchar* buf, gpointer user_data) {
if (user_data == NULL || len == 0) {
return;
}
LibNiceConnection* nicecon = reinterpret_cast<LibNiceConnection*>(user_data);
nicecon->onData(component_id, reinterpret_cast<char*> (buf), static_cast<unsigned int> (len));
}
// 有新的candidate回调
void cb_new_candidate(NiceAgent *agent, guint stream_id, guint component_id, gchar *foundation,
gpointer user_data) {
LibNiceConnection *conn = reinterpret_cast<LibNiceConnection*>(user_data);
std::string found(foundation);
conn->getCandidate(stream_id, component_id, found);
}
// 收集candidate结束
void cb_candidate_ga
Licode入门学习:LibNiceConnection源码分析
最新推荐文章于 2024-08-21 09:12:34 发布
本文主要探讨Licode中的LibNiceConnection组件,深入源码层面,解析其在WebRTC通信中的作用,重点讲解LibNice如何实现ICE连接,以及在实时通信中的关键流程和技术细节。
摘要由CSDN通过智能技术生成