Commit 005db3cb by zqsong

修复推送H265的时候,每一帧都split导致耗时过长

parent 2192451c
...@@ -267,8 +267,10 @@ public: ...@@ -267,8 +267,10 @@ public:
* @param frame 数据帧 * @param frame 数据帧
*/ */
void inputFrame(const Frame::Ptr &frame) override{ void inputFrame(const Frame::Ptr &frame) override{
bool first_frame = true; int type = H265_TYPE(*((uint8_t *)frame->data() + frame->prefixSize()));
splitH264(frame->data() + frame->prefixSize(), if(type == H265Frame::NAL_VPS){
bool first_frame = true;
splitH264(frame->data() + frame->prefixSize(),
frame->size() - frame->prefixSize(), frame->size() - frame->prefixSize(),
[&](const char *ptr, int len){ [&](const char *ptr, int len){
if(first_frame){ if(first_frame){
...@@ -286,6 +288,9 @@ public: ...@@ -286,6 +288,9 @@ public:
inputFrame_l(sub_frame); inputFrame_l(sub_frame);
} }
}); });
}else{
inputFrame_l(frame);
}
} }
private: private:
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论