加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
ChannelNDI.cpp 989 Bytes
一键复制 编辑 原始数据 按行查看 历史
zc 提交于 2020-04-21 15:36 . 多平台直播增加预览功能
#include "ChannelNDI.h"
ChannelNDI::ChannelNDI(QObject *parent) : Channel(parent)
{
video=Link::create("DecodeV");
ndi=Link::create("NDIRecv");
audio=Link::create("Resample");
decA=Link::create("DecodeA");
encV=ndi;
encA=ndi;
encV2=NULL;
}
void ChannelNDI::init(QVariantMap)
{
decA->start();
audio->start();
video->start();
ndi->start();
ndi->linkV(video);
ndi->linkA(decA)->linkA(audio);
Channel::init();
}
void ChannelNDI::updateConfig(QVariantMap cfg)
{
if(cfg["enable"].toBool())
{
video->start();
if(curName!=cfg["ndirecv"].toMap()["name"].toString())
{
snap->invoke("reset");
curName=cfg["ndirecv"].toMap()["name"].toString();
}
ndi->setData(cfg["ndirecv"].toMap());
}
else
{
QVariantMap data;
data["name"]="";
curName="";
ndi->setData(data);
video->stop();
}
Channel::updateConfig(cfg);
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化