在Android中将大型视频文件(200MB +)编码为base64

Encoding large video file(200MB+) to base64 in Android

提问人:Silence 提问时间:10/10/2023 更新时间:10/10/2023 访问量:59

问:

最近,我遇到了一个困惑,即在Android中将大型视频文件编码为base64.直到我写下问题,还没有解决它。 我这样做是什么,因为服务器要求客户端以这种方式上传文件, 我曾寻求帮助,但它仍然无法解决编码过程中出现的各种问题,包括OOM(Out of memory Exception..)。 我该怎么办?谢谢。ChatGPT

如何解决和避免 OOM 异常。

java android kotlin base64 oom

评论

4赞 teapot418 10/10/2023
如何避免OOM...不将整个文件加载到内存中?您可以通过较小的块处理文件。
0赞 Silence 10/10/2023
这是第一次遇到这个问题,我们通过application/Json头使用OkHttp尝试了很多方法,但仍然无法解决。
0赞 Robert 10/10/2023
请发布用于构建 HTTP 请求的代码。顺便说一句:以特殊字符开头的显示用户名很难在回复中使用它。我建议让它以 ascii 字符开头,并将特殊字符移动到末尾。@

答:

0赞 sdex 10/10/2023 #1

用以下命令包装 OutputStream:Base64OutputStream

https://developer.android.com/reference/android/util/Base64OutputStream

评论

0赞 Silence 10/10/2023
也许我用错了,使用并且仍然通过 OkHttp application/json 获取 OOMBase64OutputStream
0赞 sdex 10/10/2023
或。您可能已经注意到您没有发布任何代码。