继承自 agora_gaming_rtc.IMetadataObserver .

Public 成员函数

delegate void OnMediaMetaDataReceivedHandler (Metadata metadata)
 
delegate bool OnReadyToSendMetadataHandler (ref Metadata metadata)
 
delegate int OnGetMaxMetadataSizeHandler ()
 
override int RegisterMediaMetadataObserver (METADATA_TYPE metaDataType)
 
override int UnRegisterMediaMetadataObserver ()
 

详细描述

MetadataObserver 类的定义。

成员函数说明

◆ OnMediaMetaDataReceivedHandler()

delegate void agora_gaming_rtc.MetadataObserver.OnMediaMetaDataReceivedHandler ( Metadata  metadata)

接收端已收到 Metadata。当接收到远端用户发送的 Metadata 时,SDK 会触发该回调。

参数
metadata接收到的 Metadata

◆ OnReadyToSendMetadataHandler()

delegate bool agora_gaming_rtc.MetadataObserver.OnReadyToSendMetadataHandler ( ref Metadata  metadata)

发送端已准备好发送 Metadata 。当 SDK 准备好接收和发送 Metadata 时,会触发该回调方法。

注解
请确保在该方法中传入的 Metadata 大小不超过 OnGetMaxMetadataSizeHandler 中设定的值。
参数
metadata用户想要发送的 Metadata
返回
  • true: 发送。
  • false: 不发送。

◆ OnGetMaxMetadataSizeHandler()

delegate int agora_gaming_rtc.MetadataObserver.OnGetMaxMetadataSizeHandler ( )

请求最大的 Metadata 大小。

Metadata 结构体由如下字段组成:

  • uid: 发送 Metadata 数据的用户 ID。
  • size: 发送或收到的 Metadata 的数据大小。
  • buffer: 发送或收到的 Metadata 数据。
  • timeStampMs: 该 Metadata 的时间戳。

请求最大的 Metadata 大小。在成功调用 RegisterMediaMetadataObserver 完成注册后,SDK 会触发该回调;你需要在该方法的返回值中指定 Metadata 的最大数据大小。

返回
指定 Metadatabuffer 的最大数据大小,单位为 Byte,最大值不超过 1024。请确保在该返回值中进行传参,否则 OnGetMaxMetadataSizeHandler 返回 1024,即默认的最大的 Metadata 大小。

◆ RegisterMediaMetadataObserver()

override int agora_gaming_rtc.MetadataObserver.RegisterMediaMetadataObserver ( METADATA_TYPE  metaDataType)

注册媒体 metadata 观测器用于接收或发送 metadata。

注解
  • 请在 JoinChannelByKey 前调用该方法。
  • 该方法仅使用于直播场景。
参数
metaDataType用户希望在观测器中使用的 METADATA 类型 。目前仅支持 VIDEO_METADATA 。详见:METADATA_TYPE
返回
  • 0: 方法调用成功;
  • < 0: 方法调用失败。

◆ UnRegisterMediaMetadataObserver()

override int agora_gaming_rtc.MetadataObserver.UnRegisterMediaMetadataObserver ( )

注销媒体 metadata 观测器。

返回
  • 0: 方法调用成功;
  • < 0: 方法调用失败。