Fix connection status error: send packets only when ice status is ready

This commit is contained in:
dijunkun
2023-12-05 15:12:18 +08:00
parent 936348ba9e
commit 6a6e922fc1
2 changed files with 7 additions and 5 deletions

View File

@@ -126,8 +126,7 @@ int PeerConnection::Init(PeerConnectionParams params,
on_connection_status_(ConnectionStatus::Connecting);
} else if ("disconnected" == ice_status) {
on_connection_status_(ConnectionStatus::Disconnected);
} else if ("completed" == ice_status || "ready" == ice_status ||
"connected" == ice_status) {
} else if ("ready" == ice_status) {
ice_ready_ = true;
on_connection_status_(ConnectionStatus::Connected);
b_force_i_frame_ = true;
@@ -508,7 +507,7 @@ int PeerConnection::SendVideoData(const char *data, size_t size) {
int ret = video_encoder_->Encode(
(uint8_t *)data, size, [this](char *encoded_frame, size_t size) -> int {
for (auto &ice_trans : ice_transmission_list_) {
// LOG_ERROR("H264 frame size: [{}]", size);
LOG_ERROR("H264 frame size: [{}]", size);
ice_trans.second->SendData(IceTransmission::DATA_TYPE::VIDEO,
encoded_frame, size);
}
@@ -529,8 +528,8 @@ int PeerConnection::SendAudioData(const char *data, size_t size) {
[this](char *encoded_audio_buffer, size_t size) -> int {
for (auto &ice_trans : ice_transmission_list_) {
// LOG_ERROR("opus frame size: [{}]", size);
ice_trans.second->SendData(IceTransmission::DATA_TYPE::AUDIO,
encoded_audio_buffer, size);
// ice_trans.second->SendData(IceTransmission::DATA_TYPE::AUDIO,
// encoded_audio_buffer, size);
}
return 0;
});