You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native使用ffmpeg-kit问题:获取编码文件路径与远程URL输入支持

问题1:获取ffmpeg编码后文件的实际URL

你代码中定义的filepath就是输出文件的本地绝对路径,根据使用场景可以直接转换为对应可用的URL:

  • 应用内使用(比如传入react-native-video等组件播放):直接给路径拼接file://前缀即可
    const usableLocalUrl = `file://${filepath}`
    
  • 跨应用使用(仅Android场景,比如分享到系统相册、第三方APP):使用FileProvider相关工具将本地路径转换为对外公开的content URI即可,不需要调整ffmpeg执行逻辑。

另外你当前的ffmpeg命令有两个可优化点:

  1. 输入参数重复写了两次${secondVideo},如果是实现左右拼接双视频的效果,应该改为一个${firstVideo}一个${secondVideo}
  2. 所有路径最好用双引号包裹,避免路径中存在空格、特殊字符时命令执行失败,修改后的命令示例:
let cmd2 = `-i "${secondVideo}" -i "${firstVideo}" -filter_complex [0:v][1:v]hstack=inputs=2:shortest=1[outv] -r 25 -b:v 8M -minrate 6M -maxrate 8M -bufsize 4M -map 1:a -shortest -map [outv] "${filepath}"`

问题2:ffmpeg是否支持传入Firebase存储等远程URL作为输入

支持,需要满足两个前提:

  • 你使用的ffmpeg-kit版本包含https协议支持,建议使用full版或者对应带https功能的变种包,默认的min版没有集成网络相关的依赖库
  • 传入的Firebase存储链接是无需额外鉴权即可直接访问的:要么是文件设置了公开读权限,要么链接中已经携带了有效的临时访问token(Firebase生成的默认下载链接默认就带有效token,直接用即可)

满足条件后直接把远程URL替换本地输入路径即可正常执行编码。


内容的提问来源于stack exchange,提问作者Ahmad Deploy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 04:36:04