|
|
@ -15,6 +15,7 @@
|
|
|
|
#include <srs_app_config.hpp>
|
|
|
|
#include <srs_app_config.hpp>
|
|
|
|
#include <srs_kernel_stream.hpp>
|
|
|
|
#include <srs_kernel_stream.hpp>
|
|
|
|
#include <list>
|
|
|
|
#include <list>
|
|
|
|
|
|
|
|
#include <sstream>
|
|
|
|
|
|
|
|
|
|
|
|
std::shared_ptr<srt2rtmp> srt2rtmp::s_srt2rtmp_ptr;
|
|
|
|
std::shared_ptr<srt2rtmp> srt2rtmp::s_srt2rtmp_ptr;
|
|
|
|
|
|
|
|
|
|
|
@ -258,7 +259,7 @@ rtmp_client::rtmp_client(std::string key_path):_key_path(key_path)
|
|
|
|
_appname = ret_vec[0];
|
|
|
|
_appname = ret_vec[0];
|
|
|
|
_streamname = ret_vec[1];
|
|
|
|
_streamname = ret_vec[1];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
char url_sz[128];
|
|
|
|
std::stringstream url_ss;
|
|
|
|
|
|
|
|
|
|
|
|
std::vector<std::string> ip_ports = _srs_config->get_listens();
|
|
|
|
std::vector<std::string> ip_ports = _srs_config->get_listens();
|
|
|
|
int port = 0;
|
|
|
|
int port = 0;
|
|
|
@ -272,21 +273,29 @@ rtmp_client::rtmp_client(std::string key_path):_key_path(key_path)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
port = (port == 0) ? 1935 : port;
|
|
|
|
port = (port == 0) ? 1935 : port;
|
|
|
|
if (_vhost == DEF_VHOST) {
|
|
|
|
if (_vhost == DEF_VHOST) {
|
|
|
|
sprintf(url_sz, "rtmp://127.0.0.1:%d/%s/%s", port,
|
|
|
|
url_ss << "rtmp://127.0.0.1:" << port
|
|
|
|
_appname.c_str(), _streamname.c_str());
|
|
|
|
<< "/" << _appname
|
|
|
|
|
|
|
|
<< "/" << _streamname;
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
sprintf(url_sz, "rtmp://127.0.0.1:%d/%s?vhost=%s/%s", port,
|
|
|
|
if (_appname.find("?") == std::string::npos) {
|
|
|
|
_appname.c_str(), _vhost.c_str(), _streamname.c_str());
|
|
|
|
url_ss << "rtmp://127.0.0.1:" << port
|
|
|
|
|
|
|
|
<< "/" << _appname << "?vhost=" << _vhost
|
|
|
|
|
|
|
|
<< "/" << _streamname;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
url_ss << "rtmp://127.0.0.1:" << port
|
|
|
|
|
|
|
|
<< "/" << _appname << "&vhost=" << _vhost
|
|
|
|
|
|
|
|
<< "/" << _streamname;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
_url = url_sz;
|
|
|
|
_url = url_ss.str();
|
|
|
|
|
|
|
|
|
|
|
|
_h264_sps_changed = false;
|
|
|
|
_h264_sps_changed = false;
|
|
|
|
_h264_pps_changed = false;
|
|
|
|
_h264_pps_changed = false;
|
|
|
|
_h264_sps_pps_sent = false;
|
|
|
|
_h264_sps_pps_sent = false;
|
|
|
|
|
|
|
|
|
|
|
|
_last_live_ts = now_ms();
|
|
|
|
_last_live_ts = now_ms();
|
|
|
|
srs_trace("rtmp client construct url:%s", url_sz);
|
|
|
|
srs_trace("rtmp client construct url:%s", url_ss.str().c_str());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
rtmp_client::~rtmp_client() {
|
|
|
|
rtmp_client::~rtmp_client() {
|
|
|
|