У меня были некоторые проблемы с моим приложением
Я сделал приложение, которое может обнаруживать доступные веб-камеры и отображать их
мы можем переключаться с одной веб-камеры на другую в любое время
но проблема в том, что когда я переключаюсь, новый рендер отображается как основной поток, а старая выбранная веб-камера отображается на заднем плане.
Вот изображение, которое показывает проблему:
то, что я сделал, это выпустил Graphbuilder и заново установил новый фильтр, он работает, но я не удовлетворен этой логикой
MessageBox(NULL,"this is the reload","",NULL);
if(this->videoFilter){ this->videoFilter->Release(); this->videoFilter=NULL; }
if(this->mediaEvent){ this->mediaEvent->Release(); this->mediaEvent=NULL; }
if(this->videoWindow){ this->videoWindow->Release(); this->videoFilter=NULL; }
if(this->mediaControl){ this->mediaControl->Release(); this->mediaControl=NULL; }
// and reallocate them
Вы не удалили фильтры с графика. Освобождение их не удаление.
Других решений пока нет …