[*] 优化

This commit is contained in:
acgist
2024-05-11 15:39:03 +08:00
parent c7fc69be22
commit 70ca1d0146
5 changed files with 21 additions and 11 deletions

View File

@@ -89,8 +89,11 @@ acgist::Capturer<Source>::Capturer() {}
template <typename Source>
acgist::Capturer<Source>::~Capturer() {
// TODO释放
if(this->source != nullptr) {
this->source->Release();
// delete this->source;
this->source = nullptr;
}
}
/**

View File

@@ -26,16 +26,14 @@ public:
// 媒体管理
acgist::MediaManager* mediaManager = nullptr;
// 音频轨道
webrtc::AudioTrackInterface* audioTrack = nullptr;
rtc::scoped_refptr<webrtc::AudioTrackInterface> audioTrack = nullptr;
// 视频轨道
webrtc::VideoTrackInterface* videoTrack = nullptr;
rtc::scoped_refptr<webrtc::VideoTrackInterface> videoTrack = nullptr;
public:
Client(acgist::MediaManager* mediaManager);
virtual ~Client();
public:
};
/**
@@ -43,6 +41,10 @@ public:
*/
class RoomClient : public Client {
public:
// 房间ID
std::string roomId;
public:
RoomClient(acgist::MediaManager* mediaManager);
virtual ~RoomClient();
@@ -58,9 +60,7 @@ class LocalClient : public RoomClient {
public:
LocalClient(acgist::MediaManager* mediaManager);
virtual ~LocalClient();
public:
virtual ~LocalClient() override;
};

View File

@@ -1,9 +1,12 @@
#include "../include/Client.hpp"
#include <hilog/log.h>
acgist::Client::Client(acgist::MediaManager* mediaManager) : mediaManager(mediaManager) {
}
acgist::Client::~Client() {
OH_LOG_INFO(LOG_APP, "释放终端:%s", this->clientId.data());
if(this->audioTrack != nullptr) {
this->audioTrack->Release();
// delete this->audioTrack;

View File

@@ -2,6 +2,8 @@
acgist::LocalClient::LocalClient(acgist::MediaManager* mediaManager) : acgist::RoomClient(mediaManager) {
this->mediaManager->newLocalClient();
this->audioTrack = this->mediaManager->getAudioTrack();
this->videoTrack = this->mediaManager->getVideoTrack();
}
acgist::LocalClient::~LocalClient() {

View File

@@ -1,5 +1,7 @@
#include "../include/Client.hpp"
acgist::RoomClient::RoomClient(acgist::MediaManager* mediaManager) : acgist::Client(mediaManager) {}
acgist::RoomClient::RoomClient(acgist::MediaManager* mediaManager) : acgist::Client(mediaManager) {
}
acgist::RoomClient::~RoomClient() {}
acgist::RoomClient::~RoomClient() {
}