私は OpenGL ゲームに取り組んでおり、ゲーム内の 3D サーフェスでビデオを再生したいと考えています。SDL はビデオの再生に最適な選択肢のようですが、既存の OpenGL コンテキスト内にサーフェスを作成することは可能ですか? どうすればこれを行うことができますか?
1413 次
1 に答える
5
私の知る限り、SDL にはビデオ再生機能はありません。のような API 名に惑わされないでくださいSDL_Video
。これらは実際にウィンドウ管理に使用されます。
あなたがする必要があるのは、いくつかのビデオ デコーダ ライブラリを使用してビデオをイメージ バッファにデコードし、これらのイメージ バッファを OpenGL テクスチャに渡すことです。オープン ソースのビデオ プレーヤーmplayer (ビデオ/オーディオのデコードに ffmpeg libavformatおよびlibavcodecライブラリを内部的に使用) には、OpenGL ビデオ出力モジュールもあります。mplayer ソース コードを取得し、OpenGL ビデオ出力モジュールを調べて、これを行う方法を理解することをお勧めします。
編集:
SdlDotNet を使用しているSdlDotNet.Graphics.SurfaceGl
ため、 のターゲット サーフェスとしてを使用することをお勧めしSdlDotNet.Graphics.Movie
ます。
于 2011-05-11T07:45:13.607 に答える