2016-10-27 11 views
2

thisの質問を確認しました。Androidビデオremoveクロマキーの背景

非常によく似ています: アンドロイドカメラでビデオを録画します。 その後、ライブラリで、クロマキーのある背景を削除します。 まず、SDKのメモリ制限から逃げてメモリ全体を使うために、アンドロイドNDKを使うべきだと思います。 ビデオの長さは短く、数秒ですので、多分それを扱うことができます。 .soファイルのアーキテクチャが一致していないため、SDKの実装を使用してandroid:largeHeap="true"を設定することをお勧めします。

SDKまたはNDKのライブラリの提案をお願いします。

答えて

1

IMOビデオ処理はCPUを消費する操作で、Javaコードはパフォーマンスを向上させるものではないため、NDKベースのソリューションを使用することをお勧めします。さらに、最も一般的で信頼性の高いメディア処理ライブラリは、しばしばCまたはC++で書かれています。

FFmpegをご覧ください。それはマルチメディアに対処するための到達能力を提供します。 chromakeyフィルターを使用すると、緑色の背景(または必要な色)を削除するのに役立ちます。その後、必要に応じて別のビデオを新しい背景として使用することができます。 blendフィルタドキュメントを参照してください。

Filtersは素晴らしい、強力なコンセプトです。それらは、ffmpegツールコマンドラインまたはlibavfilter API経由で使用できます。前者の場合は、ffmpegバイナリがアンドロイド用にコンパイルされ、従来のRuntime.exec()で実行する必要があります。後者の場合、ネイティブコードを記述し、適切なフィルタグラフを作成し、処理を実行する必要があります。このコードは、FFmpegライブラリとリンクする必要があります。

+0

私はこれを試してみたいです。私はアンドロイドに新しいです。あなたが書いたことをちょっと混乱させます。私は迅速に進めることができる正確なステップを指定してください。私はあなたに本当に感謝しています。 –