Commit 077566d1 by 夏楚 Committed by GitHub

新增支持on_publish hook返回stream_replace替换流id (#2641)

parent 575a4263
...@@ -187,6 +187,9 @@ public: ...@@ -187,6 +187,9 @@ public:
//hls录制保存路径 //hls录制保存路径
std::string hls_save_path; std::string hls_save_path;
// 支持通过on_publish返回值替换stream_id
std::string stream_replace;
template <typename MAP> template <typename MAP>
ProtocolOption(const MAP &allArgs) : ProtocolOption() { ProtocolOption(const MAP &allArgs) : ProtocolOption() {
#define GET_OPT_VALUE(key) getArgsValue(allArgs, #key, key) #define GET_OPT_VALUE(key) getArgsValue(allArgs, #key, key)
...@@ -214,6 +217,7 @@ public: ...@@ -214,6 +217,7 @@ public:
GET_OPT_VALUE(mp4_save_path); GET_OPT_VALUE(mp4_save_path);
GET_OPT_VALUE(hls_save_path); GET_OPT_VALUE(hls_save_path);
GET_OPT_VALUE(stream_replace);
} }
private: private:
......
...@@ -80,6 +80,10 @@ std::string MultiMediaSourceMuxer::shortUrl() const { ...@@ -80,6 +80,10 @@ std::string MultiMediaSourceMuxer::shortUrl() const {
} }
MultiMediaSourceMuxer::MultiMediaSourceMuxer(const MediaTuple& tuple, float dur_sec, const ProtocolOption &option): _tuple(tuple) { MultiMediaSourceMuxer::MultiMediaSourceMuxer(const MediaTuple& tuple, float dur_sec, const ProtocolOption &option): _tuple(tuple) {
if (!option.stream_replace.empty()) {
// 支持在on_publish hook中替换stream_id
_tuple.stream = option.stream_replace;
}
_poller = EventPollerPool::Instance().getPoller(); _poller = EventPollerPool::Instance().getPoller();
_create_in_poller = _poller->isCurrentThread(); _create_in_poller = _poller->isCurrentThread();
_option = option; _option = option;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论