视频流管理器  
 更多...
#include <PanoRtcStream.h>
 | 
| virtual QResult  | setCallback (Callback *cb)=0 | 
|   | 设置视频流管理器的回调。  更多...
  | 
|   | 
| virtual QResult  | createVideoStream (const char deviceId[kMaxDeviceIDLength], int &streamId)=0 | 
|   | 创建一个新的视频流。  更多...
  | 
|   | 
| virtual QResult  | destroyVideoStream (int streamId)=0 | 
|   | 销毁一个视频流。  更多...
  | 
|   | 
| virtual QResult  | setCaptureDevice (int streamId, const char deviceId[kMaxDeviceIDLength])=0 | 
|   | 设置或更新视频流的采集设备。  更多...
  | 
|   | 
| virtual QResult  | getCaptureDevice (int streamId, char deviceId[kMaxDeviceIDLength])=0 | 
|   | 获取当前使用的视频采集设备  更多...
  | 
|   | 
| virtual QResult  | startVideo (int streamId, void *window, const VideoConfig &config)=0 | 
|   | 开启视频流,并且设置渲染窗口  更多...
  | 
|   | 
| virtual QResult  | startVideo (int streamId, RtcRenderSink *sink, VideoProfileType profileType)=0 | 
|   | 开启视频流,并且设置数据接收槽  更多...
  | 
|   | 
| virtual QResult  | startVideo (int streamId, RtcRenderSink *sink, const VideoSourceConfig &config)=0 | 
|   | 开启视频流,并且设置数据接收槽  更多...
  | 
|   | 
| virtual QResult  | stopVideo (int streamId)=0 | 
|   | 关闭视频流  更多...
  | 
|   | 
| virtual QResult  | muteVideo (int streamId)=0 | 
|   | 暂停视频流。  更多...
  | 
|   | 
| virtual QResult  | unmuteVideo (int streamId)=0 | 
|   | 恢复视频。  更多...
  | 
|   | 
| virtual QResult  | setVideoFilter (int streamId, RtcExternalVideoFilter *filter, bool autoRelease=false)=0 | 
|   | 设置视频流过滤器。  更多...
  | 
|   | 
| virtual QResult  | subscribeVideo (uint64_t userId, int streamId, void *window, const VideoConfig &config)=0 | 
|   | 订阅用户的视频流, 并设置渲染窗口。  更多...
  | 
|   | 
| virtual QResult  | subscribeVideo (uint64_t userId, int streamId, RtcRenderSink *sink, VideoProfileType profileType)=0 | 
|   | 订阅用户的视频流, 并设置视频数据接收槽。  更多...
  | 
|   | 
| virtual QResult  | unsubscribeVideo (uint64_t userId, int streamId)=0 | 
|   | 取消订阅用户的视频。  更多...
  | 
|   | 
| virtual QResult  | snapshotVideo (uint64_t userId, int streamId, const char *outputDir, SnapshotVideoOption option)=0 | 
|   | 捕获指定用户的视频流画面  更多...
  | 
|   | 
视频流管理器 
- 注解
 - 如果应用各端都不会同时发送多路视频流,则无需使用视频流管理器。 
 
 
◆ createVideoStream()
  
  
      
        
          | virtual QResult VideoStreamManager::createVideoStream  | 
          ( | 
          const char  | 
          deviceId[kMaxDeviceIDLength],  | 
         
        
           | 
           | 
          int &  | 
          streamId  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
pure virtual   | 
  
 
创建一个新的视频流。 
- 参数
 - 
  
    | deviceId | 设备 ID, 此设备会设置给新视频流。  | 
    | streamId | 视频流 ID,创建成功后此参数返回新视频流 ID。  | 
  
   
- 返回
 - 
 
 
 
◆ destroyVideoStream()
  
  
      
        
          | virtual QResult VideoStreamManager::destroyVideoStream  | 
          ( | 
          int  | 
          streamId | ) | 
           | 
         
       
   | 
  
pure virtual   | 
  
 
 
◆ getCaptureDevice()
  
  
      
        
          | virtual QResult VideoStreamManager::getCaptureDevice  | 
          ( | 
          int  | 
          streamId,  | 
         
        
           | 
           | 
          char  | 
          deviceId[kMaxDeviceIDLength]  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
pure virtual   | 
  
 
获取当前使用的视频采集设备 
- 参数
 - 
  
    | streamId | 视频流 ID。  | 
    | deviceId | 视频设备ID  | 
  
   
- 返回
 - 返回QResult来指示调用状态 
 
 
 
◆ muteVideo()
  
  
      
        
          | virtual QResult VideoStreamManager::muteVideo  | 
          ( | 
          int  | 
          streamId | ) | 
           | 
         
       
   | 
  
pure virtual   | 
  
 
暂停视频流。 
- 参数
 - 
  
  
 
- 返回
 - 
 
- 注解
 - 暂停视频流前请先开启视频流,否则操作将无效。 
 
 
 
◆ setCallback()
◆ setCaptureDevice()
  
  
      
        
          | virtual QResult VideoStreamManager::setCaptureDevice  | 
          ( | 
          int  | 
          streamId,  | 
         
        
           | 
           | 
          const char  | 
          deviceId[kMaxDeviceIDLength]  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
pure virtual   | 
  
 
设置或更新视频流的采集设备。 
- 参数
 - 
  
    | streamId | 视频流 ID。  | 
    | deviceId | 采集设备 ID。  | 
  
   
- 返回
 - 
 
 
 
◆ setVideoFilter()
设置视频流过滤器。 
- 参数
 - 
  
    | streamId | 视频流 ID  | 
    | filter | 过滤器对象指针  | 
    | autoRelease | 让SDK接管对象生命周期的维护。注意对象可能在任何时候被SDK释放,因此用户不应该在设置之后后再次调用过滤器对象。  | 
  
   
- 返回
 - 
 
 
 
◆ snapshotVideo()
  
  
      
        
          | virtual QResult VideoStreamManager::snapshotVideo  | 
          ( | 
          uint64_t  | 
          userId,  | 
         
        
           | 
           | 
          int  | 
          streamId,  | 
         
        
           | 
           | 
          const char *  | 
          outputDir,  | 
         
        
           | 
           | 
          SnapshotVideoOption  | 
          option  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
pure virtual   | 
  
 
捕获指定用户的视频流画面 
- 参数
 - 
  
    | userId | 目标用户的 ID  | 
    | streamId | 视频流 ID  | 
    | outputDir | 输出路径  | 
    | option | 快照选项  | 
  
   
- 返回
 - 
 
 
 
◆ startVideo() [1/3]
开启视频流,并且设置数据接收槽 
- 参数
 - 
  
    | streamId | 视频流 ID  | 
    | 视频数据接收槽 |  | 
    | config | 视频源配置  | 
  
   
- 返回
 - 
 
 
 
◆ startVideo() [2/3]
开启视频流,并且设置数据接收槽 
- 参数
 - 
  
    | streamId | 视频流 ID  | 
    | 视频数据接收槽 |  | 
    | profileType | 视频能力  | 
  
   
- 返回
 - 
 
 
 
◆ startVideo() [3/3]
  
  
      
        
          | virtual QResult VideoStreamManager::startVideo  | 
          ( | 
          int  | 
          streamId,  | 
         
        
           | 
           | 
          void *  | 
          window,  | 
         
        
           | 
           | 
          const VideoConfig &  | 
          config  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
pure virtual   | 
  
 
开启视频流,并且设置渲染窗口 
- 参数
 - 
  
    | streamId | 视频流 ID  | 
    | window | 平台相关的窗口句柄, 在windows平台, 该参数必须是HWND  | 
    | config | 视频配置参数  | 
  
   
- 返回
 - 
 
- 注解
 - 在 macOS iOS and Android 平台下必须从主线程调用。 
 
 
 
◆ stopVideo()
  
  
      
        
          | virtual QResult VideoStreamManager::stopVideo  | 
          ( | 
          int  | 
          streamId | ) | 
           | 
         
       
   | 
  
pure virtual   | 
  
 
 
◆ subscribeVideo() [1/2]
订阅用户的视频流, 并设置视频数据接收槽。 
- 参数
 - 
  
    | userId | 客户定义的用户标识。  | 
    | streamId | 视频流 ID。  | 
    | sink。 | 视频数据接收槽。  | 
    | profileType | 视频能力。  | 
  
   
- 返回
 - 
 
- 注解
 - 订阅用户的视频流前,请确保用户已开启视频流。 
 
 
 
◆ subscribeVideo() [2/2]
  
  
      
        
          | virtual QResult VideoStreamManager::subscribeVideo  | 
          ( | 
          uint64_t  | 
          userId,  | 
         
        
           | 
           | 
          int  | 
          streamId,  | 
         
        
           | 
           | 
          void *  | 
          window,  | 
         
        
           | 
           | 
          const VideoConfig &  | 
          config  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
pure virtual   | 
  
 
订阅用户的视频流, 并设置渲染窗口。 
- 参数
 - 
  
    | userId | 客户定义的用户标识。  | 
    | streamId | 视频流 ID。  | 
    | window | 平台相关的窗口对象, 在windows平台, 该参数必须是HWND对象。  | 
    | config | 视频参数。  | 
  
   
- 返回
 - 
 
- 注解
 - 订阅用户的视频流前,请确保用户已开启视频流。 在 macOS iOS and Android 平台下必须从主线程调用。 
 
 
 
◆ unmuteVideo()
  
  
      
        
          | virtual QResult VideoStreamManager::unmuteVideo  | 
          ( | 
          int  | 
          streamId | ) | 
           | 
         
       
   | 
  
pure virtual   | 
  
 
恢复视频。 
- 参数
 - 
  
  
 
- 返回
 - 
 
- 注解
 - 恢复视频流前请先开启视频流,否则操作将无效。 
 
 
 
◆ unsubscribeVideo()
  
  
      
        
          | virtual QResult VideoStreamManager::unsubscribeVideo  | 
          ( | 
          uint64_t  | 
          userId,  | 
         
        
           | 
           | 
          int  | 
          streamId  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
pure virtual   | 
  
 
取消订阅用户的视频。 
- 参数
 - 
  
    | userId | 客户定义的用户标识。  | 
    | streamId | 视频流 ID。  | 
  
   
- 返回
 - 
 
- 注解
 - 当用户停止视频流或者离开频道的时候,用户的视频流将会被自动取消订阅。 
 
 
 
该类的文档由以下文件生成: