在 React Native 聊天应用程序中发送之前压缩视频的最快方法是什么
What is the fastest method to compress videos before sending in React Native Chatting app
所以我的问题主要在标题中,我正在开发一个聊天应用程序,我必须在发送到数据库(firebase 存储)之前压缩视频。到目前为止我能找到的只有 ffmpeg,但问题是压缩视频需要花费大量时间,对于 10 秒的视频,它需要一分钟,而且我很惊讶它在 whatsapp 中的完成速度..也是如此还有其他方法可以更快地压缩视频吗?还是更改 ffmpeg 命令会产生可接受的差异?当前使用的命令是“-y -i ${rVideoUrl} -c:v libx264 -crf 28 -preset ultrafast ${finalVideo}”
大幅减少压缩时间的方法之一是使用“-vf scale=426:240”将输出视频的分辨率设置为低分辨率,因此整个命令变为“ -y -i ${inputVideo} -c:v libx264 -crf 28 -vf scale=426:240 -preset ultrafast ${outputVideo}",或者您可以使用“-1”代替 426 或 240,-1 将告诉 ffmpeg 自动选择与提供的宽度相关的正确高度以保持纵横比。如果您提供给定的高度,-1 也可用于宽度。您可以查看有关“-1”的更多详细信息 here
所以我的问题主要在标题中,我正在开发一个聊天应用程序,我必须在发送到数据库(firebase 存储)之前压缩视频。到目前为止我能找到的只有 ffmpeg,但问题是压缩视频需要花费大量时间,对于 10 秒的视频,它需要一分钟,而且我很惊讶它在 whatsapp 中的完成速度..也是如此还有其他方法可以更快地压缩视频吗?还是更改 ffmpeg 命令会产生可接受的差异?当前使用的命令是“-y -i ${rVideoUrl} -c:v libx264 -crf 28 -preset ultrafast ${finalVideo}”
大幅减少压缩时间的方法之一是使用“-vf scale=426:240”将输出视频的分辨率设置为低分辨率,因此整个命令变为“ -y -i ${inputVideo} -c:v libx264 -crf 28 -vf scale=426:240 -preset ultrafast ${outputVideo}",或者您可以使用“-1”代替 426 或 240,-1 将告诉 ffmpeg 自动选择与提供的宽度相关的正确高度以保持纵横比。如果您提供给定的高度,-1 也可用于宽度。您可以查看有关“-1”的更多详细信息 here