[fix] start to send data only when ice status turns to READY

This commit is contained in:
dijunkun
2024-11-28 18:26:00 +08:00
parent 21737c354a
commit 11d84068a4
2 changed files with 8 additions and 5 deletions

View File

@@ -140,13 +140,15 @@ int PeerConnection::Init(PeerConnectionParams params,
user_id.size(), user_data_); user_id.size(), user_data_);
} else if ("connected" == ice_status) { } else if ("connected" == ice_status) {
// std::string transmission_id = std::string(user_id, user_id_size); // std::string transmission_id = std::string(user_id, user_id_size);
is_ice_transmission_ready_[user_id] = true; // is_ice_transmission_ready_[user_id] = true;
on_connection_status_(ConnectionStatus::Connected, user_id.data(), // on_connection_status_(ConnectionStatus::Connected, user_id.data(),
user_id.size(), user_data_); // user_id.size(), user_data_);
b_force_i_frame_ = true; // b_force_i_frame_ = true;
LOG_INFO("Ice connected"); LOG_INFO("Ice connected");
} else if ("ready" == ice_status) { } else if ("ready" == ice_status) {
is_ice_transmission_ready_[user_id] = true; is_ice_transmission_ready_[user_id] = true;
b_force_i_frame_ = true;
LOG_INFO("Ice ready");
on_connection_status_(ConnectionStatus::Connected, user_id.data(), on_connection_status_(ConnectionStatus::Connected, user_id.data(),
user_id.size(), user_data_); user_id.size(), user_data_);
} else if ("closed" == ice_status) { } else if ("closed" == ice_status) {

View File

@@ -143,8 +143,9 @@ class PeerConnection {
bool enable_turn_ = false; bool enable_turn_ = false;
bool trickle_ice_ = true; bool trickle_ice_ = true;
bool reliable_ice_ = true; bool reliable_ice_ = true;
bool try_rejoin_with_turn_ = false;
TraversalMode mode_ = TraversalMode::P2P; TraversalMode mode_ = TraversalMode::P2P;
bool try_rejoin_with_turn_ = true;
std::vector<int> video_payload_types_ = {RtpPacket::PAYLOAD_TYPE::H264, std::vector<int> video_payload_types_ = {RtpPacket::PAYLOAD_TYPE::H264,
RtpPacket::PAYLOAD_TYPE::AV1}; RtpPacket::PAYLOAD_TYPE::AV1};
std::vector<int> audio_payload_types_ = {RtpPacket::PAYLOAD_TYPE::OPUS}; std::vector<int> audio_payload_types_ = {RtpPacket::PAYLOAD_TYPE::OPUS};