Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

Increasing fps of H264 encoding

gennadii_mog
Beginner
323 Views
Hello, all.

I have compiled umc_video_enc_con application from ipp-samples. After this I tried to encode generated earlier YUV420. As input parameters I used defaulth264.par file.

As result I received next output:

Starting H264 encoding out.yuv to file ipp.h264
Source video width = 320, height = 240, frameRate = 25.00
Max frames to encode = 300
Encoding bit rate = 1000000 bits per second
0.10.20.30.40.50.60.70.80.90.100.110.120.130.140.150.160.170.180.190.200.210.220
.230.240.250.260.270.280.290.300.300.300.300.
Summary:
Num frames encoded = 300
Encoding Time = 15.17 sec, 19.78 fps
Overall Time = 15.67 sec, 19.14 fps
Average CPU usage = 99.70%
Encoded Size = 1628021 bytes
Compression Ratio = 21.23
EncodedSize/ExpectedSize = 1.09

As you can see fps is equal to 20.

Can anybody tell me how fps value can be increased?

Thanks,
Gennadii
0 Kudos
1 Reply
avolmat
Beginner
323 Views
Hi,

assuming that umc_video_enc_con has been compiled using an OpenMP enabled compiler,
and that OpenMP was actually enabled, you should be able to increase performance by
increasing the number of thread used for encoding.
When using umc_video_enc_con you can specify that using the -t argument to set the
number of thread you want to use to encode. For example -t 2 to have 2 threads.

However it isn't a good idea to have more thread than you actually have core/HT so
for example if you have a single core machine without HT, 1 thread should be the best.
If you have an HT (HyperThreading) on a single core machine, you can set 2 thread.
With a 2 core machine with hyperthreading, 4 threads might give you the best performance.

Alain


Quoting - gennadii.mog
Hello, all.

I have compiled umc_video_enc_con application from ipp-samples. After this I tried to encode generated earlier YUV420. As input parameters I used defaulth264.par file.

As result I received next output:

Starting H264 encoding out.yuv to file ipp.h264
Source video width = 320, height = 240, frameRate = 25.00
Max frames to encode = 300
Encoding bit rate = 1000000 bits per second
0.10.20.30.40.50.60.70.80.90.100.110.120.130.140.150.160.170.180.190.200.210.220
.230.240.250.260.270.280.290.300.300.300.300.
Summary:
Num frames encoded = 300
Encoding Time = 15.17 sec, 19.78 fps
Overall Time = 15.67 sec, 19.14 fps
Average CPU usage = 99.70%
Encoded Size = 1628021 bytes
Compression Ratio = 21.23
EncodedSize/ExpectedSize = 1.09

As you can see fps is equal to 20.

Can anybody tell me how fps value can be increased?

Thanks,
Gennadii

0 Kudos
Reply