Can't rendering video with simple_player

Can't rendering video with simple_player

Hi,

I am using the Intel IPP Composer XE 2011 SP1 and ipp-samples_p_7.0.7.064. My machin OS in Win7  32-bit my DirectX version is 11. I compile it with this command:

c:\w_ipp-samples_p_7.0.7.064\ipp-samples\audio-video-codecs>build_ia32.bat cl10

All the project are passed excluding Simple_Player. I got this error:

LINK : fatal error LNK1181: cannot open input file 'ddraw.lib'

When I downloaded the Microsoft DirectX SDK (August 2009) I managed to compile the simple_player but when I run it there was no rendering of video:

simple_player.exe D:\Captures\Video\Taipei101_sunset_WMV_HD_720_H264.mp4 -fyuv420

Audio Render :          WINMM

when I used IPP7.1 evry thing works fine. ( I needed to downgrade the version since intel does not supports couple of codecs in the latest version).

Caan any one assist?

THanks.

12 posts / novo 0
Último post
Para obter mais informações sobre otimizações de compiladores, consulte Aviso sobre otimizações.

Hmm, I'm not able to reproduce this. Is there some reason why you have to use that older version of the DirectX SDK?

>>... Is there some reason why you have to use that older version of the DirectX SDK?

[A question to Chuck De Silva] Why do you think that the older DirectX SDK is responsible for that? I use even older version of DirectX SDK ( June 2007 ) and it works well for us for many years (!). Genady clearly says that '...when I used IPP 7.1 every thing works fine...' and it doesn't work with IPP '7.0.7.064'.

[To Genady] I think you need to verify HRESULT or return codes.

I use my own rendering engine and please take a look because sometimes there is an issue with transition to a Running State of DirectShow:

Note: I don't know if it is applicable for your case.
...
IMediaControl *m_pMC;
...
while( true )
{
...
m_hr = m_pGB->Render( m_pPN );
if( m_hr != S_OK )
break;

m_hr = m_pMC->Run(); // Do not verify m_hr because sometimes it is not S_OK (!)

OAFilterState pfs;

m_hr = m_pMC->GetState( 1000, &pfs ); // Timeout 1 sec ( 1000 msec )
if( m_hr != S_OK )
break;
...
break;
}
...
Take into account that sometimes some warning code S_FALSE could be returned from DirectShow API functions but it doesn't mean that call failed because transition to Running State could be not fully completed.

I think you need to debug your working test application that uses IPP 7.1 ( with enabled debug output and verification of error codes ) and then you need to do the same for not working test applcation that uses IPP 7.0.7.

Best regards,
Sergey

Hi Genady,

What graphics card do you have? As far as I remember there was problem in 7.0.x with Intel integrated graphics (like HD3000 on SNB) with DirectX. This was why we enabled new OpenGL-based rendering. To enable OpenGL uncomment UMC_ENABLE_NEW_RENDERS in core\umc\include\umc_defs.h file.
Regards,
Sergey

Regards,
Sergey

>>...What graphics card do you have? As far as I remember there was problem in 7.0.x with Intel integrated graphics (like HD3000 on
>>SNB) with DirectX...

Could you provide more technical details?

The DX render for simple_player was implemented using old-syle (I think, pre-DX10) function calls, which required usage of separate MS DX SDK. After general customers' transition from XP to Win7 these old DX calls started to contradict with Win7 Aero schema and, moreover, on Intel HD graphics one of calls (I don't remember, Get) started to return error status. Once again, it was outdated DirectX. After counting pluses and minuses, it was decided to create a new render based on OpenGL, which is more stable and OS-independent (works for Win, Lin and OS X).

Regards,
Sergey

Regards,
Sergey

>>...After counting pluses and minuses, it was decided to create a new render based on OpenGL, which is more stable and
>>OS-independent (works for Win, Lin and OS X)...

Thanks, Sergey. That really looks as the right decision especially OS-independent part.

Citação:

Sergey Kostrov escreveu:

>>... Is there some reason why you have to use that older version of the DirectX SDK?

[A question to Chuck De Silva] Why do you think that the older DirectX SDK is responsible for that? I use even older version of DirectX SDK ( June 2007 ) and it works well for us for many years (!). Genady clearly says that '...when I used IPP 7.1 every thing works fine...' and it doesn't work with IPP '7.0.7.064'.

I just asked because I am using the latest version of the DirectX SDK with 7.0.7.064 and could not reproduce the issue.

HI,

I am using Intel HD Graphics as my Display adaptor.
So the solution is to uncomment UMC_ENABLE_NEW_RENDERS in core\umc\include\umc_defs.h file?

Thanks for your help.

>>...So the solution is to uncomment UMC_ENABLE_NEW_RENDERS in core\umc\include\umc_defs.h file?

Please try it in order to enable rendering with OpenGL instead of DirectX.

Great It works.

Thanks A lot!!!

>>Great It works.

Thank you for the update, Genady!

Deixar um comentário

Faça login para adicionar um comentário. Não é membro? Inscreva-se hoje mesmo!