解决不指定流或者TCP暂停断流问题

This commit is contained in:
sunhui 2021-03-10 23:17:15 +08:00
parent c0f4899950
commit f5e8bae760
2 changed files with 20 additions and 5 deletions

View File

@ -160,15 +160,30 @@ uint16_t RtpServer::getPort() {
return _udp_server ? _udp_server->get_local_port() : 0;
}
void RtpServer::pauseRtpCheck(){
void RtpServer::pauseRtpCheck(const string &stream_id){
if(_rtp_process)
_rtp_process->setStopCheckRtp(true);
else{
if(!stream_id.empty()){
auto rtp_process = RtpSelector::Instance().getProcess(stream_id,false);
if(rtp_process)
rtp_process->setStopCheckRtp(true);
}
}
}
void RtpServer::resumeRtpCheck(){
void RtpServer::resumeRtpCheck(const string &stream_id){
if(_rtp_process)
_rtp_process->setStopCheckRtp(false);
else{
//解决不指定流或者TCP收流无法暂停
if(!stream_id.empty()){
auto rtp_process = RtpSelector::Instance().getProcess(stream_id,false);
if(rtp_process)
rtp_process->setStopCheckRtp(false);
}
}
}
}//namespace mediakit

View File

@ -60,12 +60,12 @@ public:
/**
* Rtp服务的RTP流检测
*/
void pauseRtpCheck();
void pauseRtpCheck(const string &stream_id = "");
/**
* Rtp服务的RTP流检测
*/
void resumeRtpCheck();
void resumeRtpCheck(const string &stream_id = "");
protected:
Socket::Ptr _udp_server;