2

Android - Android の mediarecorder に関して setMaxFileSize を設定できる最大ファイル サイズは? 4147483650 と 5147483650 の間のどこかにあることはわかっています。そもそもなぜ制限があるのでしょうか。

SDCARD に記録して、実行する前にカード スペースのサイズを検出しています。

"ERROR/AuthorDriver(31): setParameter(max-filesize = 7270309850) が結果 -5 で失敗しました" "ERROR/AuthorDriver(31): Ln 903 handleSetParameters("max-filesize=7270309850") エラー" "ERROR/AndroidRuntime(409 ): java.lang.RuntimeException: setMaxFileSize に失敗しました。"

4

4 に答える 4

2

そもそもなぜ制限があるのでしょうか?

SD カードは、ファイル サイズの制限があるmsdos ( FAT16 ) ファイル システムを使用します。これは Android の制限ではなく、一般的な SD カードの制限です。

于 2010-05-08T09:50:15.230 に答える
1

AuthorDriver.cpp を見ると、渡された時間値が 16 ビット int に収まるかどうかを確認するチェックが実行されていることがわかります。「PV API は、これが uint16 に収まることを期待しています」というコメントがあります。ええ、今のところこれを回避する方法はないようです。

于 2011-03-22T15:15:23.103 に答える
1

GS5、Hauwei Y550、Note 3 を試してみましたが、いずれも 4096 MB を超えるファイルを記録できません (公式のカメラ アプリケーションを使用しても)。これにより、1080p ビデオは 35 分に、4K ビデオは 20 分未満に制限されます。その理由は、Shane-Kirk によって提供されたものです (32 ビットであることを除いて)。

すべての詳細を含む Android ソース コードの機能強化の問題を公開しました。興味がある場合は、スターを付けることを検討してください。AuthorDriver.cpp へのパッチが作成される可能性が高くなります。

https://code.google.com/p/android/issues/detail?id=145618&q=mediarecorder&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

于 2015-03-09T11:34:09.827 に答える
0

私はアンドロイドレコーダーにも取り組んでいます。

StatFs を使用して外部ストレージ ディレクトリのパスをコンストラクターに渡すと、StatFs オブジェクトで getAvailableBlocks() や getBlockSize() などの関数を呼び出すことができます。

これにより、SD カードにどれだけの空き容量があるかがわかります。

于 2010-07-11T12:53:18.100 に答える