在React Native中上传和加载视频

时间:2019-02-08 04:06:09

标签: javascript react-native

我正在使用react-native开发视频上传应用程序。用户可以在应用程序摄像头中录制视频。

有什么方法可以减少文件大小和/或上传时间,以及在react-native或javascript中显示/加载时间吗?有什么帮助解决前端问题吗?

1 个答案:

答案 0 :(得分:1)

是的,您可以优化文件大小并显示上传进度。 FFmpeg通常用于处理视频文件。借助WebAssembly,您可以直接在应用程序中执行FFMpeg并处理视频文件。请参考GitHub link。 [您可能必须检查这是否适用于React native]

这个想法是读取从MediaRecorder接收到的blob(可在chrome和firefox中使用,也有用于响应本机的npm包)并将其传递给FFMpeg WebAssembly端口。稍后,可以使用Blob对优化的字节进行切片并将其发送到服务器(请检查JavaScript Blob中的slice方法)。

推荐 尽管您可以直接在客户端应用程序中执行上述所有步骤,但最好在服务器中而不是在客户端应用程序中运行视频优化实用程序。正确的方法是使用WebSocket或Ajax请求,定期将从MediaRecorder接收的数据流传输到服务器。