[*] 鸿蒙webrtc
This commit is contained in:
@@ -45,4 +45,5 @@ target_link_libraries(
|
|||||||
${PROJECT_NAME} PUBLIC
|
${PROJECT_NAME} PUBLIC
|
||||||
mediasoupclient
|
mediasoupclient
|
||||||
libace_napi.z.so
|
libace_napi.z.so
|
||||||
|
libhilog_ndk.z.so
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -14,12 +14,23 @@
|
|||||||
|
|
||||||
namespace acgist {
|
namespace acgist {
|
||||||
|
|
||||||
acgist::MediaManager* mediaManager;
|
acgist::MediaManager* mediaManager = nullptr;
|
||||||
std::map<std::string, acgist::Room*> roomMap;
|
std::map<std::string, acgist::Room*> roomMap;
|
||||||
std::map<std::string, acgist::SessionClient*> sessionMap;
|
std::map<std::string, acgist::SessionClient*> sessionMap;
|
||||||
|
|
||||||
static void init() {
|
static void init() {
|
||||||
// OH_LOG_INFO(LOG_APP, "加载bind");
|
OH_LOG_INFO(LOG_APP, "加载libtaoyao");
|
||||||
|
// TODO:输出编码能力
|
||||||
|
mediaManager = new MediaManager();
|
||||||
|
mediaManager->initPeerConnectionFactory();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void shutdown() {
|
||||||
|
OH_LOG_INFO(LOG_APP, "卸载libtaoyao");
|
||||||
|
if (mediaManager != nullptr) {
|
||||||
|
delete mediaManager;
|
||||||
|
mediaManager = nullptr;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static napi_value sessionCall(napi_env env, napi_callback_info info) { return 0; }
|
static napi_value sessionCall(napi_env env, napi_callback_info info) { return 0; }
|
||||||
|
|||||||
@@ -14,6 +14,9 @@
|
|||||||
namespace acgist {
|
namespace acgist {
|
||||||
|
|
||||||
class MediaManager {
|
class MediaManager {
|
||||||
|
public:
|
||||||
|
MediaManager();
|
||||||
|
~MediaManager();
|
||||||
public:
|
public:
|
||||||
webrtc::PeerConnectionFactory* peerConnectionFactoryPtr;
|
webrtc::PeerConnectionFactory* peerConnectionFactoryPtr;
|
||||||
public:
|
public:
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
#include "../include/MediaManager.hpp"
|
||||||
|
|
||||||
|
#include "api/peer_connection_interface.h"
|
||||||
|
|
||||||
|
acgist::MediaManager::MediaManager() {
|
||||||
|
this->peerConnectionFactoryPtr = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
acgist::MediaManager::~MediaManager() {
|
||||||
|
if(this->peerConnectionFactoryPtr != nullptr) {
|
||||||
|
// delete this->peerConnectionFactoryPtr;
|
||||||
|
this->peerConnectionFactoryPtr->Release();
|
||||||
|
this->peerConnectionFactoryPtr = nullptr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void acgist::MediaManager::initPeerConnectionFactory() {
|
||||||
|
// webrtc::PeerConnectionFactoryDependencies peerConnectionFactoryDependencies;
|
||||||
|
// webrtc::PeerConnectionFactory::Create(PeerConnectionFactoryDependencies dependencies)
|
||||||
|
// webrtc::PeerConnectionFactoryDependencies c;
|
||||||
|
// this->peerConnectionFactoryPtr = webrtc::PeerConnectionFactory::Create(c);
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
export const sessionCall: () => void;
|
export const sessionCall : () => void;
|
||||||
export const sessionPause: () => void;
|
export const sessionPause : () => void;
|
||||||
export const sessionResume: () => void;
|
export const sessionResume : () => void;
|
||||||
export const sessionExchange: () => void;
|
export const sessionExchange: () => void;
|
||||||
export const sessionClose: () => void;
|
export const sessionClose : () => void;
|
||||||
export const mediaConsume: () => void;
|
export const mediaConsume : () => void;
|
||||||
export const mediaConsumerClose: () => void;
|
export const mediaConsumerClose : () => void;
|
||||||
export const mediaConsumerPause: () => void;
|
export const mediaConsumerPause : () => void;
|
||||||
export const mediaConsumerResume: () => void;
|
export const mediaConsumerResume: () => void;
|
||||||
export const mediaProducerClose: () => void;
|
export const mediaProducerClose : () => void;
|
||||||
export const mediaProducerPause: () => void;
|
export const mediaProducerPause : () => void;
|
||||||
export const mediaProducerResume: () => void;
|
export const mediaProducerResume: () => void;
|
||||||
export const roomClientList: () => void;
|
export const roomClientList : () => void;
|
||||||
export const roomClose: () => void;
|
export const roomClose : () => void;
|
||||||
export const roomEnter: () => void;
|
export const roomEnter : () => void;
|
||||||
export const roomExpel: () => void;
|
export const roomExpel : () => void;
|
||||||
export const roomInvite: () => void;
|
export const roomInvite: () => void;
|
||||||
export const roomLeave: () => void;
|
export const roomLeave : () => void;
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import hilog from '@ohos.hilog';
|
|||||||
import webSocket from '@ohos.net.webSocket';
|
import webSocket from '@ohos.net.webSocket';
|
||||||
|
|
||||||
import { setting } from './Setting';
|
import { setting } from './Setting';
|
||||||
|
import libtaoyao from 'libtaoyao.so'
|
||||||
|
|
||||||
interface BusinessError<T = void> extends Error {
|
interface BusinessError<T = void> extends Error {
|
||||||
code: number;
|
code: number;
|
||||||
|
|||||||
Reference in New Issue
Block a user