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

Errors in running UMC MPEG4 Video Decoder Example

Heidarian
Beginner
356 Views
Hi

There is an example in UMC manual (example 4.55 on page 623 of umc_manual.pdf) on MPEG4Video Decoder.
I created a new console app. project in VS 2008, and add that example to "Source Files", and also add the required Include directory to "Include files" of the project option (nothing else added) but when I rebuild the project I get the such following errors:

1>mp4decoder.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::FWVideoRender::RenderFrame(void)" (?RenderFrame@FWVideoRender@UMC@@UAEHXZ) referenced in function _main

There are more errors of this kind (error LNK2019)!
Could you please tell me what is the problem? Should I add more path to the project??

Thanks in advance.
0 Kudos
3 Replies
Heidarian
Beginner
356 Views

Isnt there anyone who could help me??!!
After two days struggling with this problem, i am now really confused!!
I have added the following library:

ipps.lib
ippi.lib
ippvc.lib
ippcc.lib
umc.lib
umc_io.lib
vm.lib
ippcore.lib
ippcorel.lib
ippimerged.lib
ippiemerged.lib
ippcvemerged.lib
ippmemerged.lib

and also add the following Include path:

C:ipp-samplesaudio-video-codecsiomedia_buffersinclude
C:ipp-samplesaudio-video-codecsiovideo_rendersinclude
C:ipp-samplesaudio-video-codecscodecmpeg4_decinclude
C:ipp-samplesaudio-video-codecscodecspl_commoninclude
C:ipp-samplesaudio-video-codecscodecavi_splinclude
C:ipp-samplesaudio-video-codecsioumc_ioinclude
C:ipp-samplesaudio-video-codecscodeccolor_space_converterinclude
C:ipp-samplesaudio-video-codecscorevm_plusinclude
C:ipp-samplesaudio-video-codecscorevminclude
C:ipp-samplesaudio-video-codecscoreumcinclude
C:Program FilesIntelIPP6.1.0.032ia32include

the folowling lib path:

C:ipp-samplesaudio-video-codecs_binwin32_cl9lib
C:Program FilesIntelIPP6.1.0.032ia32lib
C:Program FilesIntelIPP6.1.0.032ia32stublib

BUT I STILL GOT 18 ERRORS AS FOLLOW:

1>LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::FWVideoRender::RenderFrame(void)" (?RenderFrame@FWVideoRender@UMC@@UAEHXZ) referenced in function _main

1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::FWVideoRender::GetRenderFrame(double *)" (?GetRenderFrame@FWVideoRender@UMC@@UAEHPAN@Z) referenced in function _main

1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::FWVideoRender::UnLockInputBuffer(class UMC::MediaData *,int)" (?UnLockInputBuffer@FWVideoRender@UMC@@UAEHPAVMediaData@2@H@Z) referenced in function _main

1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::MPEG4VideoDecoder::GetFrame(class UMC::MediaData *,class UMC::MediaData *)" (?GetFrame@MPEG4VideoDecoder@UMC@@UAEHPAVMediaData@2@0@Z) referenced in function _main

1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::FWVideoRender::LockInputBuffer(class UMC::MediaData *)" (?LockInputBuffer@FWVideoRender@UMC@@UAEHPAVMediaData@2@@Z) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::IndexSplitter::GetNextData(class UMC::MediaData *,unsigned int)" (?GetNextData@IndexSplitter@UMC@@UAEHPAVMediaData@2@I@Z) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::FWVideoRender::Init(class UMC::MediaReceiverParams *)" (?Init@FWVideoRender@UMC@@UAEHPAVMediaReceiverParams@2@@Z) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::MPEG4VideoDecoder::Init(class UMC::BaseCodecParams *)" (?Init@MPEG4VideoDecoder@UMC@@UAEHPAVBaseCodecParams@2@@Z) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::IndexSplitter::GetInfo(class UMC::SplitterInfo * *)" (?GetInfo@IndexSplitter@UMC@@UAEHPAPAVSplitterInfo@2@@Z) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::AVISplitter::Run(void)" (?Run@AVISplitter@UMC@@UAEHXZ) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual int __thiscall UMC::AVISplitter::Init(class UMC::SplitterParams &)" (?Init@AVISplitter@UMC@@UAEHAAVSplitterParams@2@@Z) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall UMC::AVISplitter::~AVISplitter(void)" (??1AVISplitter@UMC@@UAE@XZ) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall UMC::MPEG4VideoDecoder::~MPEG4VideoDecoder(void)" (??1MPEG4VideoDecoder@UMC@@UAE@XZ) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall UMC::FWVideoRender::~FWVideoRender(void)" (??1FWVideoRender@UMC@@UAE@XZ) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: __thiscall UMC::FWVideoRender::FWVideoRender(void)" (??0FWVideoRender@UMC@@QAE@XZ) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: __thiscall UMC::MPEG4VideoDecoder::MPEG4VideoDecoder(void)" (??0MPEG4VideoDecoder@UMC@@QAE@XZ) referenced in function _main
1>mpegdec.obj : error LNK2019: unresolved external symbol "public: __thiscall UMC::AVISplitter::AVISplitter(void)" (??0AVISplitter@UMC@@QAE@XZ) referenced in function _main
1>C:ipp-samplesaudio-video-codecsapplicationmpegdecDebugmpegdec.exe : fatal error LNK1120: 17 unresolved externals

Please help!! I am really tired!

Thanks
0 Kudos
Chao_Y_Intel
Moderator
356 Views


Hello,

The libraries you linked with do not look correct. Both IPP stub libraries (dynamic libraries) and static libraries are linked with your application. You only need to add one of them.

Try to add following libraries in the projects, and see how it works.

1> IPP libraries:

ippcorel.lib ippacemerged.lib ippacmerged.lib ippccemerged.lib ippccmerged.lib ippdcemerged.lib ippdcmerged.lib ippiemerged.lib ippimerged.lib ippjemerged.lib ippjmerged.lib ippsemerged.lib ippsmerged.lib ippvcemerged.lib ippvcmerged.lib

2> the system and DirectX libraries:
winmm.lib ddraw.lib dsound.lib pdh.lib

3> UMC audio and codec libraries:
the libraries located at you "C:ipp-samplesaudio-video-codecs_binwin32_cl9lib"

btw, there is some Visual Studio Project files at UMC sample application. User the project files may be easier for you build the application.
w_ipp-samples_p_6.0.0.130_audio-video-codecsipp-samplesaudio-video-codecsapplicationxxxx

Thanks,
Chao
0 Kudos
Heidarian
Beginner
356 Views
Thanks so much Chao,

I have done what you said and add the following lib to Additional Dependencies:

ippcorel.lib
ippacemerged.lib
ippacmerged.lib
ippccemerged.lib
ippccmerged.lib
ippdcemerged.lib
ippdcmerged.lib
ippiemerged.lib
ippimerged.lib
ippjemerged.lib
ippjmerged.lib
ippsemerged.lib
ippsmerged.lib
ippvcemerged.lib
ippvcmerged.lib
winmm.lib
umc.lib
umc_io.lib
vm.lib
vm_plus.lib
video_renders.lib
avi_spl.lib
color_space_converter.lib
common.lib
demuxer.lib
media_buffers.lib
scene_analyzer.lib
spl_common.lib
mpeg4_mux.lib
mpeg4_spl.lib
mpeg4_enc.lib
mpeg4_dec.lib

(I did not change anything more!)
Maybe some of them are being redundant, but it works with a warning and without any error:
1>LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library

So thanks you very much for your help Chao.



0 Kudos
Reply