長さ(x)と高さ(y)が6144ピクセル(y)のビデオ画像を定義しているビデオファイルがある場合、そのビデオをモニタの最後に表示するようにしたい。言い換えれば、モニター上の位置0,0から始まるビデオの最初の1024ピクセル、次に位置0,64で始まるビデオピクセル1024から2047を表示し、すべての6144ピクセルがモニターに表示されるまでこれを繰り返します。つまり、ビデオは1024x768モニタで6回折り返す必要があります。ビデオをモニタにラップする方法は?
これを行うにはどのような方法が最適ですか? DirectX、DirectShow、Media Foundation、またはWindows Media PlayerのActiveXコントロールがこのラップを自動的に処理できますか?私はこれをC#で行うのが望ましいですが、C++のネイティブにドロップすることに反対しません。または、これを行う唯一の方法は、ビデオを6つのセクションに分割し、別々のウィンドウで再生することですか?それらを6つの別々のビデオに分割し、6つの別々のウィンドウで再生するのが唯一の合理的な方法です。どのようにして同期を開始するのですか?
ただ、以下のコメントあたり何かを考えることはffmpegの、および/またはC#このようなものには、この6144×64ピクセルのビデオファイルを変換できます。つまり
6144 x 64 ---> 0-1023 x 64
1024-2047 x 64
2048-3071 x 64
3072-4095 x 64
4096-5119 x 64
5120-6143 x 64
それが包まれているように見えるものが、本当にただ一つのビデオそれは1024 x 384ですか?
あなたのコード内でそのような作業をする代わりに、avisynthとvapoursynthのような新しい親戚を使うこともできます。 avisynthを使用する場合は、ソースプラグインffmpegsource(ffms2)に移動し、スクリプトの最後にconverttoyuy2()を使用することを忘れないでください。 – Harry