Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

Low Latency H.264 Encode

lonely_hearts_club
1,199 Views

CPU:Intel i5-2540M
GPU:Intel HD Graphics 3000(Intel Quick Sync Video supported)
GPU driver:8.15.10.2321
RAM:4G
OS:Win7 Professional64bit
Intel Media SDK:2012
Camera resolution:640*480

The article "Video Conferencing features of Intel Media Software Development Kit" tells thatlow latency encode and decode is a new feature of MSDK2012 for video conferencing applications.

I tested the different latencies of h264 encoder(the sample filter in MSDK)underdifferent presets:first, set the preset parameter to PRESET_LOW_LATENCY(m_EncoderParams.preset= CodecPreset::PRESET_LOW_LATENCY) , then set to PRESET_BEST_QUALITY.
42025-graphedt.png

Then,simply using a mirror to test the latency:

42026-test.png
And I got the following data:
42024-latency.png

But the result shows that the latencies are very high(the resolution is only640*480),and arenearly the same with different presets.Why?
What latencies can you get with such test?
Thanks!

-Patrick

0 Kudos
3 Replies
Petter_L_Intel
Employee
1,199 Views
Hi Patrick,

The latency you are observing are certainly quite large.

Based on your configuration there may be several things going on:
- I see you are using a very old driver, I recommend updating to he most recently available driver (2509)

- A "real" Media SDK latency measurement needs to be captured at the encoder input and the decoder output sincethe camera or renderer may be contributing additional latency.
Camera, render or implicit color conversion may be introducing latency for your setup.
With a similar setup on our side using MS LifeCam and EVR we observe end to end latency of about 10ms.

- Your workload may also be falling back on SW codec. If you run the mediasdk_sys_analyzer in the SDK tools folder and provide the log to uswe may be able to determine if this is the case.


Finally, one thing to keep in mind is that the Media SDK 1.3 API will not be available for HW acceleration until driver for the the upcoming next gen Intel Coreplatform gets released.
Using API 1.3 with this new driver will provide optimal low latency for Media SDK workloads.

Regards,
Petter
0 Kudos
kkbee
Beginner
1,199 Views
Hi,
My CPU is i5-2520M and driver version is 8.15.10.2761.
If I use SDK 1.3 API, I can only use SW?
Only Ivy Bridge can use 1.3 API HW acceleration?
Can I improve latency about 10ms, if I can not use HW acceleration

Because I only change sdk version in my sourcecode from 1.0 to 1.3, my cpu usage up to 100%.


Thanks
0 Kudos
Petter_L_Intel
Employee
1,199 Views
Hi kkbee,

API 1.3 HW acceleration is supported on your machine.

I suspect your system is somehow configured incorrectly which prevents you from using HW.

Can you please share the output you get when executing the Media SDK tool "mediasdk_sys_analyzer"? It may help isolate your issue.

Regards,
Petter
0 Kudos
Reply