diff --git a/server/WebApi.cpp b/server/WebApi.cpp index 64402ad8..8b7487a5 100644 --- a/server/WebApi.cpp +++ b/server/WebApi.cpp @@ -697,7 +697,11 @@ void installWebApi() { API_REGIST(api,getSsrcInfo,{ CHECK_SECRET(); CHECK_ARGS("ssrc"); - auto process = RtpSelector::Instance().getProcess(allArgs["ssrc"],false); + uint32_t ssrc = 0; + stringstream ss(allArgs["ssrc"]); + ss >> std::hex >> ssrc; + + auto process = RtpSelector::Instance().getProcess(ssrc,false); if(!process){ val["exist"] = false; return; diff --git a/src/Extension/AAC.h b/src/Extension/AAC.h index 156c4122..fe78509e 100644 --- a/src/Extension/AAC.h +++ b/src/Extension/AAC.h @@ -257,6 +257,9 @@ private: * 解析2个字节的aac配置 */ void onReady(){ + if(_cfg.size() < 2){ + return; + } AACFrame aacFrame; makeAdtsHeader(_cfg,aacFrame); getAACInfo(aacFrame,_sampleRate,_channel); diff --git a/src/Rtp/RtpProcess.cpp b/src/Rtp/RtpProcess.cpp index b19c43c9..d4d57847 100644 --- a/src/Rtp/RtpProcess.cpp +++ b/src/Rtp/RtpProcess.cpp @@ -84,7 +84,12 @@ RtpProcess::RtpProcess(uint32_t ssrc) { _track->_type = TrackVideo; _track->_ssrc = _ssrc; DebugL << printSSRC(_ssrc); - _muxer = std::make_shared(DEFAULT_VHOST,"rtp",printSSRC(_ssrc)); + + GET_CONFIG(bool,toRtxp,General::kPublishToRtxp); + GET_CONFIG(bool,toHls,General::kPublishToHls); + GET_CONFIG(bool,toMP4,General::kPublishToMP4); + + _muxer = std::make_shared(DEFAULT_VHOST,"rtp",printSSRC(_ssrc),0,toRtxp,toRtxp,toHls,toMP4); GET_CONFIG(string,dump_dir,RtpProxy::kDumpDir); {