Pano开发者中心
  • 文档中心
  • 下载中心

›高级功能

新手入门

  • 简介
  • 名词解释
  • 账号注册指南
  • 创建第一个应用

规则说明

  • Channel ID命名规则
  • 权限控制
  • 计费说明
  • 最长通话时长说明
  • 每月一万分钟免费说明
  • 布局参数说明

场景方案

    教育行业

    • 1vN互动小班课
    • 互动直播大班课

快速接入

  • 简介
  • 音视频

    • Windows (C++)
    • Android (Java)
    • iOS (Objective-C)
    • Web

    白板

    • Web

高级功能

  • 简介
  • 屏幕共享
  • 状态回调
  • 音量指示
  • 混音/伴音
  • 耳返
  • 美颜
  • 音视频数据回调
  • 音视频外部采集
  • 反馈

RESTful API

  • 基本格式
  • 获取Token
  • 频道管理
  • 云端录制
  • CDN推流
  • 文档转码
  • 服务端消息通知API

SDK API

  • SDK接口说明
  • Android (Java)
  • Windows (C++)
  • iOS/macOS (Objective-C)
  • Web SDK

    • PanoRtc 参考
    • RtcEngine
    • RtcWhiteboard
    • Constants

更新记录

  • 简介
  • SDK

    • Windows
    • macOS
    • iOS
    • Android
    • Electron
    • Web
    • Web Whiteboard

    Demo-PanoVideoCall

    • Windows、Mac和Web
    • iOS
    • Android

    Demo-PanoAudioChat

    • iOS

帮助

  • FAQ
  • 更多帮助

状态回调

简介

Pano SDK 支持回调当前网络状态和音视频收发状态,开发者可用于做相应界面展示。

各端 SDK 相关接口,请查看下列介绍:

  • Windows (C++)
  • Android (Java)
  • iOS/macOS (Objective-C)
  • Web

Windows (C++)

网络状态回调

请参考 注册通知,实现 RtcEngine::Callback::onNetworkQuality(uint64_t userId, QualityRating quality) 回调方法来接收网络状态质量通知,QualityRating 表示 userId 对应用户的网络状态质量。

音视频收发状态回调

通过 RtcEngine::setMediaStatsObserver(MediaStatsObserver * observer) 方法设置观察者,MediaStatsObserver 包含多个类型的回调,例如:

  • onVideoSendStats (VideoSendStats &stats) 回调发送视频的统计,包括视频流标识、视频宽度、视频高度、发送帧率、发送比特率,等。
  • onVideoRecvStats (VideoRecvStats &stats) 回调接收视频的统计,包括用户标识、视频流标识、视频宽度、视频高度、接收帧率、接收比特率,等。
  • onAudioSendStats (AudioSendStats &stats) 回调发送音频的统计,包括发送比特率、音频输入强度级别、麦克风采集检测,等。
  • onAudioRecvStats (AudioRecvStats &stats) 回调接收音频的统计,包括用户标识、接收比特率、音频输出强度级别,等。
  • onScreenSendStats (ScreenSendStats &stats) 回调发送屏幕共享的统计,和发送视频的统计类似。
  • onScreenRecvStats (ScreenRecvStats &stats) 回调接收屏幕共享的统计,和接收视频的统计类似。
  • 其他类型,请查看 SDK API 文档。

Android (Java)

网络状态回调

实现 RtcEngineCallback 接口的 onNetworkQuality(long userId, Constants.QualityRating quality) 回调方法来接收网络状态质量通知,QualityRating 表示 userId 对应用户的网络状态质量。

音视频收发状态回调

通过 RtcEngine 对象的 setMediaStatsObserver(RtcMediaStatsObserver observer) 方法设置观察者,RtcMediaStatsObserver 包含多个类型的回调,例如:

  • onVideoSendStats (RtcVideoSendStats stats) 回调发送视频的统计,包括视频流标识、视频宽度、视频高度、发送帧率、发送比特率,等。
  • onVideoRecvStats (RtcVideoRecvStats stats) 回调接收视频的统计,包括用户标识、视频流标识、视频宽度、视频高度、接收帧率、接收比特率,等。
  • onAudioSendStats (RtcAudioSendStats stats) 回调发送音频的统计,包括发送比特率、音频输入强度级别、麦克风采集检测,等。
  • onAudioRecvStats (RtcAudioRecvStats stats) 回调接收音频的统计,包括用户标识、接收比特率、音频输出强度级别,等。
  • onScreenSendStats (RtcVideoSendStats stats) 回调发送屏幕共享的统计,和发送视频的统计类似。
  • onScreenRecvStats (RtcVideoRecvStats stats) 回调接收屏幕共享的统计,和接收视频的统计类似。
  • 其他类型,请查看 SDK API 文档。

iOS/macOS (Objective-C)

网络状态回调

实现 PanoRtcEngineDelegate 协议的 - onNetworkQuality:withUser: 回调方法来接收网络状态质量通知,PanoQualityRating 表示 userId 对应用户的网络状态质量。

音视频收发状态回调

实现 PanoRtcEngineDelegate 协议的以下方法来接收音视频状态回调:

  • - onVideoSendStats: 回调发送视频的统计,包括视频流标识、视频宽度、视频高度、发送帧率、发送比特率,等。
  • - onVideoRecvStats: 回调接收视频的统计,包括用户标识、视频流标识、视频宽度、视频高度、接收帧率、接收比特率,等。
  • - onAudioSendStats: 回调发送音频的统计,包括发送比特率、音频输入强度级别、麦克风采集检测,等。
  • - onAudioRecvStats: 回调接收音频的统计,包括用户标识、接收比特率、音频输出强度级别,等。
  • - onScreenSendStats: 回调发送屏幕共享的统计,和发送视频的统计类似。
  • - onScreenRecvStats: 回调接收屏幕共享的统计,和接收视频的统计类似。

Web

网络状态检测

通过 RtcEngine 对象的 startNetworkTest 方法进行网络状态检测。
网络状态检测基于和服务器的连接,因此请等到 joinChannelConfirm 返回加入频道成功后再调用此接口。
如需定期获取状态,可以使用 setInterval 实现。

rtcEngine.on(PanoRtc.RtcEngine.Events.joinChannelConfirm, data => {
    if (data.result == 'success') {
        // 加入频道成功,设置定时器
        let timerNetworkTest = setInterval(() => {
            rtcEngine.startNetworkTest(obj => {
                console.info('startNetworkTest: ', obj);
            })
        }, 5000);
    }
});
Last updated on 12/21/2020
← 屏幕共享音量指示 →
  • 简介
  • Windows (C++)
    • 网络状态回调
    • 音视频收发状态回调
  • Android (Java)
    • 网络状态回调
    • 音视频收发状态回调
  • iOS/macOS (Objective-C)
    • 网络状态回调
    • 音视频收发状态回调
  • Web
    • 网络状态检测
浙ICP备20002645号 Copyright ©2020 拍乐云. All Rights Reserved