收藏
回答

live-pusher 推流基础版本库太高不能调用摄像头?

<template>

    <view>

        <live-pusher id='livePusher' ref="livePusher" class="livePusher" :url="url"></live-pusher>

        <button class="btn" @click="start">开始推流</button>

        <button class="btn" @click="pause">暂停推流</button>

        <button class="btn" @click="resume">resume</button>

        <button class="btn" @click="stop">停止推流</button>

        <button class="btn" @click="snapshot">快照</button>

        <button class="btn" @click="startPreview">开启摄像头预览</button>

        <button class="btn" @click="stopPreview">关闭摄像头预览</button>

        <button class="btn" @click="switchCamera">切换摄像头</button>

    </view>

</template>

<script>

    export default {

        data() {

return {

url:'rtmp://3891.livepush.myqcloud.com/live/3891_user_2f6434c5_cf12?bizid=3891&txSecret=dae00c9cfbd8438f16ef421779b56226&txTime=66B32F67'

}

        },

        onReady() {

            // 注意:需要在onReady中 或 onLoad 延时

            this.context = uni.createLivePusherContext("livePusher", this);

setTimeout(()=>{

this.start()

},1000)

        },

        methods: {

            statechange(e) {

                console.log("statechange:" + JSON.stringify(e));

            },

            netstatus(e) {

                console.log("netstatus:" + JSON.stringify(e));

            },

            error(e) {

                console.log("error:" + JSON.stringify(e));

            },

            start: function() {

console.log("livePusher.start:" ,  this.context);

                this.context.start({

                    success: (a) => {

                        console.log("livePusher.start:" + JSON.stringify(a));

                    }

                });

            },

            close: function() {

                this.context.close({

                    success: (a) => {

                        console.log("livePusher.close:" + JSON.stringify(a));

                    }

                });

            },

            snapshot: function() {

                this.context.snapshot({

                    success: (e) => {

                        console.log(JSON.stringify(e));

                    }

                });

            },

            resume: function() {

                this.context.resume({

                    success: (a) => {

                        console.log("livePusher.resume:" + JSON.stringify(a));

                    }

                });

            },

            pause: function() {

                this.context.pause({

                    success: (a) => {

                        console.log("livePusher.pause:" + JSON.stringify(a));

                    }

                });

            },

            stop: function() {

                this.context.stop({

                    success: (a) => {

                        console.log(JSON.stringify(a));

                    }

                });

            },

            switchCamera: function() {

                this.context.switchCamera({

                    success: (a) => {

                        console.log("livePusher.switchCamera:" + JSON.stringify(a));

                    }

                });

            },

            startPreview: function() {

                this.context.startPreview({

                    success: (a) => {

                        console.log("livePusher.startPreview:" + JSON.stringify(a));

                    }

                });

            },

            stopPreview: function() {

                this.context.stopPreview({

                    success: (a) => {

                        console.log("livePusher.stopPreview:" + JSON.stringify(a));

                    }

                });

            }

        }

    }

</script>


<style scoped>

.livePusher{

width: 100vw;

height: 100vh;

}

</style>



基础版本库超过3.4.0就黑屏了

基础版本库低于3.4.0正常

真机调试 live-pusher 没有错误回调 url用的是腾讯云小程序生成的推流地址



最后一次编辑于  2024-08-08
回答关注问题邀请回答
收藏
登录 后发表内容