更新记录

1.0.10(2025-09-15)

  1. 更新iOS最低版本到iOS 13

1.0.9(2025-09-15)

  1. 支持鸿蒙

1.0.8(2025-05-31)

  1. 修复高版本HB持续回调问题
查看更多

平台兼容性

uni-app(3.6.9)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - 5.0
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - -

uni-app x(3.6.9)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - 5.0 -

调用ffmpeg和ffprobe命令,支持Androidi、iOS、Harmony

集成步骤

开发文档


    import {
        UTSFFmpeg,
        UTSFFprobe
    } from "@/uni_modules/wrs-uts-ffmpeg";

执行FFMpeg命令


                let cmd = "-version";
                UTSFFmpeg.executeAsync(cmd, (resp) => {
                    // 命令执行完回调
                    let state = resp.state;
                    this.showMsg("执行状态:" + state);
                    console.log("执行状态:" + state);
                }, (resp) => {
                    // 命令日志回调
                    this.showMsg(JSON.stringify(resp.message));
                    console.log("logCallback:" + JSON.stringify(resp));
                }, (resp) => {
                    // 命令统计回调,在鸿蒙里是进度回调
                    console.log("statisticsCallback:" + JSON.stringify(resp));
                });
  • cmd ffmpeg命令,不需要ffmpeg开头,截取ffmpeg后面的命令参数即可,如: ffmpeg -v 查询版本,cmd值为-v ffmpeg -i https://sss/video.m3u8 /sdcard/test.mp4 将m3u8转为mp4,cmd值为-i https://sss/video.m3u8 /sdcard/test.mp4

  • completeCallback 命令执行完的回调

  • logCallback 命令执行期间的日志回调

  • statisticsCallback 统计回调,在鸿蒙里是进度回调

取消所有FFMpeg命令


UTSFFmpeg.cancel();

取消某个FFMpeg命令


let sessionId = ***;
let platform = uni.getSystemInfoSync().platform
switch (platform) {
    case "harmonyos": {
        // 鸿蒙传cmd字符串
        let cmd = "-version";
        sessionId = cmd;
    }
    break;
    default: {
        sessionId = ***;
    }
UTSFFmpeg.cancelWithSessionId(sessionId);

执行FFprobe命令


let cmd = "-i -i /sdcard/test.mp4";
let completeCallback = (resp)=>{};
let logCallback = (resp)=>{};
UTSFFprobe.executeAsync(cmd, completeCallback, logCallback);
  • cmd FFprobe命令,不需要FFprobe开头,截取FFprobe后面的命令参数即可,如: ffprobe -i /sdcard/test.mp4 查询mp4视频信息,cmd值为-i /sdcard/test.mp4

  • completeCallback 命令执行完的回调

  • logCallback 命令执行期间的日志回调

ffprobe API接口查看视频信息,仅支持Android和iOS


            var absPath = plus.io.convertLocalFileSystemURL("_www");
                // Android获取的absPath以/结尾,iOS获取的absPath不是/结尾
                if (absPath.endWith('/')) {
                    absPath = absPath.substring(0, absPath.length - 1);
                }
                let filePath = absPath + "/static/test.mp4"
                let completeCallback = (resp) => {
                    // this.showMsg(JSON.stringify(resp));
                    let state = resp.state;
                    this.showMsg("执行状态:" + state);
                    console.log("执行状态:" + state);
                    // console.log("completeCallback:" + JSON.stringify(resp));
                };
                let logCallback = (resp) => {
                    // this.showMsg(JSON.stringify(resp.message));
                    // console.log(resp.message);
                };
                let waitTimeout = 5000;
                UTSFFprobe.getMediaInformationAsync(filePath, completeCallback, logCallback, waitTimeout);

隐私、权限声明

1. 本插件需要申请的系统权限列表:

读写权限

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率: