Nikolay Sivov (@nsivov) commented about dlls/mf/session.c:
LIST_FOR_EACH_ENTRY(source, &session->presentation.sources, struct media_source, entry) {
hr = IMFPresentationDescriptor_GetUINT64(source->pd, &MF_PD_DURATION, (UINT64 *)&duration);
if (SUCCEEDED(hr) && start_position->vt == VT_I8 && start_position->hVal.QuadPart > duration)
{
WARN("Start position %s out of range, hr %#lx.\n", wine_dbgstr_longlong(start_position->hVal.QuadPart), hr);
session_command_complete_with_event(session, MESessionStarted, MF_E_INVALID_POSITION, NULL);
return;
}
This only works for GUID_NULL time format, even if we don't support other formats yet.