- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
you can use IPP media sample together with IPP for IXP. It contains MPEG4 encoder end decoder. Our measurement show that encoder should provide performance about 24 FPS for CIF resolution on PXA270 system. Could you please try it in your conditions, we are interested to know if you will be able to reproduce this data?
Regards,
Vladimir
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Steven,
Yes, that's true, unfortunately, IPP for PCA has not completely the same API, so you can't build media sample from IPP for IXP with IPP for PCA.
if you registered for IPP for IXP, you should be able to download IPP for IXP samples from your Intel Premier Support account
Regards,
Vladimir
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
sTeven
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Steven,
There is requirement (from IPP for IXP Linux releasenotes.txt file)
System Requirements
Minimum Hardware Requirements to Run Applications for the IXP4XX product linea system from the IXP4XX product line with either
MontaVista* Linux* 3.0 CEE LE or
MontaVista* Linux* 3.1 Pro BE
Software Requirements to Develop Applications for the IXP4XX product line
Linux system with glibc 2.2.4, 2.2.5, 2.2.93, 2.3.2 or 2.3.3 and the 2.4.X or 2.6.X Linux kernel as represented by the following distributions. Note: Not all distributions listed are validated and not all distributions are listed.
Red Hat* Linux 7.3, 8, 9
Red Hat Enterprise Linux* 2.1, 3
SUSE* Linux 8.2, 9.1
SUSE Linux Enterprise Server* 8 or 9
A supported C compiler (Intel IPP has been tested with the following):
iwmmxt_le-gcc (MontaVista*) for little endian applications
xscale_be-gcc (MontaVista*) for big endian applications
Version of build scriptdepends on OS you have on your PCA270 device. Here, BE and LE stands for big-endian and little-endian.
If application you want to build based on IPP for PCA API you need to link it with IPP for PCA libraries. As far as I know, IPP for PCA provides MPEG4 encoder and decoder sample for Linux by request, so you need to contact with Intel Premier Support to get it.
Regards,
Vladimir
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
mp4_enc_state enc_state;
mp4_enc_params enc_config;
sample_bitstream stream_buf;
mp4_enc_vop_infor vop_infor;
sample_statusret_code;
u_int32_tbuf_size;
{
enc_config.vol_width= pConfig->m_videoWidth;
enc_config.vol_height= pConfig->m_videoHeight;
enc_config.frame_rate=
(int)(pConfig->GetFloatValue(CONFIG_VIDEO_FRAME_RATE) + 0.5);
enc_config.intra_dc_thr= 0;
enc_config.ivop_interval=
(int)(pConfig->GetFloatValue(CONFIG_VIDEO_KEY_FRAME_INTERVAL));
enc_config.quant_type= Q_H263;
enc_config.vop_quant= 16;
enc_config.search_range= 15;
enc_config.use_src_me= 0;
enc_config.color_format= SAMPLE_YCbCr411;
ret_code = encoder_init_alloc_mpeg4(&enc_config, &enc_state);
if (SAMPLE_STATUS_NOERR != ret_code) {
return false;
}
buf_size = enc_state.frame_dimension.width
* enc_state.frame_dimension.height * 4;
if (SAMPLE_STATUS_NOERR != ret_code) {
encoder_free_mpeg4(&enc_state);
return false;
}
return true;
}
u_int8_t* pY, u_int8_t* pU, u_int8_t* pV)
{
memcpy(enc_state.info_pic->pic_plane[0], pY,
enc_state.info_pic->pic_width * enc_state.info_pic->pic_height);
memcpy(enc_state.info_pic->pic_plane[1], pU,
enc_state.info_pic->pic_width/2 * enc_state.info_pic->pic_height/2);
memcpy(enc_state.info_pic->pic_plane[2], pV,
enc_state.info_pic->pic_width/2 * enc_state.info_pic->pic_height/2);
if ( SAMPLE_STATUS_NOERR != ret_code ){
return false;
} else {
return true;
}
}
u_int8_t** ppBuffer, u_int32_t* pBufferLength)
{
*ppBuffer = stream_buf.bs_buffer;
*pBufferLength = stream_buf.bs_cur_byte - stream_buf.bs_buffer;
stream_buf.bs_buffer[0] = stream_buf.bs_cur_byte[0];
}
stream_buf.bs_cur_byte = stream_buf.bs_buffer;
return true;
}
pgd = c3a14000
[40019000] *pgd=a39f9001, *pmd = a39f9001, *pte = a2ab90bf, *ppte = a2ab903b
Bus error
Vectors: (0xffff0000 to 0xffff0040)
0000: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
0020: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stubs: (0xffff0200 to 0xffff04b8)
0200: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
04a0: 00000000 00000000 00000000 00000000 00000000 00000000
Internal error: Oops: 0
CPU: 0
pc : [
sp : c2f5dfb0 ip : 000000f0 fp : 00000140
r10: 00000160 r9 : 001da950 r8 : 0000000e
r7 : 000000ed r6 : 00000002 r5 : fffffff0 r4 : fffffff0
r3 : bf7ff6e8 r2 : 405657f4 r1 : bf7ff6b8 r0 : 001da692
Flags: nzCv IRQs off FIQs on Mode ABT_32 Segment user
Control: 397F Table: A3A18000 DAC: 00000015
Process mp4encoder(pid: 179, stack limit = 0xc2f5c378)
Stack: (0xc2f5dff8 to 0xc2f5e000)
dfe0: ffffffff efffffff
Backtrace: invalid frame pointer
Code: bad PC value.
Segmentation fault
sTeven
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Steven,
I don't think the fault because of gcc. I recommend you to submit issue report to support service to involve engineering team in investigation of that issue.
Regards,
Vladimir

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page