DirectShow как добавить фильтр? - C#
Формулировка задачи:
Есть замечательная статья про DirectShow в C#. Там же есть исходники и скомпилированные примеры. Среди примеров есть DxPlayer, который может проигрывать видео файлы. Скомпилированные фильтры так же есть.
Собственно вопрос: как подключить фильтр в этом примере? Я не разобрался...
Интересует простой фильтр поворота видео VideoRotationFilter.
Решение задачи: «DirectShow как добавить фильтр?»
textual
Листинг программы
public class SampleGraph : DSFilePlayback
{
protected override HRESULT OnInitInterfaces()
{
HRESULT hr = S_OK;
// Create rotate filter
DSFilter _rotate = new DSFilter(new DxPlayer.VideoRotationFilter());
// Add it to filter graph
_rotate.FilterGraph = m_GraphBuilder;
// Call base class for render file
hr = base.OnInitInterfaces();
// if succeeded we should check if rotate filter connected
if (hr.Succeeded)
{
if (!_rotate.InputPin.IsConnected) // rotate filter not connected
{
hr = VFW_E_CANNOT_CONNECT;
}
}
hr.Assert();
return hr;
}
}