mirror of
https://github.com/ossrs/srs.git
synced 2025-02-12 19:31:53 +00:00
fix #380, srs-librtmp send sequence header when sps or pps changed.
This commit is contained in:
parent
ec87dd9cd6
commit
575a698820
2 changed files with 10 additions and 4 deletions
|
@ -342,6 +342,7 @@ Remark:
|
|||
|
||||
## History
|
||||
|
||||
* v2.0, 2015-08-20, fix [#380](https://github.com/simple-rtmp-server/srs/issues/380), srs-librtmp send sequence header when sps or pps changed.
|
||||
* v2.0, 2015-08-18, close [#454](https://github.com/simple-rtmp-server/srs/issues/454), support obs restart publish. 2.0.184
|
||||
* v2.0, 2015-08-14, use reduce_sequence_header for stream control.
|
||||
* v2.0, 2015-08-14, use send_min_interval for stream control. 2.0.183
|
||||
|
|
|
@ -1279,8 +1279,8 @@ int srs_write_h264_sps_pps(Context* context, u_int32_t dts, u_int32_t pts)
|
|||
{
|
||||
int ret = ERROR_SUCCESS;
|
||||
|
||||
// only send when both sps and pps changed.
|
||||
if (!context->h264_sps_changed || !context->h264_pps_changed) {
|
||||
// send when sps or pps changed.
|
||||
if (!context->h264_sps_changed && !context->h264_pps_changed) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -1330,7 +1330,7 @@ int srs_write_h264_raw_frame(Context* context,
|
|||
context->h264_sps_changed = true;
|
||||
context->h264_sps = sps;
|
||||
|
||||
return srs_write_h264_sps_pps(context, dts, pts);
|
||||
return ret;
|
||||
}
|
||||
|
||||
// for pps
|
||||
|
@ -1346,7 +1346,12 @@ int srs_write_h264_raw_frame(Context* context,
|
|||
context->h264_pps_changed = true;
|
||||
context->h264_pps = pps;
|
||||
|
||||
return srs_write_h264_sps_pps(context, dts, pts);
|
||||
return ret;
|
||||
}
|
||||
|
||||
// send pps+sps before ipb frames when sps/pps changed.
|
||||
if ((ret = srs_write_h264_sps_pps(context, dts, pts)) != ERROR_SUCCESS) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
// ibp frame.
|
||||
|
|
Loading…
Reference in a new issue