开放平台
首页平台概述
开发者
  • API文档
  • SDK
产品功能
  • 新手入门
  • 产品功能
常见问题
首页平台概述
开发者
  • API文档
  • SDK
产品功能
  • 新手入门
  • 产品功能
常见问题
  1. 常见问题
  • 直播筹备阶段
  • 直播执行阶段
  • 直播观看阶段
  • 内容数据沉淀阶段
  • 直播相关问题
  • 设备相关问题
  • 对接阶段问题
  • 点播回放相关问题
  • 自动播放策略说明
  • 网络安全策略(防护墙配置)
  1. 常见问题

直播观看阶段

JS SDK#

序号问题解决方案
1关于自动播放设置了 autoplay 参数后, 使用 PC Chrome 浏览器打开 demo 页可能会出现静音自动播放的情况, 这是浏览器的自动播放策略导致的。关于 Chrome 的自动播放策略请参考 Autoplay Policy Changes(国内网络可能打不开)。
此外, 移动端不支持自动播放。
2JSSDK 后台获取流的接口报 4041、直播间未开播或者未设置默认回放;
2、摄像头或麦克风未开启,导致获取视频或音频的流的接口会报错
3JSSDK 用户信息更新接口是否为同步以及如何接收消息?用户信息更新接口为异步方法,JSSDK 有提供接收更新信息返回数据接口
4初始化 JSSDK 后,播放器上未显示倍速或分辨率等按钮请检查代码中是否将该元素 display
5初始化完成后,无法播放1、目前 JSSDK 不支持模拟器 iPhone 播放视频,需要选择非 iPhone 模拟器;
2、播放方法无法直接调用或者说无法自动播放,根据浏览器安全规则规定,需要用户与浏览器有交互后,才可以播放
6jssdk 是否可以控制全屏开关,禁止观众点击全屏可以。可在前端页面隐藏该按钮

嵌入模式#

序号问题解决方案
1嵌入观看直播如何将观众的身份信息带入到直播活动中,例如昵称、头像等等嵌入链接提供了参数拼接,可以通过拼接 nickname、email 等参数将身份信息带入,头像可以通过创建三方账号设置 head 来设置头像

iOS SDK#

序号问题解决方案
1关于续播功能需要用户根据活动 id,自己记录对应视频的播放进入,下次在开始观看之前,预设置 initialPlaybackTime 参数给出时间(秒),即可实现续播功能
2观看回放,连着外设,如有线耳机暂不支持外接设备的暂停、开始、快进等操作按钮
3观看回放,接到电话后,画面虽然暂停了,但是播放状态依然是播放中需要自行监听电话,并且触发暂停操作,详情见 iOS 问题 3 代码
4观看直播,正常网络,刚播放的前几秒出现跳帧快进的情况因为 bufferTime 参数导致的,越接近真实直播,越容易卡顿,推荐设置为 4 秒以上
5观看直播,当弱网或者断网的情况下,重连若干次之后无法自动重来并报错 buffering timeout,是否可以无限重连?重连机制本身是看有几条观看地址线路,当所有的线路尝试完毕后就不在尝试,我们可以再报错回调中增加手动恢复播放的机制,详情见 iOS 问题 5 代码
6观看直播,断网期间主持人开启文档演示恢复网络后文档文档加载可能会有些问题,可以通过重新调用 startPlay 重置直播间播放和文档
7互动直播,断开互动连接后再次进入房间,观看直播为黑屏底层兼容,升级 6.14.0 可解决此问题
8互动直播,上麦后最小化到后台,或接打电话,拍照等,出现远端声音停止播放;再次切回到前台后,存在声音追播或音视频不同步的现象尝试开启后台播放音频权限,xcode - Singing & Capabilities - Background Modes - Audio,AirPlay,and PIP
9互动直播,上麦后接到微信语音/视频通话,微信语音/视频通话一段时间后,SDK 显示互动异常退出房间,重新进入房间点击上麦,此时主持端显示 SDK 仍在麦上,无法响应 SDK 的上麦申请底层兼容,升级 6.14.0 可解决此问题
10互动直播,上麦后接到电话,插入有线耳机/蓝牙耳机接听电话,然后挂断电话,麦克风和扬声器均无声音此问题建议监听用户退到后台的时候调用下麦,一是因为在外面无法采集视频画面,二是不清楚会做什么设计麦克风扬声器视频采集的相关操作导致断开采集,所以建议返回到前台之后在进行正常互动连麦
11观看直播转互动连麦直播,导致声音变小底层兼容,升级 6.14.0 可解决此问题

iOS 问题 3#

// 监听电话
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleInterruption:) name:AVAudioSessionInterruptionNotification object:nil];

#pragma mark - 电话监听
- (void)handleInterruption:(NSNotification *)notification {
    NSDictionary *userInfo = notification.userInfo;
    AVAudioSessionInterruptionType type = [[userInfo objectForKey:AVAudioSessionInterruptionTypeKey] unsignedIntegerValue];

    switch (type) {
        case AVAudioSessionInterruptionTypeBegan:
            // 处理中断开始事件
            // 如果当前正在播放,拔掉耳机,暂停播放
            [self pausePlay];
            break;

        case AVAudioSessionInterruptionTypeEnded: {
            AVAudioSessionInterruptionOptions options = [[userInfo objectForKey:AVAudioSessionInterruptionOptionKey] unsignedIntegerValue];
            if (options & AVAudioSessionInterruptionOptionShouldResume) {
                // 处理中断结束事件
            }
            break;
        }

        default:
            break;
    }
}

iOS 问题 5#

// 播放时错误的回调
- (void)moviePlayer:(VHallMoviePlayer *)moviePlayer playError:(VHSaasLivePlayErrorType)livePlayErrorType info:(NSDictionary *)info
{
    if (livePlayErrorType == VHSaasLivePlayCDNConnectError) {
        // 出现这种报错后 继续重试
        [self reconnectPlay];
    }
}

Android SDK#

序号问题解决方案
1关于续播功能需要用户根据活动 id,自己记录对应视频的播放进入,下次在开始观看时收到播放器的 EVENT_INIT_PLAYER_SUCCESS 事件 调用 seekTo 方法 单位毫秒
2观看回放,连着外设,如有线耳机暂不支持外接设备的暂停、开始、快进等操作按钮
3观看直播连麦时,接到电话后,会有视频声音输出需要自行监听电话广播事件,并且触发媒体静音操作,详情见 Android 问题 1
4观看直播,当弱网或者断网的情况下 重连若千次之后无法自动重来并报错 buffering timeout, 是否可以无限重连?重连机制本身是看有几条观看地址线路,当所有的线路尝试完毕后就不在尝试,我们可以在报错回调中监听 错误信息 ERROR_CONNECT,ERROR_REC 手动恢复播放的机制
5观看直播,断网期间主持人开启文档演示恢复网络后文档文档加载可能会有些问题,可以通过重新调用 start 重置直播间播放和文档
6连麦时相机被其他应用占用导致连麦画面卡住提供相机回调 Stream.StreamDelegate,根据回调事件类型进行下麦处理
7基础美颜效果设置注意事项//打开美颜功能
interactive.localStream.setEnableBeautify(true);
//设置美颜等级 0-4 4 效果最好
interactive.localStream.setBeautifyLevel(level);
//注:基础美颜一定要关闭视频采集回调开关
interactive.localStream.setEnableCaptureCallback(false)
8互动直播,上麦后接到电话,插入有线耳机/蓝牙耳机接听电话,然后挂断电话,麦克风和扬声器均无声音此问题建议监听用户退到后台的时候调用下麦,一是因为在外面无法采集视频画面,二是不清楚会做什么设计麦克风扬声器视频采集的相关操作导致断开采集,所以建议返回到前台之后在进行正常互动连麦
9连麦时直接推出直播间偶尔出现未下麦情况建议先进行下麦处理再退出直播间

Android 监听电话事件#

问题描述:
观看直播连麦时,接到电话后,会有视频声音输出
解决方案:
业务层申请读取打电话权限并静音
处理步骤如下:
1、AndroidManifest.xml 填写手机状态读取权限,并注册电话监听 BroadcastReceiver
<uses-permission android:name="android.permission.READ_PHONE_STATE" ></uses-permission>

<application>
...
<receiver android:name=".PhoneReceiver" android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.PHONE_STATE"></action>
    </intent-filter>
</receiver>
...
</application>
2、申请权限
在需要处理音频信息前申请权限
3、在您的项目中创建一个名为 PhoneReceiver 的类,并扩展 BroadcastReceiver 类。
修改于 2025-05-27 13:07:16
上一页
直播执行阶段
下一页
内容数据沉淀阶段
Built with