Androidでビデオをキャプチャするには2つの方法があることを理解しています。
1) SurfaceView API を使用
2) MediaRecorder API を使用
Android (3.0+) のデフォルト エンコーダーを使用して H.264 でエンコードされたフレームをキャプチャし、RTP を使用してネットワーク経由で送信したいと考えています。
SurfaceView および SurfaceHolder クラスでプレビュー コールバックを使用している間、ユーザーにプレビューとして表示される生のフレームを取得できます。「PreviewCallback」クラスの「onPreviewFrame」メソッドでフレームを取得していました。ただし、これらのフレームは H.264 でエンコードされています。そこで、「MediaRecorder」APIでH.264エンコーディングを設定し、「SurfaceView」でプレビューフレームを取得してみました。この場合、プレビューコールバックは呼び出されません。
これを達成する方法を教えてください。私たちの主な目的は、H.264 でエンコードされたフレーム (Android のデフォルト コーデックを使用してエンコードされています) を取得することです。参照: 1) https://stackoverflow.com/a/8655244/698316 2) 同様の問題: http://permalink.gmane.org/gmane.comp.handhelds.android.devel/214422
Android のデフォルトの H.264 コーデック サポートを使用して、H.264 でエンコードされたフレームをキャプチャする方法を提案できますか。