デフォルトでは LAV Decoder ですが、デコーディングにはハードウェア アクセラレーションを備えた ffdshow を使用したいと考えています。ClassId.csファイルでこれらの行を見ました
public static readonly Guid FFDShowVideo = new Guid("04FE9017-F873-410e-871E-AB91661A4EF7");
public static readonly Guid FFDShowVideoRaw = new Guid("0B390488-D80F-4a68-8408-48DC199F0E97");
public static readonly Guid FFDShowVideoDXVA = new Guid("0B0EFF97-C750-462c-9488-B10E7D87F1A6");
使用されるデコーダーはMediaUriPlayerで定義されます
public MediaUriPlayer()
{
Splitter = "LAV Splitter";
SplitterSource = "LAV Splitter Source";
VideoDecoder = "LAV Video Decoder";
AudioDecoder = "LAV Audio Decoder";
}
問題は、FFDShowVideoDXVA を有効にするにはどうすればよいかということです。デコーダーの正しい名前は何ですか?または、ここで完全に間違ったパスにいますか?
また、FFDShowVideoDXVA を有効にできた場合、ハードウェア アクセラレーションはデフォルトで有効になっていますか (そうでない場合、プログラムで有効にするにはどうすればよいでしょうか?
大変助かりました。