ビデオ録画のJava

Javaのビデオ録画

 

  1. AndroidのMプラットフォームでは、例外が存在しますjava.lang.UnsatisfiedLinkError: org.bytedeco.javacpp.avutil
    。この問題に対応する問題に
    https://github.com/bytedeco/javacv/issues/245
    https://github.com/bytedeco/javacv/issues/579
    私のソリューションがにありますこの記事で見つかったが、あまりにも多くの人々の問題が発生し、問題の原因は、バージョン、プラットフォームとして、よりになります。私は、Android Mの次のバージョンではこのような状況は、正常であり、それはjavacvエディションとパッケージングの問題ではありませんが発生しました。
    最終的によりReLinker解決
    これは予想外で、彼は前に決して言わなかったと思ったSystem.loadLibrary("")信頼できないことが、唯一の置き換えうReLinker.recursively().loadLibrary()問題が解決され、。

  2. パラメータ設定時に記録
    の初期化パラメータフレーム:

private int frameDepth = Frame.DEPTH_UBYTE; //DEPTH_UBYTE=8 private int frameChannels = 2; 

記録中のデータの形式を指定する必要があるのでFFmpegFrameRecorderは、多くの記録フォーマットをサポートし、これらのフォーマットは、で定義されているorg.bytedeco.javacpp.avutil.AV_PIX_FMT_XXX、とカメラのプレビューコールバックYUVフォーマットならば、あなただけのデフォルトを使用する必要があります。あなたはRGBAを指定する必要がある場合はmVideoRecorder.record(mFrameData, AV_PIX_FMT_RGBA);
カメラのプレビューのビデオプレビューサイズと混乱録画サイズに注意を払う必要性に、特に幅と高さを記録するときに問題を逆転させました。

  1. javacvライブラリは比較的大きいので、統合の道をGradleのしようとしないでください
  2. 時間のかかる録音
    記録540 * 960のビデオは、60ミリ秒ほどかかりますが、このパフォーマンスは受け入れることが少ないことができたので、記録のために別のスレッドを使用しようとしています。

 

おすすめ

転載: www.cnblogs.com/itpy/p/11825835.html