ここに問題があります。私は、OpenGL ES を使用して iPhone で小さなプロジェクトに取り組んでいます。私は、Brad Larson のColorTracking アプリ(提供してくれた Brad に感謝します) から始めて、自分のニーズに合わせて調整しました。
すべてが正常に機能していますが、 で を使用するとkCVPixelFormatType_420YpCbCr8BiPlanarVideoRange
、グレースケールの画像で作業するので色は必要ないため、画面上の結果の画像は y 軸に沿って変換され、画面外に出る部分は上部にレンダリングされます:kCVPixelBufferPixelFormatTypeKey
AVCaptureVideoDataOutput
スクリーンショットは次のとおりです。
もちろん、これを機能させるには、呼び出しのデータ型を から に変更する必要がありglTexImage2D
ます。GL_RGBA
GL_LUMINANCE
この動作は、キャプチャ セッションのGL_RGBA
テクスチャを使用すると発生しません。kCVPixelFormatType_32BGRA
なぜこれが起こるのか、これを修正する方法を知っている人はいますか? どんな助けでも大歓迎です。