07/04/11 17:09:38
>>447
参考にします。
フィルタのGetMediaTypeでピンを判別するから良くなかったみたいです。
フィルタのGetMediaTypeは、出力ピンのGetMediaTypeからコールされるので、
出力ピンのGetMediaTypeでどっちのピンか判断し、それを記憶しておくことにしました。
CSplitterOutputPin::GetMediaType()
{
if(0==lstrcmpW(this->m_pName, L"Audio")){
//フィルタのメンバ変数にオーディオだと記憶させる。
m_pSplitterFilter->m_bOutputPinAudio=true;
}
else{
//フィルタのメンバ変数にビデオだと記憶させる。
m_pSplitterFilter->m_bOutputPinAudio=false;
}
return m_pSplitterFilter->GetMediaType();
}
↑のようにして、フィルタのGetMediaTypeでは、m_bOutputPinAudioを見て、
オーディオ、ビデオの設定をするようにしました。
一応接続はこれで上手くいきました。何かとても簡単な質問をしてしまった気がしますが…