So what does it take to implement a low-latency (50ms glass-to-glass) video conferencing solution based on OpenEmbedded build with Linaro Linux Kernel? It is a greater challenge, as we use only software codecs (H.263 and Speex) and limit CPU utilization to 25%.
eInfochips is participating at the event in a session with Linaro entitled “Ubuntu Linux on the Qualcomm600 Processor”. This session details how Linux and embedded community developers can download and install this release on Inforce Computing’s IFC6410 Single Board Computer incorporating the Snapdragon 600 processor to accelerate their next Linux project. A demonstration of the solution will also be showcased at the event.
eInfochips and Linaro will host the session at 2 PM on Thursday, Sep 18th at Qualcomm Uplinq 2014. The session will detail the steps in the process of optimizing video latency and CPU utilization for this solution.
The primary components of the solution are
Qt5 based user interface is the backbone of this conferencing solution. Initially we enabled this solution for the Ubuntu-based Member build release and later we ported the complete solution with OpenEmbedded project using OpenEmbedded Core, Qt5 and Qualcomm board support package (BSP) layers.
It uses Sofia SIP VoIP Stack for session and call management and GStreamer plugins for the Audio-Video pipeline. The Qt5 uses X11 platform plugin for graphics rendering. In future version of this solution, we plan to support EGLFS and Wayland to gain the advantage of Qualcomm® Adreno GPU acceleration.
When we put these components together, the solution operated on more than 75% CPU utilization with more than 250ms glass-to-glass latency. Of the multiple ‘cheat-codes’ we applied to the solution, we achieved significant gains in performance by modifying the Qt5 SDK to bypass the qt-gstreamer plugin and directly calling Gstreamer native APIs. The video was rendered using OpenGL based sink plugin.
The result of a robust optimization process that leverages on-board accelerators and Adreno GPU from the Qualcomm Snapdragon, we achieved 500% improvement in the latency, and 300% improvement in the CPU utilization. Note that this performance is with software codec implementation. With hardware accelerated codecs, we expect considerably higher performance metrics from the solution
While the solution is capable of delivering HD resolution conferencing, we developed this solution at capture resolution of 640×480 and encode/decode resolution of 352×288. With hardware accelerated codecs in place, we should be able to achieve the full potential of the Qualcomm Snapdragon platform, with HD resolution conferencing.
eInfochips, a leading Product Engineering Services Company has extended their rapid and robust Linux and Android porting services to the Qualcomm Snapdragon processors.
eInfochips is a global product innovation partner recognized for technology leadership by Gartner, Frost & Sullivan, NASSCOM and Zinnov. eInfochips has contributed to 500+ products for top global companies, with more than 10 million deployments across the world.