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-02-24 18:39:31 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
1cb8e44b1b16e58094b51fab7c97c00a9a9680e6
1cb8e44b
1 parent
a3648063
fix #304, fix hls bug, write pts/dts error. 2.0.124.
隐藏空白字符变更
内嵌
并排对比
正在显示
4 个修改的文件
包含
14 行增加
和
5 行删除
README.md
trunk/src/app/srs_app_hls.cpp
trunk/src/core/srs_core.hpp
trunk/src/kernel/srs_kernel_ts.cpp
README.md
查看文件 @
1cb8e44
...
...
@@ -532,6 +532,7 @@ Supported operating systems and hardware:
### SRS 2.0 history
*
v2.0, 2015-02-24, for
[
#304
](
https://github.com/winlinvip/simple-rtmp-server/issues/304
)
, fix hls bug, write pts/dts error. 2.0.124.
*
v2.0, 2015-02-24, fix
[
#179
](
https://github.com/winlinvip/simple-rtmp-server/issues/179
)
, support dvr http api. 2.0.123.
*
v2.0, 2015-02-19, refine dvr, append file when dvr file exists. 2.0.122.
*
v2.0, 2015-02-19, refine pithy print to more easyer to use. 2.0.121.
...
...
trunk/src/app/srs_app_hls.cpp
查看文件 @
1cb8e44
...
...
@@ -928,6 +928,8 @@ int SrsHls::on_audio(SrsSharedPtrMessage* __audio)
return
ret
;
}
}
srs_info
(
"audio decoded, type=%d, codec=%d, cts=%d, size=%d, time=%"
PRId64
,
sample
->
frame_type
,
codec
->
audio_codec_id
,
sample
->
cts
,
audio
->
size
,
audio
->
timestamp
);
SrsCodecAudio
acodec
=
(
SrsCodecAudio
)
codec
->
audio_codec_id
;
// ts support audio codec: aac/mp3
...
...
trunk/src/core/srs_core.hpp
查看文件 @
1cb8e44
...
...
@@ -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 12
3
#define VERSION_REVISION 12
4
// server info.
#define RTMP_SIG_SRS_KEY "SRS"
...
...
trunk/src/kernel/srs_kernel_ts.cpp
查看文件 @
1cb8e44
...
...
@@ -1960,16 +1960,16 @@ int SrsTsPayloadPES::encode_33bits_dts_pts(SrsStream* stream, u_int8_t fb, int64
char
*
p
=
stream
->
data
()
+
stream
->
pos
();
stream
->
skip
(
5
);
int32_t
val
;
int32_t
val
=
0
;
val
=
fb
<<
4
|
(((
pts
>>
30
)
&
0x07
)
<<
1
)
|
1
;
val
=
fb
<<
4
|
(((
v
>>
30
)
&
0x07
)
<<
1
)
|
1
;
*
p
++
=
val
;
val
=
(((
pts
>>
15
)
&
0x7fff
)
<<
1
)
|
1
;
val
=
(((
v
>>
15
)
&
0x7fff
)
<<
1
)
|
1
;
*
p
++
=
(
val
>>
8
);
*
p
++
=
val
;
val
=
(((
pts
)
&
0x7fff
)
<<
1
)
|
1
;
val
=
(((
v
)
&
0x7fff
)
<<
1
)
|
1
;
*
p
++
=
(
val
>>
8
);
*
p
++
=
val
;
...
...
@@ -2653,6 +2653,9 @@ int SrsTSMuxer::update_acodec(SrsCodecAudio ac)
int
SrsTSMuxer
::
write_audio
(
SrsTsMessage
*
audio
)
{
int
ret
=
ERROR_SUCCESS
;
srs_info
(
"hls: write audio pts=%"
PRId64
", dts=%"
PRId64
", size=%d"
,
audio
->
pts
,
audio
->
dts
,
audio
->
PES_packet_length
);
if
((
ret
=
context
->
encode
(
writer
,
audio
,
vcodec
,
acodec
))
!=
ERROR_SUCCESS
)
{
srs_error
(
"hls encode audio failed. ret=%d"
,
ret
);
...
...
@@ -2666,6 +2669,9 @@ int SrsTSMuxer::write_audio(SrsTsMessage* audio)
int
SrsTSMuxer
::
write_video
(
SrsTsMessage
*
video
)
{
int
ret
=
ERROR_SUCCESS
;
srs_info
(
"hls: write video pts=%"
PRId64
", dts=%"
PRId64
", size=%d"
,
video
->
pts
,
video
->
dts
,
video
->
PES_packet_length
);
if
((
ret
=
context
->
encode
(
writer
,
video
,
vcodec
,
acodec
))
!=
ERROR_SUCCESS
)
{
srs_error
(
"hls encode video failed. ret=%d"
,
ret
);
...
...
请
注册
或
登录
后发表评论