for issue: https://github.com/ossrs/srs/issues/3516 https://github.com/ossrs/srs/issues/4055 https://github.com/ossrs/srs/pull/3618 The issue arises from a mismatch between the `input` and `output` formats within the [`SrsEncoder::initialize_ffmpeg`](https://github.com/ossrs/srs/pull/4325/files#diff-a3dd7c498fc26d36def2e8c2c3b7edfe1bf78f0620b1a838aefa70ba119cad03L241-L254) function. For example: Input: `rtmp://127.0.0.1:1935/live?vhost=__defaultVhost__/livestream_ff` Output: `rtmp://127.0.0.1:1935/live/livestream_ff?vhost=__defaultVhost__` This may result in the failure of the [code segment](https://github.com/ossrs/srs/pull/4325/files#diff-a3dd7c498fc26d36def2e8c2c3b7edfe1bf78f0620b1a838aefa70ba119cad03L292-L298) responsible for determining whether to loop. It simply involves modifying the order of `stream` and `vhost`. The commit introducing this bug is:7d47017a00The order of [parameters in the configuration file](7d47017a00 (diff-428de168925d659dae72bb49273c3b048ed2800906c6848560badae854250126L26-R26)) has been modified to address the `ingest` issue. Please note that this PR does not entirely resolve the issue; for example, modifying the `output` format in configuration still results in exceptions. To comprehensively address this problem, extensive code modifications would be required. However, strictly adhering to the configuration file format can effectively prevent this issue. --------- Co-authored-by: Jacob Su <suzp1984@gmail.com> Co-authored-by: john <hondaxiao@tencent.com> Co-authored-by: winlin <winlinvip@gmail.com>
This commit is contained in:
parent
51d26f26b7
commit
014812ea9b
|
|
@ -7,6 +7,7 @@ The changelog for SRS.
|
|||
<a name="v6-changes"></a>
|
||||
|
||||
## SRS 6.0 Changelog
|
||||
* v6.0, 2025-06-04, Merge [#4325](https://github.com/ossrs/srs/pull/4325): fix bug: loop transcoding #3516. v6.0.168 (#4325)
|
||||
* v6.0, 2025-05-29, Merge [#4356](https://github.com/ossrs/srs/pull/4356): RTMP: Use extended timestamp as delta when chunk fmt=1/2. v6.0.167 (#4356)
|
||||
* v6.0, 2025-03-21, Merge [#4303](https://github.com/ossrs/srs/pull/4303): replace values with enums. v6.0.165 (#4303)
|
||||
* v6.0, 2025-03-20, Merge [#4305](https://github.com/ossrs/srs/pull/4305): free sample to prevent memory leak. v6.0.164 (#4305)
|
||||
|
|
|
|||
|
|
@ -247,11 +247,11 @@ srs_error_t SrsEncoder::initialize_ffmpeg(SrsFFMPEG* ffmpeg, SrsRequest* req, Sr
|
|||
input += srs_int2str(req->port);
|
||||
input += "/";
|
||||
input += req->app;
|
||||
input += "?vhost=";
|
||||
input += req->vhost;
|
||||
input += "/";
|
||||
input += req->stream;
|
||||
|
||||
input += "?vhost=";
|
||||
input += req->vhost;
|
||||
|
||||
// stream name: vhost/app/stream for print
|
||||
input_stream_name = req->vhost;
|
||||
input_stream_name += "/";
|
||||
|
|
@ -288,7 +288,7 @@ srs_error_t SrsEncoder::initialize_ffmpeg(SrsFFMPEG* ffmpeg, SrsRequest* req, Sr
|
|||
}
|
||||
log_file += ".log";
|
||||
}
|
||||
|
||||
|
||||
// important: loop check, donot transcode again.
|
||||
std::vector<std::string>::iterator it;
|
||||
it = std::find(_transcoded_url.begin(), _transcoded_url.end(), input);
|
||||
|
|
|
|||
|
|
@ -9,6 +9,6 @@
|
|||
|
||||
#define VERSION_MAJOR 6
|
||||
#define VERSION_MINOR 0
|
||||
#define VERSION_REVISION 167
|
||||
#define VERSION_REVISION 168
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user