[*] 优化

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> template <typename Source>
acgist::Capturer<Source>::~Capturer() { acgist::Capturer<Source>::~Capturer() {
// TODO释放 if(this->source != nullptr) {
// delete this->source; this->source->Release();
// delete this->source;
this->source = nullptr;
}
} }
/** /**

View File

@@ -26,16 +26,14 @@ public:
// 媒体管理 // 媒体管理
acgist::MediaManager* mediaManager = nullptr; 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: public:
Client(acgist::MediaManager* mediaManager); Client(acgist::MediaManager* mediaManager);
virtual ~Client(); virtual ~Client();
public:
}; };
/** /**
@@ -43,6 +41,10 @@ public:
*/ */
class RoomClient : public Client { class RoomClient : public Client {
public:
// 房间ID
std::string roomId;
public: public:
RoomClient(acgist::MediaManager* mediaManager); RoomClient(acgist::MediaManager* mediaManager);
virtual ~RoomClient(); virtual ~RoomClient();
@@ -58,9 +60,7 @@ class LocalClient : public RoomClient {
public: public:
LocalClient(acgist::MediaManager* mediaManager); LocalClient(acgist::MediaManager* mediaManager);
virtual ~LocalClient(); virtual ~LocalClient() override;
public:
}; };

View File

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

View File

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

View File

@@ -1,5 +1,7 @@
#include "../include/Client.hpp" #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() {
}