HLS: Fix the issue of increasing video timestamp interleaving, causing HLS recording failure, and the problem of frame loss in the queue.
The problem of alternating increasing timestamps The issue at https://github.com/ossrs/srs/issues/1871 will cause the following problems:
- Frequent triggering and direct deletion of HLS recording files.
- Setting time_jitter off results in missing video (or audio) during playback.
TRANS_BY_GPT3
Codecov Report
Merging #1872 into 3.0release will decrease coverage by
0.04%. The diff coverage is5.12%.
@@ Coverage Diff @@
## 3.0release #1872 +/- ##
==============================================
- Coverage 52.89% 52.84% -0.05%
==============================================
Files 82 82
Lines 26629 26653 +24
==============================================
Hits 14085 14085
- Misses 12544 12568 +24
| Impacted Files | Coverage Δ | |'
'| Impacted Files | Coverage Δ | |
|---|---|---|
| trunk/src/app/srs_app_hls.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_source.cpp | 0.66% <0.00%> (-0.01%) | :arrow_down: |
| trunk/src/app/srs_app_fragment.cpp | 12.31% <13.33%> (+0.12%) | :arrow_up: |
| trunk/src/protocol/srs_rtmp_handshake.cpp | 84.05% <0.00%> (-0.36%) | :arrow_down: |
| trunk/src/service/srs_service_utility.cpp | 77.84% <0.00%> (ø) | |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact),ø = not affected,? = missing dataPowered by Codecov. Last update e3f1aee...8d75a18. Read the comment docs.
TRANS_BY_GPT3
Codecov Report
Merging #1872 into 3.0release will decrease coverage by
0.34%. The diff coverage is14.17%.
@@ Coverage Diff @@
## 3.0release #1872 +/- ##
==============================================
- Coverage 53.19% 52.84% -0.35%
==============================================
Files 82 82
Lines 26313 26653 +340
==============================================
+ Hits 13997 14085 +88
- Misses 12316 12568 +252
| Impacted Files | Coverage Δ | |'
'| Impacted Files | Coverage Δ | |
|---|---|---|
| trunk/src/app/srs_app_async_call.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_caster_flv.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_config.hpp | 0.00% <ø> (ø) | |
| trunk/src/app/srs_app_dvr.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_edge.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_encoder.cpp | 0.62% <0.00%> (-0.01%) | :arrow_down: |
| trunk/src/app/srs_app_ffmpeg.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_forward.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_hls.cpp | 0.00% <0.00%> (ø) | |
| trunk/src/app/srs_app_http_conn.cpp | 0.00% <0.00%> (ø) | |
| ... and 26 more | |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact),ø = not affected,? = missing dataPowered by Codecov. Last update 6c1067d...8d75a18. Read the comment docs.
TRANS_BY_GPT3
First of all, thank you very much for submitting the PR 👍 Make sure to maintain the markdown structure.
HLS has never enabled timestamp correction algorithm because TS does not have a clear requirement for timestamp monotonicity. If corrected, it may cause other issues, but not correcting it may also lead to some problems. Make sure to maintain the markdown structure.
So, this PR still needs some time to consider whether the current problem requires timestamp correction and whether there are other solutions available. Make sure to maintain the markdown structure.
TRANS_BY_GPT3