Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
胡斌
/
srs
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
winlin
2015-10-14 11:22:12 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
a9ad7b211bbd3bd78f0c70937faf2e0109d7ec0d
a9ad7b21
1 parent
adb8f243
refine simple rtmp client for post flv stream.
隐藏空白字符变更
内嵌
并排对比
正在显示
3 个修改的文件
包含
7 行增加
和
6 行删除
trunk/src/app/srs_app_caster_flv.cpp
trunk/src/app/srs_app_rtmp_conn.cpp
trunk/src/app/srs_app_rtmp_conn.hpp
trunk/src/app/srs_app_caster_flv.cpp
查看文件 @
a9ad7b2
...
...
@@ -183,7 +183,7 @@ int SrsDynamicHttpConn::do_proxy(ISrsHttpResponseReader* rr, SrsFlvDecoder* dec)
while
(
!
rr
->
eof
())
{
pprint
->
elapse
();
if
((
ret
=
sdk
->
connect
(
output
))
!=
ERROR_SUCCESS
)
{
if
((
ret
=
sdk
->
connect
(
output
,
SRS_CONSTS_RTMP_RECV_TIMEOUT_US
))
!=
ERROR_SUCCESS
)
{
return
ret
;
}
...
...
@@ -206,6 +206,7 @@ int SrsDynamicHttpConn::do_proxy(ISrsHttpResponseReader* rr, SrsFlvDecoder* dec)
return
ret
;
}
// TODO: FIXME: for post flv, reconnect when error.
if
((
ret
=
sdk
->
rtmp_write_packet
(
type
,
time
,
data
,
size
))
!=
ERROR_SUCCESS
)
{
if
(
!
srs_is_client_gracefully_close
(
ret
))
{
srs_error
(
"flv: proxy rtmp packet failed. ret=%d"
,
ret
);
...
...
trunk/src/app/srs_app_rtmp_conn.cpp
查看文件 @
a9ad7b2
...
...
@@ -92,7 +92,7 @@ SrsSimpleRtmpClient::~SrsSimpleRtmpClient()
srs_freep
(
transport
);
}
int
SrsSimpleRtmpClient
::
connect
(
string
url
)
int
SrsSimpleRtmpClient
::
connect
(
string
url
,
int64_t
timeout
)
{
int
ret
=
ERROR_SUCCESS
;
...
...
@@ -110,15 +110,15 @@ int SrsSimpleRtmpClient::connect(string url)
}
// connect host.
if
((
ret
=
transport
->
connect
(
req
->
host
,
req
->
port
,
ST_UTIME_NO_TIMEOUT
))
!=
ERROR_SUCCESS
)
{
if
((
ret
=
transport
->
connect
(
req
->
host
,
req
->
port
,
timeout
))
!=
ERROR_SUCCESS
)
{
return
ret
;
}
srs_freep
(
client
);
client
=
new
SrsRtmpClient
(
transport
);
client
->
set_recv_timeout
(
SRS_CONSTS_RTMP_RECV_TIMEOUT_US
);
client
->
set_send_timeout
(
SRS_CONSTS_RTMP_SEND_TIMEOUT_US
);
client
->
set_recv_timeout
(
timeout
);
client
->
set_send_timeout
(
timeout
);
// connect to vhost/app
if
((
ret
=
client
->
handshake
())
!=
ERROR_SUCCESS
)
{
...
...
trunk/src/app/srs_app_rtmp_conn.hpp
查看文件 @
a9ad7b2
...
...
@@ -71,7 +71,7 @@ public:
SrsSimpleRtmpClient
();
virtual
~
SrsSimpleRtmpClient
();
public
:
virtual
int
connect
(
std
::
string
url
);
virtual
int
connect
(
std
::
string
url
,
int64_t
timeout
);
virtual
void
close
();
public
:
virtual
int
rtmp_write_packet
(
char
type
,
u_int32_t
timestamp
,
char
*
data
,
int
size
);
...
...
请
注册
或
登录
后发表评论