DirectShow framesökning

C/C++

0 svar · 134 visningar · startad av Sang-drax

Medlem sedan juli 2002581 inlägg
Trådstart#1

Jag håller på med ett program för uppspelning av AVI filer.

Att hoppa fram en enstaka frame är inte så svårt, det gör med hjälp av IVideoFrameStep :

IVideoFrameStep* pVFS;
//...
pVFS->Step(1,NULL); //hoppa fram 1 frame

Men hur gör jag för att hoppa bak en frame, det går inte med IVideoFramStep. Det tar ju längre tid än att hoppa fram, emn det går, tex med VirtualDub.

Mitt försök:

IMediaSeeker* p;
//...
  pMS->SetTimeFormat(&TIME_FORMAT_FRAME);
  LONGLONG Current = -1;
  pMS->SetPositions(&Current,AM_SEEKING_RelativePositioning,NULL,AM_SEEKING_NoPositioning);

Men det funnkar inte så bra.

267 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
132 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)