Fix crash: send audio data when encoder has not inited yet

This commit is contained in:
dijunkun
2024-07-24 16:11:40 +08:00
parent 792a286899
commit e73f9b3457
2 changed files with 17 additions and 9 deletions

View File

@@ -603,6 +603,14 @@ int PeerConnection::SendVideoData(const char *data, size_t size) {
} }
int PeerConnection::SendAudioData(const char *data, size_t size) { int PeerConnection::SendAudioData(const char *data, size_t size) {
if (!ice_ready_) {
return -1;
}
if (ice_transmission_list_.empty()) {
return -1;
}
int ret = audio_encoder_->Encode( int ret = audio_encoder_->Encode(
(uint8_t *)data, size, (uint8_t *)data, size,
[this](char *encoded_audio_buffer, size_t size) -> int { [this](char *encoded_audio_buffer, size_t size) -> int {

View File

@@ -181,7 +181,7 @@ target("pc")
add_includedirs("src/transmission", "src/interface", {public = true}) add_includedirs("src/transmission", "src/interface", {public = true})
target("projectx") target("projectx")
set_kind("shared") set_kind("static")
add_deps("log", "pc") add_deps("log", "pc")
add_files("src/rtc/*.cpp") add_files("src/rtc/*.cpp")
add_includedirs("src/rtc", "src/pc", "src/interface") add_includedirs("src/rtc", "src/pc", "src/interface")
@@ -203,14 +203,14 @@ target("projectx")
end end
add_installfiles("src/interface/*.h", {prefixdir = "include"}) add_installfiles("src/interface/*.h", {prefixdir = "include"})
add_rules("utils.symbols.export_list", {symbols = { -- add_rules("utils.symbols.export_list", {symbols = {
"CreatePeer", -- "CreatePeer",
"DestroyPeer", -- "DestroyPeer",
"Init", -- "Init",
"CreateConnection", -- "CreateConnection",
"JoinConnection", -- "JoinConnection",
"LeaveConnection", -- "LeaveConnection",
"SendData"}}) -- "SendData"}})
-- add_rules("utils.symbols.export_all", {export_classes = true}) -- add_rules("utils.symbols.export_all", {export_classes = true})