延迟清空状态

This commit is contained in:
xiongziliang 2021-01-17 10:28:06 +08:00
parent c445ad2cdf
commit d879c5901d
4 changed files with 11 additions and 5 deletions

View File

@ -133,7 +133,7 @@ void RtmpPlayer::onPlayResult_l(const SockException &ex, bool handshake_done) {
//创建rtmp数据接收超时检测定时器
_rtmp_recv_timer = std::make_shared<Timer>(timeout_ms / 2000.0, lam, getPoller());
} else {
teardown();
shutdown(SockException(Err_shutdown,"teardown"));
}
}

View File

@ -65,7 +65,7 @@ void RtmpPusher::onPublishResult(const SockException &ex, bool handshake_done) {
}
if (ex) {
teardown();
shutdown(SockException(Err_shutdown,"teardown"));
}
}

View File

@ -26,12 +26,17 @@ RtspPusher::~RtspPusher() {
DebugL << endl;
}
void RtspPusher::teardown() {
void RtspPusher::sendTeardown(){
if (alive()) {
if (!_content_base.empty()) {
sendRtspRequest("TEARDOWN", _content_base);
}
shutdown(SockException(Err_shutdown, "teardown"));
}
}
void RtspPusher::teardown() {
sendTeardown();
reset();
CLEAR_ARR(_udp_socks);
_nonce.clear();
@ -107,7 +112,7 @@ void RtspPusher::onPublishResult(const SockException &ex, bool handshake_done) {
}
if (ex) {
teardown();
sendTeardown();
}
}

View File

@ -60,6 +60,7 @@ private:
void sendSetup(unsigned int track_idx);
void sendRecord();
void sendOptions();
void sendTeardown();
void handleResAnnounce(const Parser &parser);
void handleResSetup(const Parser &parser, unsigned int track_idx);