微信小程序-live-player-实时视频-截图并转文件流

该博客介绍了如何在微信小程序中使用LivePlayerContext的snapshot方法实现实时视频截取,并将截图转换为base64编码,进一步保存到本地。通过wx.getFileSystemManager读取并转换文件,调用saveImageToPhotosAlbum接口保存图片到相册。同时提到了使用canvas进行截图的另一种方法。
摘要由CSDN通过智能技术生成
<live-player id="players" src="http://h5player.bytedance.com/video/flv/xgplayer-demo-360p.flv" mode="live"  autoplay="true" style="width: 100%; height:500rpx;" />

this.videoContext = wx.createLivePlayerContext("players");
this.videoContext.snapshot({
    success(e) {
        console.log('success', e)
        let fsm = wx.getFileSystemManager()
        fsm.readFile({
            filePath: e.tempImagePath,
            encoding: "base64",
            success: function (data) {
                console.log(data)
                let bstr = atob(data.data),
                    n = bstr.length,
                    u8arr = new Uint8Array(n)
                while (n--) {
                    u8arr[n] = bstr.charCodeAt(n)
                }
                let files = new File([u8arr], '截图', { type: 'image/png' })

                this.screenShotSave(files)
            }
        })
        // 保存本地
        // wx.saveImageToPhotosAlbum({
        //     filePath: e.tempImagePath,
        //     success: function (e) {
        //         console.log('saveImageToPhotosAlbum', e)
        //     },
        //     fail: function (e) { }
        // })
    },
    fail(e) {
        console.log('fail', e)
    }
})		

得到filePath后,用canvas画布也可以
在这里插入图片描述
相关地址:
https://developers.weixin.qq.com/miniprogram/dev/api/media/live/LivePlayerContext.snapshot.html

https://developers.weixin.qq.com/miniprogram/dev/framework/ability/file-system.html

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值