jancd/qiniu-developer_ShareGPT huggingface dataset:
human: 如何处理七牛云的实时音视频QNTranscodingLiveStreamingTrack

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNTranscodingLiveStreamingTrack

#  QNTranscodingLiveStreamingTrack

最近更新时间: 2022-03-28 22:31:39

旁路直播合流配置信息，通过 SDK 将参数发送到服务端,服务端按照指定的参数进行合流并推出 RTMP 流

Index

Properties

  * track_id
  * x
  * y
  * z
  * width
  * height
  * stretch_mode
  * is_support_sei

Properties

track_id

  * track_id: string
  * track id，房间内唯一

x

  * x: int32_t
  * 此路视频流（即此 video track）在 RTMP 流画布中的 X 坐标

y

  * y: int32_t
  * 此路视频流（即此 video track）在 RTMP 流画布中的 y 坐标

z

  * z: int32_t
  * 此路视频流（即此 video track）在 RTMP 流画布中的 z 坐标

width

  * width: int32_t
  * 此路视频流（即此 video track) RTMP 流画布中的宽度，缩放、裁减方式根据后端配置决定

height

  * height: int32_t
  * 此路视频流（即此 video track) RTMP 流画布中的高度，缩放、裁减方式根据后端配置决定

stretch_mode

  * stretch_mode: [QNStretchMode](https://developer.qiniu.com/rtc/11296/QNTranscodingLiveStreamingTrack-Linux/11292/QNStretchMode-Linux)
  * 设置video track 在合流时的填充模式，如果不做单独设置,填充模式将继承 StartLiveStreaming 的 stretchMode

is_support_sei

  * is_support_sei: bool
  * 是否支持私有 SEI 数据插入，只支持一路 video track 设置

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNVideoCaptureConfig

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNVideoCaptureConfig

#  QNVideoCaptureConfig

最近更新时间: 2022-03-21 21:28:15

配置视频采集参数的结构体

Index

Properties

  * width
  * height
  * frame_rate

Properties

width

  * width: int32_t
  * 设置视频采集宽度

height

  * height: int32_t
  * 设置视频采集高度

frame_rate

  * frame_rate: int32_t
  * 是视频采集帧率

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNCustomAudioTrackConfig

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNCustomAudioTrackConfig

#  QNCustomAudioTrackConfig

最近更新时间: 2022-03-28 22:34:05

自定义音频采集 Track 的配置

Index

Properties

  * audio_quality
  * tag

Properties

audio_quality

  * audio_quality: [QNAudioQuality](https://developer.qiniu.com/rtc/11204/QNCustomAudioTrackConfig-Linux/11190/QNAudioQuality-Linux)
  * 设置音频质量

tag

  * tag: string
  * 自定义标签

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNLocalAudioTrackStats

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNLocalAudioTrackStats

#  QNLocalAudioTrackStats

最近更新时间: 2022-03-23 13:58:30

本地发布的音频统计信息

Index

Properties

  * uplink_bitrate
  * uplink_rtt
  * uplink_lostrate

Properties

uplink_bitrate

  * uplink_bitrate: int32_t
  * 上行音频码率

uplink_rtt

  * uplink_rtt: int32_t
  * 上行网络 rtt

uplink_lostrate

  * uplink_lostrate: int32_t
  * 上行网络丢包率

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNImageType

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNImageType

#  QNImageType

最近更新时间: 2022-03-23 13:55:41

图片类型

Index

Enum

  * QNImageType

Enum

QNImageType

  * Type declaration

    * kImagJpeg

    * kImagPng

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNRemoteVideoTrackStats

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNRemoteVideoTrackStats

#  QNRemoteVideoTrackStats

最近更新时间: 2022-03-28 22:37:49

订阅远端的视频统计信息

Index

Properties

  * profile
  * downlink_framerate
  * downlink_bitrate
  * downlink_lostrate
  * uplink_rtt
  * uplink_lostrate

Properties

profile

  * profile: [QNTrackProfile](https://developer.qiniu.com/rtc/11286/QNRemoteVideoTrackStats-Linux/11293/QNTrackProfile-Linux)
  * 该路 track 的 profile

downlink_framerate

  * downlink_framerate: int32_t
  * 下行视频帧率

downlink_bitrate

  * downlink_bitrate: int32_t
  * 下行视频码率

downlink_lostrate

  * downlink_lostrate: int32_t
  * 下行网络丢包率

uplink_rtt

  * uplink_rtt: int32_t
  * 上行网络 rtt （即远端用户发布视频的网络链路的 rtt）

uplink_lostrate

  * uplink_lostrate: int32_t
  * 上行网络丢包率

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNVideoRotation

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNVideoRotation

#  QNVideoRotation

最近更新时间: 2022-03-23 14:25:46

视频数据的旋转角度，主要用于对原始视频数据进行处理的功能接口中

Index

Enum

  * QNVideoRotation

Enum

QNVideoRotation

  * code | describe | message  
---|---|---  
kVideoRotation0 | 旋转 0 度 | 无  
kVideoRotation90 | 旋转 90 度 | 无  
kVideoRotation180 | 旋转 180 度 | 无  
kVideoRotation270 | 旋转 270 度 | 无  
  
Type declaration

    * kVideoRotation0

    * kVideoRotation90

    * kVideoRotation180

    * kVideoRotation270

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNConnectionState

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNConnectionState

#  QNConnectionState

最近更新时间: 2022-03-28 22:39:59

连麦房间连接状态

Index

Properties

  * kDisconnected
  * kConnecting
  * kConnected
  * kReconnecting
  * kReconnected

Properties

kDisconnected

  * kDisconnected: QNConnectionState
  * 未链接状态

SDK 出现无法恢复错误时也进入该状态

kConnecting

  * kConnecting: QNConnectionState
  * 正在连接状态

当调用
[QNRTCClient.Join](https://developer.qiniu.com/rtc/11266/QNConnectionState-
Linux/11288) 后, 首先进入该状态，表示开始连接房间服务

kConnected

  * kConnected: QNConnectionState
  * 连接成功状态

当调用
[QNRTCClient.Join](https://developer.qiniu.com/rtc/11266/QNConnectionState-
Linux/11288)，在完成和房间服务连接后进入该状态

kReconnecting

  * kReconnecting: QNConnectionState
  * 正在重连状态

当和房间的已有连接由于网络中断、网络异常等原因断开，SDK 进行周期性重连时进入该状态

kReconnected

  * kReconnected: QNConnectionState
  * 重连成功状态

当从 kReconnecting 状态，重新和房间服务建立连接后进入该状态

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNVideoEncoderType

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNVideoEncoderType

#  QNVideoEncoderType

最近更新时间: 2022-05-24 22:10:23

编码器类型

Index

Enum

  * QNVideoEncoderType

Enum

QNVideoEncoderType

  * code | describe | message  
---|---|---  
kEncodeOpenH264 | 默认 Open264 编码器，支持所有平台 | 无  
kExternal | H264 用于数据透传 | 无  
  
Type declaration

    * kEncodeOpenH264

    * kExternal

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNAudioDeviceInfo

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNAudioDeviceInfo

#  QNAudioDeviceInfo

最近更新时间: 2022-03-23 21:10:38

音频设备信息

Index

Properties

  * id
  * name
  * is_default

Properties

id

  * id: string
  * 设备 ID

name

  * name: string
  * 设备名

is_default

  * is_default: bool
  * 是否是系统默认设备

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNCustomMessage

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNCustomMessage

#  QNCustomMessage

最近更新时间: 2022-03-23 13:52:53

自定义消息

Index

Properties

  * msg_id
  * msg_sendid
  * msg_text
  * msg_stamp

Properties

msg_id

  * msg_id: string
  * 消息唯一 id

msg_sendid

  * msg_sendid: string
  * 消息发送者的 user id

msg_text

  * msg_text: string
  * 消息内容

msg_stamp

  * msg_stamp: int32_t
  * 消息时间戳

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNVideoFrameListener

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNVideoFrameListener

#  QNVideoFrameListener

最近更新时间: 2022-03-28 22:45:43

视频数据回调接口

Index

Core Methods

  * OnVideoFrame

Core Methods

OnVideoFrame

  * virtual void OnVideoFrame(const std::string& user_id,const string& track_id,const uint8_t* data,uint32_t data_size,int32_t width,int32_t height,QNVideoFrameType video_frame_type) = 0
  * 音频数据回调

Parameters

    * user_id: string 

此视频数据所属的用户

    * track_id: string 

此音频 track id

    * data: uint8_t* 

视频数据内存指针

    * data_size: uint32_t 

数据长度

    * width: int32_t 

视频宽

    * height: int32_t 

视频高

    * video_frame_type: [QNVideoFrameType](https://developer.qiniu.com/rtc/11226/QNVideoFrameListener-Linux/11300/QNVideoFrameType-Linux)

视频数据类型

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNAudioDeviceState

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNAudioDeviceState

#  QNAudioDeviceState

最近更新时间: 2022-03-23 13:38:43

音频设备当前状态，用与设备插拔的检测和通知

Index

Enum

  * QNAudioDeviceState

Enum

QNAudioDeviceState

  * code | describe | message  
---|---|---  
kAudioDeviceActive | 新的可用设备 | 无  
kAudioDeviceDisabled | 设备失效 | 无  
kAudioDeviceNotPresent | 设备不存在 | 无  
kAudioDeviceLost | 设备被拔出 | 无  
  
Type declaration

    * kAudioDeviceActive

    * kAudioDeviceDisabled

    * kAudioDeviceNotPresent

    * kAudioDeviceLost

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNAudioQuality

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNAudioQuality

#  QNAudioQuality

最近更新时间: 2022-03-21 20:54:02

描述音频质量的配置属性

Index

Properties

  * sample_rate
  * channel_count
  * bits_per_sample
  * bitrate

Properties

sample_rate

  * sample_rate: int32_t
  * 采样率，出于对 Android 设备兼容性的考虑，语音通话场景下建议使用 16kHz 的采样率，否则在某些特殊设备上可能会出现回声等问题

channel_count

  * channel_count: int32_t
  * 声道数

bits_per_sample

  * bits_per_sample: int32_t
  * 位宽

bitrate

  * bitrate: int32_t
  * 编码码率，单位 kbps

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNClientRoleListener

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNClientRoleListener

#  QNClientRoleListener

最近更新时间: 2022-03-28 22:47:08

角色设置回调接口，可通过调用
[QNRTCClient.SetClientRole](https://developer.qiniu.com/rtc/11264/QNClientRoleListener-
Linux/11288) 传入

Index

Core Methods

  * OnClientRoleResult
  * OnClientRoleError

Core Methods

OnClientRoleResult

  * virtual void OnClientRoleResult(QNClientRole new_role) = 0
  * 设置角色成功回调

Parameters

    * new_role: [QNClientRole](https://developer.qiniu.com/rtc/11264/QNClientRoleListener-Linux/11263/QNClientRole-Linux)

新角色类型

OnClientRoleError

  * virtual void OnClientRoleError(int error_code, const std::string& error_message) = 0
  * 设置角色失败回调

code | describe | message  
---|---|---  
Err_Invalid_Client_Mode | 使用场景不符 | 请确认当前场景为互动直播，通信场景不支持角色设置  
  
Parameters

    * errorCode: int 

错误码

    * error_message: string 

错误描述

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNLocalVideoTrackStats

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNLocalVideoTrackStats

#  QNLocalVideoTrackStats

最近更新时间: 2022-03-28 22:48:40

本地发布的视频统计信息

Index

Properties

  * profile
  * uplink_framerate
  * uplink_bitrate
  * uplink_rtt
  * uplink_lostrate

Properties

profile

  * profile: [QNTrackProfile](https://developer.qiniu.com/rtc/11274/QNLocalVideoTrackStats-Linux/11293/QNTrackProfile-Linux)
  * 该路 track 的 profile

uplink_framerate

  * uplink_framerate: int32_t
  * 上行视频帧率

uplink_bitrate

  * uplink_bitrate: int32_t
  * 上行视频码率

uplink_rtt

  * uplink_rtt: int32_t
  * 上行网络 rtt

uplink_lostrate

  * uplink_lostrate: int32_t
  * 上行网络丢包率

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNMediaRelayState

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNMediaRelayState

#  QNMediaRelayState

最近更新时间: 2022-03-23 14:04:27

跨房媒体转发状态

Index

Properties

  * kRelayUnknown
  * kRelaySuccess
  * kRelayStopped
  * kInvalidToken
  * kRelayNoRoom
  * kRelayRoomClosed
  * kRelayPlayerExisted

Properties

kRelayUnknown

  * kRelayUnknown: QNMediaRelayState
  * 状态未知

kRelaySuccess

  * kRelaySuccess: QNMediaRelayState
  * 成功

kRelayStopped

  * kRelayStopped: QNMediaRelayState
  * 失败

kInvalidToken

  * kInvalidToken: QNMediaRelayState
  * Token 失效

kRelayNoRoom

  * kRelayNoRoom: QNMediaRelayState
  * 目标房间不存在

kRelayRoomClosed

  * kRelayRoomClosed: QNMediaRelayState
  * 目标房间已关闭

kRelayPlayerExisted

  * kRelayPlayerExisted: QNMediaRelayState
  * 目标房间存在相同用户名

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNRemoteAudioMixedFrameListener

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNRemoteAudioMixedFrameListener

#  QNRemoteAudioMixedFrameListener

最近更新时间: 2022-03-23 14:08:51

远端各用户音频数据混音后的回调接口

Index

Core Methods

  * OnRemoteAudioMixedFrame

Core Methods

OnRemoteAudioMixedFrame

  * virtual void OnRemoteAudioMixedFrame(const uint8_t* data, uint32_t data_size, uint32_t bits_per_sample, uint32_t sample_rate, uint32_t channels) = 0
  * 远端各用户音频数据混音后的回调

Parameters

    * data: const uint8_t* 

音频数据内存指针

    * bits_per_sample: uint32_t 

位宽，即每个采样点占用位数

    * sample_rate: uint32_t 

采样率

    * channels: uint32_t 

声道数

    * data_size: uint32_t 

音频数据大小

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNLiveStreamingListener

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNLiveStreamingListener

#  QNLiveStreamingListener

最近更新时间: 2022-03-28 22:53:37

CDN 转推结果通知接口

Index

Core Methods

  * OnStarted
  * OnStopped
  * OnTranscodingTracksUpdated
  * OnLiveStreamingError

Core Methods

OnStarted

  * virtual void OnStarted(const std::string& stream_id) = 0
  * 转推任务成功创建时触发此回调

Parameters

    * stream_id: string 

开启转推的 stream id

OnStopped

  * virtual void OnStopped(const std::string& stream_id) = 0
  * 转推任务成功停止时触发此回调

Parameters

    * stream_id: string 

停止转推的 stream id

OnTranscodingTracksUpdated

  * virtual void OnTranscodingTracksUpdated(const std::string& stream_id) = 0
  * 转推任务配置更新时触发此回调

Parameters

    * stream_id: string 

配置更新的 stream id

OnLiveStreamingError

  * virtual void OnLiveStreamingError(const std::string& stream_id, const [QNLiveStreamingErrorInfo](https://developer.qiniu.com/rtc/11272/QNLiveStreamingListener-Linux/11271/QNLiveStreamingErrorInfo-Linux)& error_info) = 0
  * 转推任务出错时触发此回调

Parameters

    * stream_id: string 

出现错误的 stream id

    * error_info: [QNLiveStreamingErrorInfo](https://developer.qiniu.com/rtc/11272/QNLiveStreamingListener-Linux/11271/QNLiveStreamingErrorInfo-Linux)

详细错误原因

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNLogLevel

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNLogLevel

#  QNLogLevel

最近更新时间: 2022-03-23 14:00:49

日志级别

Index

Enum

  * QNLogLevel

Enum

QNLogLevel

  * Type declaration

    * kLogNone

    * kLogVerbose

    * kLogInfo

    * kLogWarning

    * kLogError

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNCustomVideoTrackConfig

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNCustomVideoTrackConfig

#  QNCustomVideoTrackConfig

最近更新时间: 2022-05-24 22:07:41

自定义视频采集 Track 的配置

Index

Properties

  * encoder_config
  * tag
  * multi_profile_enabled
  * frame_type

Properties

encoder_config

  * encoder_config: [QNVideoEncoderConfig](https://developer.qiniu.com/rtc/11206/QNCustomVideoTrackConfig-Linux/11225/QNVideoEncoderConfig-Linux)
  * 设置摄像头采集数据编码参数

tag

  * tag: string
  * 自定义标签

multi_profile_enabled

  * multi_profile_enabled: bool
  * 是否开启多流

frame_type

  * frame_type: [QNVideoFrameType](https://developer.qiniu.com/rtc/11206/QNCustomVideoTrackConfig-Linux/11300/QNVideoFrameType-Linux)
  * 自定义数据帧类型

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNLocalVideoTrack

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNLocalVideoTrack

#  QNLocalVideoTrack

最近更新时间: 2022-03-28 22:57:09

本地视频 Track 基类

Hierarchy

  * [QNTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11222/QNTrack-Linux)
    * [QNLocalTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11208/QNLocalTrack-Linux)
      * QNLocalVideoTrack 
        * [QNCameraVideoTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11198/QNCameraVideoTrack-Linux)
        * [QNCustomVideoTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11205/QNCustomVideoTrack-Linux)
      * [QNLocalAudioTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11207/QNLocalAudioTrack-Linux)
        * [QNMicrophoneAudioTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11210/QNMicrophoneAudioTrack-Linux)
        * [QNCustomAudioTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11203/QNCustomAudioTrack-Linux)
    * [QNRemoteTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11213/QNRemoteTrack-Linux)
      * [QNRemoteVideoTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11215/QNRemoteVideoTrack-Linux)
      * [QNRemoteAudioTrack](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11212/QNRemoteAudioTrack-Linux)

Index

Core Methods

  * GetTrackID
  * GetUserID
  * GetTag
  * IsAudio
  * IsVideo
  * IsMuted
  * SetMuted
  * SetVideoFrameListener
  * SendSEI

Core Methods

GetTrackID

  * virtual const std::string& GetTrackID() = 0
  * 获取 TrackID

Returns string

GetUserID

  * virtual const std::string& GetUserID() = 0
  * 获取 UserID

Returns string

GetTag

  * virtual const std::string& GetTag() = 0
  * 获取 Tag

Returns string

IsAudio

  * virtual bool IsAudio() = 0
  * 是否为音频 track

Returns bool

IsVideo

  * virtual bool IsVideo() = 0
  * 是否为视频 track

Returns bool

IsMuted

  * virtual bool IsMuted() = 0
  * 是否 muted

Returns bool

SetMuted

  * virtual void SetMuted(bool muted) = 0
  * 设置是否静默该 track，静默后，SDK 将会发送静默帧数据

Parameters

    * muted: bool 

是否静默

SetVideoFrameListener

  * virtual void SetVideoFrameListener([QNVideoFrameListener](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11226/QNVideoFrameListener-Linux)* listener) = 0
  * 设置视频数据监听

Parameters

    * listener: [QNVideoFrameListener](https://developer.qiniu.com/rtc/11209/QNLocalVideoTrack-Linux/11226/QNVideoFrameListener-Linux)

视频数据监听接口

SendSEI

  * virtual void SendSEI(std::string& message,std::string& uuid,int32_t repeat_count) = 0
  * 发送 SEI

Parameters

    * message: string 

消息内容

    * uuid: string 

唯一 ID

    * repeat_count: int 

重复次数, -1 为每一帧都发送

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNStretchMode

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNStretchMode

#  QNStretchMode

最近更新时间: 2022-03-23 14:18:21

画面渲染窗口填充方式

Index

Enum

  * QNStretchMode

Enum

QNStretchMode

  * code | describe | message  
---|---|---  
kStretchInvalid | 无效值 | 无  
kStretchFill | 在保持长宽比的前提下，缩放视频，使其充满容器 | 无  
kStretchFit | 在保持长宽比的前提下，缩放视频，使其在容器内完整显示，边缘部分填充黑边 | 无  
kStretchScaleToFit | 缩放视频，使其填充满容器，可能导致拉伸变形  | 无  
  
Type declaration

    * kStretchInvalid

    * kStretchFill

    * kStretchFit

    * kStretchScaleToFit

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNVideoDeviceState

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNVideoDeviceState

#  QNVideoDeviceState

最近更新时间: 2022-03-28 23:01:02

摄像头设备状态，SDK 提供设备插拔状态的监控，以下用于标识设备被插入还是拔出设备状态变化后，建议通过
[QNRTC](https://developer.qiniu.com/rtc/11298/QNVideoDeviceState-
Linux/11216/QNRTC-Linux).GetCameraCount 重新获取摄像头设备列表

Index

Enum

  * QNVideoDeviceState

Enum

QNVideoDeviceState

  * code | describe | message  
---|---|---  
kVideoDeviceActive | 设备插入 | 无  
kVideoDeviceLost | 设备拔出 | 无  
  
Type declaration

    * kVideoDeviceActive

    * kVideoDeviceLost

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNConnectionDisconnectedInfo

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNConnectionDisconnectedInfo

#  QNConnectionDisconnectedInfo

最近更新时间: 2022-03-28 23:01:49

房间断开时的相关信息

Index

Properties

  * reason
  * error_code
  * error_message

Enum

  * Reason

Properties

reason

  * reason: Reason
  * 获取用户房间断开的原因

code | describe | message  
---|---|---  
kLeave | 主动退出 | 无  
kKickOut | 被服务端踢出房间 | 无  
kRoomClosed | 房间被管理员关闭 | 请确认房间管理逻辑  
kRoomFull | 房间人数已满，当房间已加入人数超过房间的人数限制时触发 | 请确认后台服务的设置  
kRoomError | 异常断开 | 可通过 error code 查看异常断开的原因  

error_code

  * error_code: int
  * 错误码

code | describe | message  
---|---|---  
QNRTC_OK | 主动退出房间 | 无  
Err_Auth_Failed | 加入房间认证失败 | 服务验证时出错，可能为服务网络异常。建议重新尝试加入房间  
Err_Token_Error | 房间 Token 错误 | 表示您提供的房间 token 不符合七牛 token 签算规则, 详情请参考[RoomToken 签发服务](https://doc.qnsdk.com/rtn/docs/server_overview#1)  
Err_Token_Expired | 房间 Token 过期 | 表示您的房间 token 过期, 需要重新生成 token 再加入  
Err_User_Already_Exist | 房间内已经有同名用户 | 后台如果配置为开启“禁止自动踢人”,则同一用户重复加入/未正常退出再加入会触发此错误  
Err_Media_Not_Support | 媒体协商失败 | 表示该设备不支持指定的音视频格式，无法进行连麦的操作  
Err_Fatal | 非预期错误 | 表示 RTC 生命周期异常，需要释放资源并重新初始化  
Err_Reconnect_Failed | 内部重连失效 | 内部重连后出错，一般出现在网络非常不稳定时出现，建议提示用户并尝试重新加入房间。当发生该错误时，之前创建的转推任务将被服务销毁，如有需要，应在下次成功加入房间后按业务需要恢复  

error_message

  * error_message: string
  * 获取错误信息的文字描述

Enum

Reason

  * Type declaration

    * kLeave

    * kKickOut

    * kRoomClosed

    * kRoomFull

    * kRoomError

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNMediaRelayConfiguration

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNMediaRelayConfiguration

#  QNMediaRelayConfiguration

最近更新时间: 2022-03-28 23:03:38

跨房媒体转发配置信息

Index

Properties

  * src_room_info
  * dest_room_infos

Properties

src_room_info

  * src_room_info: [QNMediaRelayInfo](https://developer.qiniu.com/rtc/11276/QNMediaRelayConfiguration-Linux/11277/QNMediaRelayInfo-Linux)
  * 源房间信息

dest_room_infos

  * dest_room_infos: std::vector<QNMediaRelayInfo>
  * 目标房间信息

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNCameraEventListener

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNCameraEventListener

#  QNCameraEventListener

最近更新时间: 2022-03-28 23:04:31

摄像头开启，采集异常通知

Index

Core Methods

  * OnCameraError

Core Methods

OnCameraError

  * virtual void OnCameraError(int error_code, const std::string& error_message)
  * 相机失败回调

Parameters

    * error_code: int 

详见错误码
[QNErrorCode](https://developer.qiniu.com/rtc/11194/QNCameraEventListener-
Linux/11369/error-code-linux)

    * error_message: string 

错误描述

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNNetworkGrade

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNNetworkGrade

#  QNNetworkGrade

最近更新时间: 2022-03-23 14:05:14

网络状态

Index

Properties

  * kINVALID
  * kEXCELLENT
  * kGOOD
  * kFAIR
  * kPOOR

Properties

kINVALID

  * kINVALID: QNNetworkGrade
  * 当前网络未知

kEXCELLENT

  * kEXCELLENT: QNNetworkGrade
  * 当前网络优秀

kGOOD

  * kGOOD: QNNetworkGrade
  * 当前网络良好

kFAIR

  * kFAIR: QNNetworkGrade
  * 当前网络一般

kPOOR

  * kPOOR: QNNetworkGrade
  * 当前网络较差

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNRemoteAudioTrackStats

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNRemoteAudioTrackStats

#  QNRemoteAudioTrackStats

最近更新时间: 2022-03-23 14:09:47

订阅远端的音频统计信息

Index

Properties

  * downlink_bitrate
  * downlink_lostrate
  * uplink_rtt
  * uplink_lostrate

Properties

downlink_bitrate

  * downlink_bitrate: int32_t
  * 下行音频码率

downlink_lostrate

  * downlink_lostrate: int32_t
  * 下行网络丢包率

uplink_rtt

  * uplink_rtt: int32_t
  * 上行网络 rtt

uplink_lostrate

  * uplink_lostrate: int32_t
  * 上行网络丢包率

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNTrackProfile

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNTrackProfile

#  QNTrackProfile

最近更新时间: 2022-03-23 14:19:14

Track 质量等级

Index

Enum

  * QNTrackProfile

Enum

QNTrackProfile

  * code | describe | message  
---|---|---  
kHigh | 高质量 | 无  
kMedium | 普通质量 | 无  
kLow | 低质量 | 无  
  
Type declaration

    * kHigh

    * kMedium

    * kLow

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNNetworkQuality

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNNetworkQuality

#  QNNetworkQuality

最近更新时间: 2022-03-28 23:10:44

网络上下行质量

Index

Properties

  * uplink_network_grade
  * downlink_network_grade

Properties

uplink_network_grade

  * uplink_network_grade: [QNNetworkGrade](https://developer.qiniu.com/rtc/11281/QNNetworkQuality-Linux/11280/QNNetworkGrade-Linux)
  * 当前网络上行质量

downlink_network_grade

  * downlink_network_grade: [QNNetworkGrade](https://developer.qiniu.com/rtc/11281/QNNetworkQuality-Linux/11280/QNNetworkGrade-Linux)
  * 当前网络下行质量

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNPublishResultCallback

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNPublishResultCallback

#  QNPublishResultCallback

最近更新时间: 2022-03-23 14:08:11

发布结果回调接口

Index

Core Methods

  * OnPublished
  * OnPublishError

Core Methods

OnPublished

  * virtual void OnPublished() = 0
  * 发布成功后触发此回调

OnPublishError

  * virtual void OnPublishError(int error_code, const std::string& error_message) = 0
  * 发布成功后触发此回调

Parameters

    * error_code: int 

错误码

    * error_message: string 

错误消息

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNCameraDeviceInfo

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux >QNCameraDeviceInfo

#  QNCameraDeviceInfo

最近更新时间: 2022-03-28 23:21:50

摄像头设备信息

Index

Properties

  * id
  * name
  * capabilities

Properties

id

  * id: string
  * 设备 Id，用于系统内做标识

name

  * name: string
  * 设备名

capabilities

  * capabilities: std::vector<[QNCameraCapability](https://developer.qiniu.com/rtc/11193/QNCameraDeviceInfo-Linux/11258/QNCameraCapability-Linux)>
  * 此摄像头所支持的采集能力列表

以上内容是否对您有帮助？
human: 如何处理七牛云的实时音视频QNMicrophoneAudioTrackConfig

gpt: [实时音视频](https://developer.qiniu.com/rtc) > API 文档 > Linux
>QNMicrophoneAudioTrackConfig

#  QNMicrophoneAudioTrackConfig

最近更新时间: 2022-03-28 23:23:21

麦克风音频采集 Track 的配置

Index

Properties

  * audio_quality
  * tag

Properties

audio_quality

  * audio_quality: [QNAudioQuality](https://developer.qiniu.com/rtc/11211/QNMicrophoneAudioTrackConfig-Linux/11190/QNAudioQuality-Linux)
  * 设置音频质量

tag

  * tag: string
  * 自定义标签

以上内容是否对您有帮助？