On 9/8/22 01:56, RĂ©mi Bernon wrote:
-static REFERENCE_TIME get_current_time(const struct async_reader *reader) +static REFERENCE_TIME async_reader_get_time(const struct async_reader *reader, bool absolute) { LARGE_INTEGER time;
QueryPerformanceCounter(&time);
- return (time.QuadPart * 1000) / reader->clock_frequency.QuadPart * 10000;
- return (time.QuadPart * 1000) / reader->clock_frequency.QuadPart * 10000 - (absolute ? 0 : reader->clock_start); }
I have a hard time seeing this as an improvement over just subtracting reader->clock_start where necessary.
@@ -221,6 +221,9 @@ static DWORD WINAPI async_reader_callback_thread(void *arg) }
case ASYNC_OP_STOP:
if (SUCCEEDED(hr))
reader->clock_start = 0;
LeaveCriticalSection(&reader->callback_cs); IWMReaderCallback_OnStatus(reader->callback, WMT_STOPPED, hr, WMT_TYPE_DWORD, (BYTE *)&zero, reader->context);
Why do we need this?