onur
7th December 2019, 17:02
Playing specific files from specific resume pos is not working.
(i think when pos is short bevor keyframe everything is ok).
LAV starting from 0.71.0 is not working.
newest mpc-hc has integrated LAV 0.70.2 which is working.
EVR Renderer is working with all versions of LAV.
you can also test with mpc-be with following setup:
mpc-be player - with prefered external filter (LAV Splitter Source and LAV Video Decoder)
(load file with resume pos 01:04)
First we need a Stopped Graph, with this test file:
https://drive.google.com/file/d/12T5jjOuCUKzfylkc_wT86iWpHT637GRw/view
or
https://drive.google.com/uc?export=download&id=1PFk0HyHuFZebrNTUbctI83souI_aGTEb
Filter Graph with LAV Source and LAV Decoder and MadVR Renderer.
when we start file playing with resume pos the screens is black.
not working:
REFERENCE_TIME rtResume=640000000;
pMSeek->SetPositions(&rtResume, AM_SEEKING_AbsolutePositioning, NULL, AM_SEEKING_NoPositioning);
pMC->Run();
not working:
REFERENCE_TIME rtResume=640000000;
pMSeek->SetPositions(&rtResume, AM_SEEKING_AbsolutePositioning, NULL, AM_SEEKING_NoPositioning);
pMC->Pause();
pMC->Run();
working:
REFERENCE_TIME rtResume=640000000;
//first seek to keyframe
hr = pMSeek->SetPositions(&rtResume, AM_SEEKING_SeekToKeyFrame, NULL, AM_SEEKING_NoPositioning);
pMC->Pause();
//wait until Ready
__int64 endclock = GetTickCount64() + 2000;
OAFilterState pfs;
while (pMC->GetState(10, &pfs) == VFW_S_STATE_INTERMEDIATE || pfs != State_Paused)
{
Sleep(10);
if (GetTickCount64() > endclock)
break;
}
//now seek to Real Pos
hr = pMSeek->SetPositions(&rtResume, AM_SEEKING_AbsolutePositioning, NULL, AM_SEEKING_NoPositioning);
regards, onur
(i think when pos is short bevor keyframe everything is ok).
LAV starting from 0.71.0 is not working.
newest mpc-hc has integrated LAV 0.70.2 which is working.
EVR Renderer is working with all versions of LAV.
you can also test with mpc-be with following setup:
mpc-be player - with prefered external filter (LAV Splitter Source and LAV Video Decoder)
(load file with resume pos 01:04)
First we need a Stopped Graph, with this test file:
https://drive.google.com/file/d/12T5jjOuCUKzfylkc_wT86iWpHT637GRw/view
or
https://drive.google.com/uc?export=download&id=1PFk0HyHuFZebrNTUbctI83souI_aGTEb
Filter Graph with LAV Source and LAV Decoder and MadVR Renderer.
when we start file playing with resume pos the screens is black.
not working:
REFERENCE_TIME rtResume=640000000;
pMSeek->SetPositions(&rtResume, AM_SEEKING_AbsolutePositioning, NULL, AM_SEEKING_NoPositioning);
pMC->Run();
not working:
REFERENCE_TIME rtResume=640000000;
pMSeek->SetPositions(&rtResume, AM_SEEKING_AbsolutePositioning, NULL, AM_SEEKING_NoPositioning);
pMC->Pause();
pMC->Run();
working:
REFERENCE_TIME rtResume=640000000;
//first seek to keyframe
hr = pMSeek->SetPositions(&rtResume, AM_SEEKING_SeekToKeyFrame, NULL, AM_SEEKING_NoPositioning);
pMC->Pause();
//wait until Ready
__int64 endclock = GetTickCount64() + 2000;
OAFilterState pfs;
while (pMC->GetState(10, &pfs) == VFW_S_STATE_INTERMEDIATE || pfs != State_Paused)
{
Sleep(10);
if (GetTickCount64() > endclock)
break;
}
//now seek to Real Pos
hr = pMSeek->SetPositions(&rtResume, AM_SEEKING_AbsolutePositioning, NULL, AM_SEEKING_NoPositioning);
regards, onur