Site icon EfmSoft

Что означает код HRESULT 0xC00D4A38 (MF_E_STREAMSINK_REMOVED)?

 
Предыдущий Следующий
MF_E_INVALID_ASF_STREAMID MF_E_STREAMSINKS_OUT_OF_SYNC

MF_E_STREAMSINK_REMOVED

Что означает MF_E_STREAMSINK_REMOVED

MF_E_STREAMSINK_REMOVED (0xC00D4A38) — Запрошенный приёмник потока удалён и больше не может использоваться.

Объект IMFStreamSink был удалён из родительского приёмника Media Foundation и больше не является действующим потоком этого приёмника. указатель COM-интерфейса на объект при этом ещё может существовать, что и делает ошибку неочевидной.

Что проверить и как подтвердить исправление

Проверьте, не был ли ранее вызван IMFMediaSink::RemoveStreamSink и не сохранил ли код старую ссылку после изменения конфигурации. ProcessSample, Flush и запросы свойств удалённого потока уже недопустимы.

Это отличается от полного MF_E_SHUTDOWN: весь приёмник Media Foundation может продолжать работать, а недействителен только конкретный удалённый поток. Исправление подтверждается получением актуального приёмника потока из текущей конфигурации, а не повторным использованием старой ссылки.

Документация для результата 0xC00D4A38: IMFStreamSink::ProcessSample · IMFStreamSink::Flush · IMFMediaSink::RemoveStreamSink.


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version