Поделиться через


Метод IMFSourceReader::Flush (mfreadwrite.h)

Удаляет один или несколько потоков.

Синтаксис

HRESULT Flush(
  [in] DWORD dwStreamIndex
);

Параметры

[in] dwStreamIndex

Поток для очистки. Значение может быть любым из следующих значений.

Ценность Meaning
0–0xFFFFFFFB
Отсчитываемый от нуля индекс потока.
MF_SOURCE_READER_FIRST_VIDEO_STREAM
0xFFFFFFFC
Первый видеопоток.
MF_SOURCE_READER_FIRST_AUDIO_STREAM
0xFFFFFFFD
Первый аудиопоток.
MF_SOURCE_READER_ALL_STREAMS
0xFFFFFFFE
Все потоки.

Возвращаемое значение

Если этот метод выполнен успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT.

Замечания

Метод Flush удаляет все очередные примеры и отменяет все ожидающие запросы.

Этот метод может выполняться синхронно или асинхронно.

Если вы предоставляете указатель обратного вызова при создании средства чтения источника, метод асинхронен. В противном случае метод синхронен. Дополнительные сведения о настройке указателя обратного вызова см. в MF_SOURCE_READER_ASYNC_CALLBACK.

В синхронном режиме метод блокируется до завершения операции.

В асинхронном режиме метод МВФSourceReaderCallback::OnFlush вызывается при завершении операции очистки. Пока ожидается операция очистки, метод IMFSourceReader::ReadSample возвращает MF_E_NOTACCEPTING.

Заметка В Windows 7 произошла ошибка в реализации этого метода, что приводит к вызову OnFlush до завершения операции очистки. Исправление, используемое для доступа к этой ошибке.
 
Этот интерфейс доступен в Windows Vista, если установлено дополнение к обновлению платформы для Windows Vista.

Требования

Требование Ценность
Минимальный поддерживаемый клиент Дополнение к Обновлению Windows 7, Windows Vista и платформы для Windows Vista [классические приложения | Приложения UWP]
минимальный поддерживаемый сервер Windows Server 2008 R2 [классические приложения | Приложения UWP]
целевая платформа Виндоус
Header mfreadwrite.h

См. также

МВФSourceReader

Средство чтения источника