2016-09-06 20 views
0

私はリアルタイムでビデオをデコードし(30 fps)、OpenGLで表示/変更しようとしています。 iPod touchで、カメラで撮影したビデオをデコードすると、フレームのデコードに1秒以上かかることがありますが、30fpsは0.03秒になるはずです。したがって、結果はあまり良くありません。iOS - AVAssetReader copyNextSampleBufferは非常に遅い可能性があります

AVAssetReaderでこれを達成することは可能でしょうか?たとえば、Instagramはビデオ上でリアルタイムにフィルタ(GLSLシェーダと考える)を適用し、ビデオ内をナビゲートすることさえできます。 InstagramはiPod touch上でうまく動作します。ここでは具体的に Best way to access all movie frames in iOS

そして、もっと:

デコードするためのコードはここに答えで見つけることができHardware accelerated h.264 decoding to texture, overlay or similar in iOS

が原因あなたが提供する非常に限られた情報に事前

答えて

0

実際には、私のアプリはCPU上であまりにも多くの作業をしていました。イメージを分析する別のプロセスがありました。私がそれを取り除いたとき、デコードは本当に速かった。

0

にありがとう、私はあなたのビデオシーケンスがYUVのフォーマットで圧縮されていると仮定しなければならず、あなたは色空間を変換するためにiOSでハードウェアアクセラレーションを強制するような他のフォーマットのAVAssetReaderの設定をkCVPixelFormatType_32BGRAに設定してください。私は設定する必要はありません、単に元のピクセル形式を使用することをお勧めします。

関連する問題