ビデオを一連のビットマップにデコードして、それらを変更できるようにし、それらを圧縮して Android のビデオ ファイルに戻す必要があります。
getFrameAtTime
これを使用して画像シーケンスに保存することでこれを管理する予定です。次に、シーケンス内の画像を変更して、コードをムービーに戻すことができます。しかし、これには2つの問題があります:
- まず、私が読んだように、これ
getFrameAtTime
はサムネイルを作成するためのものであり、正しいフレームを返すことを保証するものではありません。これにより、ビデオが遅延します。 - 次に、画像の保存と読み込みに時間がかかります。
デコードを行う適切な方法は MediaExtractor を使用することであると読みましたが、これは問題ありませんが、直接レンダリングする例しかありませんsurfaceView
。outputBuffer
をビットマップに変換する方法はありますか?
APIレベル16以上で動作させるために必要です。