微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用于embedded式系统的开源video编码器

我最近devise了一个符合H.323 / SIP标准的video服务器(至less在代码中),它完全配备了一个.NET SDK将使用的基于套接字的API和一个Web服务器,你知道……所有这些东西。 无论如何,我select使用OPAL作为我的调用堆栈,并基于EKIGA的devise松散地构build了我的架构。 我甚至用两个输出和三个input劫持了数字I / O的串行端口。

一切工作从我的Linux PC很好。 我build立了自己的Linux发行版,专门用于带有2 GB RAM的英特尔凌动处理器的新主板。 问题? Atom处理器无法处理编码器的负载。 我曾经拉过的最大帧率是NTSC大约7FPS。 它不pipe比特率如何。 我知道我没有任何内存泄漏,但是cpu负载在两个内核之间上升到大约130%,所以总共大约66%。 我真的不想改变堆栈,但我不知道我需要做什么。 有一些更轻的编码器,我可以转换成PWLIB插件

无论是video编码器, H.261 ,theora, H.263 +等等,都会发生问题…我应该怎样规划下一个攻击?

更新:

一个线程遇到exception时,是否可以冻结所有线程?

无法在Ubuntu上编译C代码。 (#包括错误

C和Windows GDI中的双缓冲*框架*

在docker容器中安装difnet框架

确定最后在Linux中修改文件的UID?

好的,所以我认为我的下一步行动就是寻找一款非常小巧的兼容OpenGL的 PCIe GPU ; 它需要平行于主板。 我怎样才能做到这一点? 另外,我吠叫错了树? 我只是一个程序员,所以请原谅我的无知。

附加问题:

假设我得到另一个与GPU的董事会。 我如何确保编码是在GPU上完成的,而不是在cpu上完成的? 这是由操作系统和驱动程序pipe理? 我是否需要编写特殊代码才能这样做? 另外,在我看来,GPU的主要function是在渲染和输出,它是否也pipe理实际的转换和编码? 一本好书推荐会很好。

更多信息

我现在怀疑GPU不是问题。 我认为这可能与时间空间折衷有关。 我在我的超频i7 950上安装了闪存,并具有相同的问题。 我发现帧速率下降,但如果没有运动,我可以保持高帧率。 我还与OPAL VoIP的一位架构师谈过话,他们也怀疑GPU是否是问题所在。 还有什么问题呢?

ldd命令从哪里获取依赖关系信息?

确定networking驱动器的协议

Linux程序员(C / C ++)的Linux编程的任何提示

C#(单声道)Linux Web服务器托pipe跨线程一致的静态variables

枚举Windowsregistry项中的所有子项和值

这是微观化的时候:仔细观察内在循环。

你需要弄清楚哪些内部循环很重要,然后仔细研究如何获得最大的吞吐量。 你也可以做一个健全的检查:机器能够真正做你想做的事吗? 例如。 如果你需要做n次/累计操作,而且你有n / 3次循环,那么就有一个基本的问题,你需要做其他的事情。

一个原子本身可能是不能胜任的。 一些Atom主板配备了可用于卸载编码的GPU。 否则,请查看带有DSP或可以进行编码的专用视频编解码器硬件的电路板。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐