SourceReader技術を使用してWindow Desktop Cameraアプリケーションを開発しています。SourceReaderを使用してカメラストリーミングから.mp4ビデオファイルを作成するときの問題
今、私はUSBカメラから.mp4ビデオファイルをキャプチャするために取り組んでいます。 640 x 480,1280 x 720と1920 x 1080のビデオファイルをキャプチャできます。 ビデオ解像度を1920 x 1080より高く変更し、IMFSinkWriterオブジェクトのSetInputMediaTypeを呼び出すと問題が発生しました。 HRESULTエラーコード0xc00d36b。
私は、エンコーディング用のビデオサブタイプを使用:MFVideoFormat_H264
はMFVideoFormat_H264以外の.mp4ファイルをエンコードするために利用可能な任意の他のサブタイプがありますか?
なぜ、フルHD解像度よりも高い.mp4ファイルをキャプチャできないのですか?ビデオファイルをエンコードするために何かが欠けていますか?はいの場合は、この問題を解決するためのガイドラインを教えてください。
ありがとうございます。
ご迷惑をおかけして申し訳ありません。私はWindows 8で作業していました。なぜこのエラーが発生しますか?両方のリンクで、彼らはMPEG-4シンクを使用するように指摘しました。私はこのシンクを使用しようとします。私はあなたにもう1つの質問があります。ビデオファイルをキャプチャするときにエンコーダが実際にシンクライタを使用しているかどうかを調べるにはどうしますか? – Abi
['IMFSinkWriterEx'](https://msdn.microsoft.com/en-us/library/windows/desktop/hh448060)を使用してエンコーダにアクセスできますが、最も簡単な方法は、ハードウェアエンコーダを無効にしてソフトウェアエンコーダを[ 'MF_READWRITE_ENABLE_HARDWARE_TRANSFORMS'](https://msdn.microsoft.com/en-us/library/windows/desktop/dd375765)属性です。このようにして、H.264エンコーダにする必要があります。 –
ローマ様ありがとうございます。私はこのフラグをシンクライターが使用している現在のエンコードをチェックします。私はビデオファイルをキャプチャするためにMPEG-4ファイルシンクを使用しましたが、私は前のクエリで言及したのと同じエラーを受けました。 https://www.dropbox.com/s/o1pnf2rhtc83n9x/MPEG4-Sink_Code_StackOverflow.txt?dl=0 – Abi