Refine SrsBasicRtmpClient in time unit.

pull/1651/head
winlin 6 years ago
parent c6dcc76fea
commit e436cc5665

@ -192,12 +192,12 @@ srs_error_t SrsDynamicHttpConn::do_proxy(ISrsHttpResponseReader* rr, SrsFlvDecod
srs_freep(sdk);
int64_t cto = srsu2ms(SRS_CONSTS_RTMP_TIMEOUT);
int64_t sto = srsu2ms(SRS_CONSTS_RTMP_PULSE);
srs_utime_t cto = SRS_CONSTS_RTMP_TIMEOUT;
srs_utime_t sto = SRS_CONSTS_RTMP_PULSE;
sdk = new SrsSimpleRtmpClient(output, cto, sto);
if ((err = sdk->connect()) != srs_success) {
return srs_error_wrap(err, "connect %s failed, cto=%" PRId64 ", sto=%" PRId64, output.c_str(), cto, sto);
return srs_error_wrap(err, "connect %s failed, cto=%dms, sto=%dms.", output.c_str(), srsu2msi(cto), srsu2msi(sto));
}
if ((err = sdk->publish(SRS_CONSTS_RTMP_PROTOCOL_CHUNK_SIZE)) != srs_success) {

@ -114,12 +114,12 @@ srs_error_t SrsEdgeRtmpUpstream::connect(SrsRequest* r, SrsLbRoundRobin* lb)
}
srs_freep(sdk);
int64_t cto = srsu2ms(SRS_EDGE_INGESTER_TIMEOUT);
int64_t sto = srsu2ms(SRS_CONSTS_RTMP_PULSE);
srs_utime_t cto = SRS_EDGE_INGESTER_TIMEOUT;
srs_utime_t sto = SRS_CONSTS_RTMP_PULSE;
sdk = new SrsSimpleRtmpClient(url, cto, sto);
if ((err = sdk->connect()) != srs_success) {
return srs_error_wrap(err, "edge pull %s failed, cto=%" PRId64 ", sto=%" PRId64, url.c_str(), cto, sto);
return srs_error_wrap(err, "edge pull %s failed, cto=%dms, sto=%dms.", url.c_str(), srsu2msi(cto), srsu2msi(sto));
}
if ((err = sdk->play(_srs_config->get_chunk_size(req->vhost))) != srs_success) {
@ -474,13 +474,12 @@ srs_error_t SrsEdgeForwarder::start()
// open socket.
srs_freep(sdk);
// TODO: FIXME: Should switch cto with sto?
int64_t cto = srsu2ms(SRS_EDGE_FORWARDER_TIMEOUT);
int64_t sto = srsu2ms(SRS_CONSTS_RTMP_TIMEOUT);
srs_utime_t cto = SRS_EDGE_FORWARDER_TIMEOUT;
srs_utime_t sto = SRS_CONSTS_RTMP_TIMEOUT;
sdk = new SrsSimpleRtmpClient(url, cto, sto);
if ((err = sdk->connect()) != srs_success) {
return srs_error_wrap(err, "sdk connect %s failed, cto=%" PRId64 ", sto=%" PRId64, url.c_str(), cto, sto);
return srs_error_wrap(err, "sdk connect %s failed, cto=%dms, sto=%dms.", url.c_str(), srsu2msi(cto), srsu2msi(sto));
}
if ((err = sdk->publish(_srs_config->get_chunk_size(req->vhost))) != srs_success) {

@ -213,13 +213,12 @@ srs_error_t SrsForwarder::do_cycle()
}
srs_freep(sdk);
// TODO: FIXME: Should switch cto with sto?
int64_t cto = srsu2ms(SRS_FORWARDER_CIMS);
int64_t sto = srsu2ms(SRS_CONSTS_RTMP_TIMEOUT);
srs_utime_t cto = SRS_FORWARDER_CIMS;
srs_utime_t sto = SRS_CONSTS_RTMP_TIMEOUT;
sdk = new SrsSimpleRtmpClient(url, cto, sto);
if ((err = sdk->connect()) != srs_success) {
return srs_error_wrap(err, "sdk connect url=%s, cto=%" PRId64 ", sto=%" PRId64, url.c_str(), cto, sto);
return srs_error_wrap(err, "sdk connect url=%s, cto=%dms, sto=%dms.", url.c_str(), srsu2msi(cto), srsu2msi(sto));
}
if ((err = sdk->publish(_srs_config->get_chunk_size(req->vhost))) != srs_success) {

@ -615,13 +615,13 @@ srs_error_t SrsMpegtsOverUdp::connect()
return err;
}
int64_t cto = srsu2ms(SRS_CONSTS_RTMP_TIMEOUT);
int64_t sto = srsu2ms(SRS_CONSTS_RTMP_PULSE);
srs_utime_t cto = SRS_CONSTS_RTMP_TIMEOUT;
srs_utime_t sto = SRS_CONSTS_RTMP_PULSE;
sdk = new SrsSimpleRtmpClient(output, cto, sto);
if ((err = sdk->connect()) != srs_success) {
close();
return srs_error_wrap(err, "connect %s failed, cto=%" PRId64 ", sto=%" PRId64, output.c_str(), cto, sto);
return srs_error_wrap(err, "connect %s failed, cto=%dms, sto=%dms.", output.c_str(), srsu2msi(cto), srsu2msi(sto));
}
if ((err = sdk->publish(SRS_CONSTS_RTMP_PROTOCOL_CHUNK_SIZE)) != srs_success) {

@ -72,7 +72,7 @@ using namespace std;
// when edge timeout, retry next.
#define SRS_EDGE_TOKEN_TRAVERSE_TIMEOUT (3 * SRS_UTIME_SECONDS)
SrsSimpleRtmpClient::SrsSimpleRtmpClient(string u, int64_t ctm, int64_t stm) : SrsBasicRtmpClient(u, ctm, stm)
SrsSimpleRtmpClient::SrsSimpleRtmpClient(string u, srs_utime_t ctm, srs_utime_t stm) : SrsBasicRtmpClient(u, ctm, stm)
{
}

@ -64,7 +64,7 @@ class ISrsKafkaCluster;
class SrsSimpleRtmpClient : public SrsBasicRtmpClient
{
public:
SrsSimpleRtmpClient(std::string u, int64_t ctm, int64_t stm);
SrsSimpleRtmpClient(std::string u, srs_utime_t ctm, srs_utime_t stm);
virtual ~SrsSimpleRtmpClient();
protected:
virtual srs_error_t connect_app();

@ -649,13 +649,13 @@ srs_error_t SrsRtspConn::connect()
}
// connect host.
int64_t cto = srsu2ms(SRS_CONSTS_RTMP_TIMEOUT);
int64_t sto = srsu2ms(SRS_CONSTS_RTMP_PULSE);
srs_utime_t cto = SRS_CONSTS_RTMP_TIMEOUT;
srs_utime_t sto = SRS_CONSTS_RTMP_PULSE;
sdk = new SrsSimpleRtmpClient(url, cto, sto);
if ((err = sdk->connect()) != srs_success) {
close();
return srs_error_wrap(err, "connect %s failed, cto=%" PRId64 ", sto=%" PRId64, url.c_str(), cto, sto);
return srs_error_wrap(err, "connect %s failed, cto=%dms, sto=%dms.", url.c_str(), srsu2msi(cto), srsu2msi(sto));
}
// publish.

@ -1275,8 +1275,8 @@ int SrsIngestHlsOutput::connect()
srs_trace("connect output=%s", url.c_str());
// connect host.
int64_t cto = srsu2ms(SRS_CONSTS_RTMP_TIMEOUT);
int64_t sto = srsu2ms(SRS_CONSTS_RTMP_PULSE);
srs_utime_t cto =SRS_CONSTS_RTMP_TIMEOUT;
srs_utime_t sto =SRS_CONSTS_RTMP_PULSE;
sdk = new SrsBasicRtmpClient(url, cto, sto);
if ((err = sdk->connect()) != srs_success) {
@ -1284,7 +1284,7 @@ int SrsIngestHlsOutput::connect()
ret = srs_error_code(err);
srs_freep(err);
close();
srs_error("mpegts: connect %s failed, cto=%" PRId64 ", sto=%" PRId64 ". ret=%d", url.c_str(), cto, sto, ret);
srs_error("mpegts: connect %s failed, cto=%dms, sto=%dms. ret=%d", url.c_str(), srsu2msi(cto), srsu2msi(sto), ret);
return ret;
}

@ -33,7 +33,7 @@ using namespace std;
#include <srs_protocol_utility.hpp>
#include <srs_service_utility.hpp>
SrsBasicRtmpClient::SrsBasicRtmpClient(string u, int64_t ctm, int64_t stm)
SrsBasicRtmpClient::SrsBasicRtmpClient(string u, srs_utime_t ctm, srs_utime_t stm)
{
clk = new SrsWallClock();
kbps = new SrsKbps(clk);
@ -65,7 +65,7 @@ srs_error_t SrsBasicRtmpClient::connect()
close();
transport = new SrsTcpClient(req->host, req->port, srs_utime_t(connect_timeout * SRS_UTIME_MILLISECONDS));
transport = new SrsTcpClient(req->host, req->port, srs_utime_t(connect_timeout));
client = new SrsRtmpClient(transport);
kbps->set_io(transport, transport);
@ -74,8 +74,8 @@ srs_error_t SrsBasicRtmpClient::connect()
return srs_error_wrap(err, "connect");
}
client->set_recv_timeout(stream_timeout * SRS_UTIME_MILLISECONDS);
client->set_send_timeout(stream_timeout * SRS_UTIME_MILLISECONDS);
client->set_recv_timeout(stream_timeout);
client->set_send_timeout(stream_timeout);
// connect to vhost/app
if ((err = client->handshake()) != srs_success) {

@ -50,8 +50,8 @@ class SrsBasicRtmpClient
{
private:
std::string url;
int64_t connect_timeout;
int64_t stream_timeout;
srs_utime_t connect_timeout;
srs_utime_t stream_timeout;
protected:
SrsRequest* req;
private:
@ -63,9 +63,9 @@ private:
public:
// Constructor.
// @param u The RTMP url, for example, rtmp://ip:port/app/stream?domain=vhost
// @param ctm The timeout in ms to connect to server.
// @param stm The timeout in ms to delivery A/V stream.
SrsBasicRtmpClient(std::string u, int64_t ctm, int64_t stm);
// @param ctm The timeout in srs_utime_t to connect to server.
// @param stm The timeout in srs_utime_t to delivery A/V stream.
SrsBasicRtmpClient(std::string u, srs_utime_t ctm, srs_utime_t stm);
virtual ~SrsBasicRtmpClient();
public:
// Connect, handshake and connect app to RTMP server.

Loading…
Cancel
Save