首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Agora.io实现直播

用Agora.io实现直播
EN

Stack Overflow用户
提问于 2020-03-24 08:28:40
回答 1查看 1K关注 0票数 1

我正在尝试在React本地移动应用程序中通过Agora.io实现实况广播。我以前已经成功地实现了视频呼叫。我已经通过文档,比较和对比视频通话现场直播(都是web )。我只能在客户端的模式上找到一个区别,它对应于react本机sdk中的channelProfile。在文档中,它说有三种不同的模式:通信、现场广播和游戏。当我实现视频调用时,我为channelProfile的值分配了1,它工作得很好,质量已经足够好了。然而,当我为channelProfile分配2以表示它是实况广播时,质量就会严重下降。在实施直播时,我做错了什么吗?如何提高现场直播的质量?为便于考虑,我将我的代码放在下面:

代码语言:javascript
复制
const config = {
        appid: 'MY APP ID',
        channelProfile: this.props.navigation.getParam('channelProfile', 2),
        clientRole: this.props.navigation.getParam('clientRole', 1),
        videoEncoderConfig: {
            width: 360,
            height: 480,
            bitrate: 1,
            frameRate: FPS30,
            orientationMode: Adaptative,
        },
        audioProfile: AudioProfileDefault,
        audioScenario: AudioScenarioDefault
    }
    RtcEngine.on('userJoined', (data) => {
        console.warn("user joined", data);
        const { peerIds } = this.state;
        if (peerIds.indexOf(data.uid) === -1) {
            this.setState({
                peerIds: [...this.state.peerIds, data.uid]
            })
        }
    })
    RtcEngine.on('error', (error) => {
        console.warn("error", error);
    })
    RtcEngine.init(config);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-25 03:59:46

在Agora的SDK中,曾经有三种信道模式,但最近游戏SDK已经与本地SDK相结合,因此只有两种信道模式,即communicationbroadcast

每个模式在通道内部和流内部为不同的质量进行优化。对于广播,文档提到在使用默认比特率时,broadcast模式使用的比特率是communication的两倍。

如果您有质量问题,您应该考虑更改您的比特率,目前您的代码正在将比特率设置为非常低的1。Agora提供了建议的分辨率配置文件、fps和比特率的列表。

视频比特率文档:https://docs.agora.io/en/Interactive%20Broadcast/API%20Reference/oc/Classes/AgoraVideoEncoderConfiguration.html#//api/name/bitrate

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60827337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档