Error building IPP audio video codec

Error building IPP audio video codec

sadedoyin's picture

Hi guys I've been trying to build the IPP audio video codc and I get the following errors when the applications are being built.
I'm also building the old umc_transcoder for IPP 5.3 with IPP 6.1. When I untarred the file there wasn't any link_list_ini file associated to it? Do you guys know why and would this affect the build.

In addition i've attached the log files for the failed applications

+----------------------------------------------------------------------------+
|Test : audio-video-codecs build Thu Dec 23 11:34:02 AM 2010
|Hostname : localhost.localdomain
|Function : no
|Description : building audio-video-codecs sample
|Class : Information
|Source : /home/john/workspace/ipp-samples/audio-video-codecs
|Executable : build32.sh
+----------------------------------------------------------------------------+
Found compiler gcc4 ( autodetect ) is /usr
Compiler environment is loaded
OpenMP support for this compiler: YES
IPP environment found at /opt/intel/atom/Compiler/11.1/072/ipp/lp32/tools/env/ippvars32.sh
IPP environment is loaded
All necessary packages and requred compilers are checked
Environment is setup. Build process is started. Please wait build results ...

******* umc PASSED
******* vm PASSED
******* vm_plus PASSED
******* aac_dec PASSED
******* aac_dec_int PASSED
******* aac_enc PASSED
******* aac_enc_int PASSED
******* ac3_dec PASSED
******* avi_spl PASSED
******* avs_common PASSED
******* avs_dec PASSED
******* avs_enc PASSED
******* avs_spl PASSED
******* color_space_converter PASSED
******* common PASSED
******* demuxer PASSED
******* dv100_dec PASSED
******* dv100_enc PASSED
******* dv50_dec PASSED
******* dv50_enc PASSED
******* dv_dec PASSED
******* dv_enc PASSED
******* h261_dec PASSED
******* h261_enc PASSED
******* h263_dec PASSED
******* h263_enc PASSED
******* h264_dec PASSED
******* h264_enc PASSED
******* h264_spl PASSED
******* jpeg PASSED
******* me PASSED
******* mp3_dec PASSED
******* mp3_dec_int PASSED
******* mp3_enc PASSED
******* mp3_enc_int PASSED
******* mpeg2_dec PASSED
******* mpeg2_enc PASSED
******* mpeg2_mux PASSED
******* mpeg4_dec PASSED
******* mpeg4_enc PASSED
******* mpeg4_mux PASSED
******* mpeg4_spl PASSED
******* scene_analyzer PASSED
******* spl_common PASSED
******* vc1_common PASSED
******* vc1_dec PASSED
******* vc1_enc PASSED
******* vc1_spl PASSED
******* audio_renders PASSED
******* media_buffers PASSED
******* umc_io PASSED
******* video_renders FAILED
******* umc_pipeline FAILED
******* simple_player FAILED
******* umc_h264_dec_con FAILED
******* umc_transcoder_con FAILED
******* umc_video_enc_con PASSED

+----------------------------------------------------------------------------+
|-FAILED audio-video-codecs Thu Dec 23 11:52:11 AM 2010
+----------------------------------------------------------------------------+

16 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.
Chao Y (Intel)'s picture

Hello,

For the log file file, the problem happens because it does not find the SDL.h

home/john/workspace/ipp-samples/audio-video-codecs/_bin/linux32_gcc4/obj/video_renders/sdl_drv.o -c src/sdl_drv.c

In file included from src/sdl_drv.c:19: ./include/sdl_drv.h:19:21: error: SDL/SDL.h: No such file or directory

Could you check if the SDL package is installed at system, which is used for rendering.

Thanks,
Chao

sadedoyin's picture

Hi Chao

Its not installed all I installed was the intel IPP package and the samples package. Where can I get the SDL package?

If I install the SDL package will this sort out all the other applications i.e the Transcoder package?

Chao Y (Intel)'s picture

Hello,

SDL is not in IPP. Check the package here: http://www.libsdl.org/

It needs to install SDL development libraries: SDL-devel.xxxxxx

From the log file, the errors from umc_h264_dec_con/video_renders/simple_player came from the missing SDL package.

The transcoder application error happened because different versions of sample code were used together.

Thanks,
Chao

sadedoyin's picture

Thanks Chao

How do I get the transcoder version working with this sample code? Or is there a newer version available

Chao Y (Intel)'s picture

Hello,

Unfortunately, the transcoder application was only supported in the old sample code. The new sample does not support it now. Possibly, you can take some effort to port this sample into the new version of the sample code. I think most of the code can be reused.

Thanks,
Chao

sadedoyin's picture

Thanks i'll have a go or is the old sample code still available?
Porting it will that require me to create a link_ini file and specify what librarys are required

Naveen Gv (Intel)'s picture

Hi,

Refer to this article; you will get access to Intel IPP 5.3 transcoder. You have to verify with thelatest release.

Regards,
Naveen Gv

sadedoyin's picture

What do you mean by verify?

sadedoyin's picture

From looking at the log files for the transcoder build my problem doesn't seem to be a library build issue but how the UMC::Splitter::GetInfo is called. Im guessing that the call in the syntax used in the old version is outdated.

The error Message I get is
src/umc_transcoder_con_initialize.cpp:130: error: no matching function for call to UMC::Splitter::GetInfo(UMC::SplitterInfo*&)
./../../core/umc/include/umc_splitter.h:177: note: candidates are: virtual UMC::Status UMC::Splitter::GetInfo(UMC::SplitterInfo**)

The code for the old IPP 5.3 is
UMC::SplitterInfo* pVideoSplitterInfo = NULL;
// get info from video splitter
m_lpVideoSplitter->GetInfo(&pVideoSplitterInfo);

Does anybody know what the correct syntax should be?

Chao Y (Intel)'s picture

Hi,

The error showed it missed the UMC libraries (e.g aac_enc lib) in the linkage. Possibly, an easy way is to add all the UMC library you got into the linking command line. note, besides the UMC library, you also need to add the IPP libraries into the linking command line.

Thanks,
Chao

Chao Y (Intel)'s picture

Hi,

I think there is no avi_dec and avi_enc. It only have avi_spl.

The following are link flag for IPP libraries. It looks that they are already been included in the command line:

-lippdc -lippcc -lippac -lippsr -lippvc -lippcv -lippj -lippi -lipps -lippsc lippcore

Thanks,
Chao

sadedoyin's picture

Thanks Chao

All working now

Chao Y (Intel)'s picture

Glad to know that. When you could port the code to work, possibly you can also share it here if you do not mind, so other users can learn it as well...

Thanks,
Chao

sadedoyin's picture

Does anyone have any ideas?

Chao Y (Intel)'s picture

Hi,

The error happened because it enables OpenMP in GCC to compile the code. It need a -fopenmp

Compile file. But the Makefile are using -openmp flag:

In your Makefile, change:
ifeq ("$(OPENMP_SUPPORT)","")
CFLAGS += -openmp
else ifeq ($(OPENMP_SUPPORT),YES)
CFLAGS += -fopenmp
endif endif

to:
CFLAGS += -fopenmp

Thanks,
Chao

Login to leave a comment.