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-05-10 10:35:35 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
c617d2aaa59fb2970cccc0870791286a00e64ad4
c617d2aa
1 parent
77ee2400
support push flv stream over HTTP POST to SRS.
显示空白字符变更
内嵌
并排对比
正在显示
4 个修改的文件
包含
21 行增加
和
4 行删除
README.md
trunk/src/app/srs_app_caster_flv.cpp
trunk/src/app/srs_app_caster_flv.hpp
trunk/src/core/srs_core.hpp
README.md
查看文件 @
c617d2a
...
...
@@ -522,6 +522,8 @@ Supported operating systems and hardware:
[
#250
](
https://github.com/simple-rtmp-server/srs/issues/250
)
.
1.
[
experiment
]
Support push RTSP to SRS, read
[
#133
](
https://github.com/simple-rtmp-server/srs/issues/133
)
.
1.
[
experiment
]
Support push flv stream over HTTP POST to SRS, read
[
wiki
](
https://github.com/simple-rtmp-server/srs/wiki/v2_CN_Streamer#push-http-flv-to-srs
)
.
1.
Start
[
2.0release branch
](
https://github.com/simple-rtmp-server/srs/tree/2.0release
)
.
1.
[
no-plan
]
Support <500ms latency, FRSC(Fast RTMP-compatible Stream Channel tech).
1.
[
no-plan
]
Support RTMP 302 redirect
[
#92
](
https://github.com/simple-rtmp-server/srs/issues/92
)
.
...
...
@@ -560,6 +562,7 @@ Supported operating systems and hardware:
### SRS 2.0 history
*
v2.0, 2015-05-10, support push flv stream over HTTP POST to SRS.
*
v2.0, 2015-04-20, support ingest hls live stream to RTMP.
*
v2.0, 2015-04-15, for
[
#383
](
https://github.com/simple-rtmp-server/srs/issues/383
)
, support mix_correct algorithm. 2.0.161.
*
v2.0, 2015-04-13, for
[
#381
](
https://github.com/simple-rtmp-server/srs/issues/381
)
, support reap hls/ts by gop or not. 2.0.160.
...
...
trunk/src/app/srs_app_caster_flv.cpp
查看文件 @
c617d2a
...
...
@@ -175,6 +175,17 @@ int SrsDynamicHttpConn::proxy(ISrsHttpResponseWriter* w, SrsHttpMessage* r, std:
return
ret
;
}
ret
=
do_proxy
(
rr
,
&
dec
);
close
();
return
ret
;
}
int
SrsDynamicHttpConn
::
do_proxy
(
ISrsHttpResponseReader
*
rr
,
SrsFlvDecoder
*
dec
)
{
int
ret
=
ERROR_SUCCESS
;
char
pps
[
4
];
while
(
!
rr
->
eof
())
{
pprint
->
elapse
();
...
...
@@ -185,7 +196,7 @@ int SrsDynamicHttpConn::proxy(ISrsHttpResponseWriter* w, SrsHttpMessage* r, std:
char
type
;
int32_t
size
;
u_int32_t
time
;
if
((
ret
=
dec
.
read_tag_header
(
&
type
,
&
size
,
&
time
))
!=
ERROR_SUCCESS
)
{
if
((
ret
=
dec
->
read_tag_header
(
&
type
,
&
size
,
&
time
))
!=
ERROR_SUCCESS
)
{
if
(
!
srs_is_client_gracefully_close
(
ret
))
{
srs_error
(
"flv: proxy tag header failed. ret=%d"
,
ret
);
}
...
...
@@ -193,7 +204,7 @@ int SrsDynamicHttpConn::proxy(ISrsHttpResponseWriter* w, SrsHttpMessage* r, std:
}
char
*
data
=
new
char
[
size
];
if
((
ret
=
dec
.
read_tag_data
(
data
,
size
))
!=
ERROR_SUCCESS
)
{
if
((
ret
=
dec
->
read_tag_data
(
data
,
size
))
!=
ERROR_SUCCESS
)
{
srs_freep
(
data
);
if
(
!
srs_is_client_gracefully_close
(
ret
))
{
srs_error
(
"flv: proxy tag data failed. ret=%d"
,
ret
);
...
...
@@ -208,7 +219,7 @@ int SrsDynamicHttpConn::proxy(ISrsHttpResponseWriter* w, SrsHttpMessage* r, std:
return
ret
;
}
if
((
ret
=
dec
.
read_previous_tag_size
(
pps
))
!=
ERROR_SUCCESS
)
{
if
((
ret
=
dec
->
read_previous_tag_size
(
pps
))
!=
ERROR_SUCCESS
)
{
if
(
!
srs_is_client_gracefully_close
(
ret
))
{
srs_error
(
"flv: proxy tag header pps failed. ret=%d"
,
ret
);
}
...
...
trunk/src/app/srs_app_caster_flv.hpp
查看文件 @
c617d2a
...
...
@@ -42,6 +42,8 @@ class SrsRtmpClient;
class
SrsStSocket
;
class
SrsRequest
;
class
SrsPithyPrint
;
class
ISrsHttpResponseReader
;
class
SrsFlvDecoder
;
#include <srs_app_st.hpp>
#include <srs_app_listener.hpp>
...
...
@@ -98,6 +100,7 @@ public:
public
:
virtual
int
proxy
(
ISrsHttpResponseWriter
*
w
,
SrsHttpMessage
*
r
,
std
::
string
o
);
private
:
virtual
int
do_proxy
(
ISrsHttpResponseReader
*
rr
,
SrsFlvDecoder
*
dec
);
virtual
int
rtmp_write_packet
(
char
type
,
u_int32_t
timestamp
,
char
*
data
,
int
size
);
private
:
// connect to rtmp output url.
...
...
trunk/src/core/srs_core.hpp
查看文件 @
c617d2a
...
...
@@ -31,7 +31,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
// current release version
#define VERSION_MAJOR 2
#define VERSION_MINOR 0
#define VERSION_REVISION 16
1
#define VERSION_REVISION 16
2
// server info.
#define RTMP_SIG_SRS_KEY "SRS"
...
...
请
注册
或
登录
后发表评论