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

Is H.264 codec on Pentium 3 (800mhz) or P4 (1 Ghz) possible ?

ndehoumon
Beginner
643 Views

Hi,
I'm developing a real-time videoconference application. I'm using IPP 5.3 . The codec has a very good performance with DUO-core but really bad (100% usage) with Pentium 3 (800mhz) or P4 (1 Ghz) .

Is there any H.264 codec version more adapted to Pentium 3 (800mhz) or P4 (1 Ghz) (even if prior or old version ) ? Or is there anything I should do to obtain an acceptable cpu usage on these platform.

Infos:

Decoder : I'm using single thread for decoder

Encoder params:
h264->numThreads=1;

h264 ->numFramesToEncode = 1; //number of frames to encode


h264->key_frame_controls.method = 1;

h264->key_frame_controls.interval = 10;

h264->key_frame_controls.idr_interval = 1;

h264->B_frame_rate = 1;

h264->treat_B_as_reference = 0; // 5.2

h264->num_ref_frames = 2; //6.1
h264->num_ref_to_start_code_B_slice = 1; //6.2
h264->num_slices = 1; //6.3

h264->profile_idc = (H264_PROFILE_IDC)77;

h264->level_idc = 0; //7.2: set 0 to automatic selection


h264->chroma_format_idc = 1;

h264->bit_depth_luma = 8;
h264->bit_depth_chroma = 8;


h264->aux_format_idc = 0;
h264->bit_depth_aux = 8;
h264->alpha_incr_flag = 0;
h264->alpha_opaque_value = 0;
h264->alpha_transparent_value = 0;


h264->rate_controls.method = (UMC::H264_Rate_Control_Method)2;
h264->rate_controls.quantI = 0;
h264->rate_controls.quantP = 0;
h264->rate_controls.quantB = 0;
h264->info.bitrate = 300000;


h264->mv_search_method = 2;
h264->me_split_mode = 0;
//h264->me_use_subpixel_search =1;
h264->me_search_x = 4;
h264->me_search_y = 4;

h264->use_weighted_pred = 0;
h264->use_weighted_bipred = 0;
h264->use_implicit_weighted_bipred = 0;


h264->direct_pred_mode = 2;
h264->use_direct_inference = 0;

h264->deblocking_filter_idc = 0;
h264->deblocking_filter_alpha = 0;
h264->deblocking_filter_beta =0;


h264->transform_8x8_mode_flag = 1; //18.1
h264->use_default_scaling_matrix = false; //18.2
h264->qpprime_y_zero_transform_bypass_flag = false; //18.3

h264->entropy_coding_mode = 1; //21.1
h264->cabac_init_idc = 2; //21.2


h264->coding_type = 0;

h264->info.clip_info.width = image_width; //8 width of source
h264->info.clip_info.height =image_height; //9 height of source

h264->info.framerate = 30.0; // frame rate


h264->m_QualitySpeed = 0;//speed/quality grade. [0,3]

0 Kudos
1 Reply
Emmanuel_W_
New Contributor I
643 Views

What size are you trying to encode?

I can do 30 fps CIF on a stronger P4 (can't remember which exact model I tried but definitively more than 1Ghz but pre HT) but for slower machine I usually use QCIF (sometimes only 15 fps).

Emmanuel

0 Kudos
Reply