1

ネイティブスピーカーではなく、下手な英語で申し訳ありません。

github で入手可能な sourab-sharma の TouchToRecord ライブラリを使用しています。javacv と javacpp を更新しましたが、ビデオ録画でアプリがクラッシュする

java.lang.OutOfMemoryError: Cannot allocate 267850262 + 614403 bytes (> Pointer.maxBytes)
    at org.bytedeco.javacpp.Pointer.deallocator(Pointer.java:446)
    at org.bytedeco.javacpp.Pointer.init(Pointer.java:118)
    at org.bytedeco.javacpp.BytePointer.allocateArray(Native Method)
    at org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:82)
    at org.bytedeco.javacv.FFmpegFrameFilter.pushImage(FFmpegFrameFilter.java:265)
    at org.bytedeco.javacv.FFmpegFrameFilter.push(FFmpegFrameFilter.java:252)
    at org.bytedeco.javacv.FFmpegFrameFilter.push(FFmpegFrameFilter.java:248)
    at com.dodo.challenger.videorecorder.RecorderThread.processBytesUsingFrame(RecorderThread.java:186)
    at com.dodo.challenger.videorecorder.RecorderThread.processFramesFromList(RecorderThread.java:84)
    at com.dodo.challenger.videorecorder.RecorderThread.run(RecorderThread.java:59)

これ。8時間連続で働いていますが、まだ運がありません。

JavaCpp バージョン: 1.1 - 現在: 1.2.4、

JavaCv バージョン: 1.1 - 現在: 1.2.1

また、このメッセージはバージョン 1.2.4 でのみエラー トレースに表示されますが、以下にはありません。

No implementation found for long org.bytedeco.javacpp.Pointer.physicalBytes()
4

1 に答える 1

0

追加

android:largeHeap="true"

アプリマニフェストにトリックをしました。ただし、30 秒のビデオでは 400 mbs の RAM を使用しました。誰かがそれに対する答えや提案を持っていれば、感謝します。

于 2016-09-20T02:06:25.947 に答える