From fa494f57e75efb1c494359a68480b3b27b7333a7 Mon Sep 17 00:00:00 2001 From: liujie129 Date: Tue, 29 Aug 2023 16:54:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B6=85=E5=A4=A7=E5=87=BD?= =?UTF-8?q?=E6=95=B0=E5=91=8A=E8=AD=A6=E4=B8=AD=E7=9A=84bugfix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: liujie129 --- .../plugins/source/http_source/hls/m3u8.cpp | 30 +++++++++---------- engine/scene/recorder/internal/state.cpp | 2 +- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/engine/plugin/plugins/source/http_source/hls/m3u8.cpp b/engine/plugin/plugins/source/http_source/hls/m3u8.cpp index eaaabf0e..77fa1ef8 100644 --- a/engine/plugin/plugins/source/http_source/hls/m3u8.cpp +++ b/engine/plugin/plugins/source/http_source/hls/m3u8.cpp @@ -77,51 +77,51 @@ bool M3U8::Update(std::string& playList) void M3U8::InitTagUpdatersMap() { - tagUpdatersMap_[HlsTag::EXTXPLAYLISTTYPE] = [this] (std::shared_ptr& tag, M3U8Info& info) { + tagUpdatersMap_[HlsTag::EXTXPLAYLISTTYPE] = [this](std::shared_ptr &tag, M3U8Info &info) { bLive_ = !info.bVod && (std::static_pointer_cast(tag)->GetValue().QuotedString() != "VOD"); }; - - tagUpdatersMap_[HlsTag::EXTXTARGETDURATION] = [this] (std::shared_ptr& tag, M3U8Info& info) { + + tagUpdatersMap_[HlsTag::EXTXTARGETDURATION] = [this](std::shared_ptr &tag, M3U8Info &info) { std::ignore = info; targetDuration_ = std::static_pointer_cast(tag)->GetValue().FloatingPoint(); }; - - tagUpdatersMap_[HlsTag::EXTXMEDIASEQUENCE] = [this] (std::shared_ptr& tag, M3U8Info& info) { + + tagUpdatersMap_[HlsTag::EXTXMEDIASEQUENCE] = [this](std::shared_ptr &tag, M3U8Info &info) { std::ignore = info; sequence_ = std::static_pointer_cast(tag)->GetValue().Decimal(); }; - - tagUpdatersMap_[HlsTag::EXTXDISCONTINUITYSEQUENCE] = [this] (std::shared_ptr& tag, M3U8Info& info) { - discontSequence_ = std::static_pointer_cast(tag)->GetValue().Decimal(); + + tagUpdatersMap_[HlsTag::EXTXDISCONTINUITYSEQUENCE] = [this](std::shared_ptr &tag, M3U8Info &info) { + discontSequence_ = std::static_pointer_cast(tag)->GetValue().Decimal(); info.discontinuity = true; }; - + tagUpdatersMap_[HlsTag::EXTINF] = [this](std::shared_ptr &tag, M3U8Info &info) { GetExtInf(tag, info.duration, info.title); }; - + tagUpdatersMap_[HlsTag::URI] = [this](std::shared_ptr &tag, M3U8Info &info) { info.uri = UriJoin(uri_, std::static_pointer_cast(tag)->GetValue().QuotedString()); }; - + tagUpdatersMap_[HlsTag::EXTXBYTERANGE] = [](std::shared_ptr &tag, M3U8Info &info) { std::ignore = tag; std::ignore = info; MEDIA_LOG_I("need to parse EXTXBYTERANGE"); }; - + tagUpdatersMap_[HlsTag::EXTXDISCONTINUITY] = [this](std::shared_ptr &tag, M3U8Info &info) { std::ignore = tag; discontSequence_++; info.discontinuity = true; }; - + tagUpdatersMap_[HlsTag::EXTXKEY] = [](std::shared_ptr &tag, M3U8Info &info) { std::ignore = tag; std::ignore = info; MEDIA_LOG_I("need to parse EXTXKEY"); }; - + tagUpdatersMap_[HlsTag::EXTXMAP] = [](std::shared_ptr &tag, M3U8Info &info) { std::ignore = tag; std::ignore = info; @@ -141,7 +141,7 @@ void M3U8::UpdateFromTags(std::list>& tags) auto updater = iter->second; updater(tag, info); } - + if (!info.uri.empty()) { files_.emplace_back(std::make_shared(info.uri, info.title, info.duration, sequence_++, info.discontinuity)); diff --git a/engine/scene/recorder/internal/state.cpp b/engine/scene/recorder/internal/state.cpp index d2b7e320..d0da9389 100644 --- a/engine/scene/recorder/internal/state.cpp +++ b/engine/scene/recorder/internal/state.cpp @@ -141,7 +141,7 @@ std::tuple State::DispatchIntent(Intent intent, const Plugin: auto iter = intentDispatchersMap_.find(intent); if (iter != intentDispatchersMap_.end()) { std::function(const Plugin::Any ¶m)> updator = iter->second; - updator(param); + std::tie(rtv, nextAction) = updator(param); } MEDIA_LOG_D("DispatchIntent " PUBLIC_LOG_S ", curState: " PUBLIC_LOG_S ", nextState: " PUBLIC_LOG_S, -- Gitee