Class ZegoMediaSideInfo
- java.lang.Object
-
- com.zego.zegoavkit2.mediaside.ZegoMediaSideInfo
-
public class ZegoMediaSideInfo extends java.lang.Object
媒体次要信息 Copyright © 2017 Zego. All rights reserved.
-
-
Constructor Summary
Constructors Constructor Description ZegoMediaSideInfo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
sendMediaSideInfo(java.nio.ByteBuffer inData, int dataLen, boolean packet, int channelIndex)
发送媒体次要信息void
setMediaSideFlags(boolean start, boolean onlyAudioPublish, int channelIndex)
发送媒体次要信息开关,不支持发送 SEI 的设置。void
setMediaSideFlags(boolean start, boolean onlyAudioPublish, int mediaInfoType, int seiSendType, int channelIndex)
发送媒体次要信息开关,支持发送 SEI 的设置。void
setZegoMediaSideCallback(IZegoMediaSideCallback callback)
设置媒体次要信息的回调监听,以接收媒体次要信息。
-
-
-
Method Detail
-
setMediaSideFlags
public void setMediaSideFlags(boolean start, boolean onlyAudioPublish, int channelIndex)
发送媒体次要信息开关,不支持发送 SEI 的设置。注意:1. 必须在调用 initSDK 接口之后、推流接口之前设置。
2. 如果只有音频直播,必须将 onlyAudioPublish 置为 true,此时将会由音频来驱动次要信息的传输,同时忽略视频流传输。- Parameters:
start
- 开启/关闭媒体次要信息传输,true 表示开启媒体次要信息传输,false 表示关闭媒体次要信息传输。start 为 true 时,onlyAudioPublish 参数开关才有效。onlyAudioPublish
- 是否为纯音频直播,true 表示纯音频直播,不传输视频数据;false 表示音视频直播,传输音频和视频数据;默认为 false。channelIndex
- 推流通道 index,请参考ZegoConstants.PublishChannelIndex
-
setMediaSideFlags
public void setMediaSideFlags(boolean start, boolean onlyAudioPublish, int mediaInfoType, int seiSendType, int channelIndex)
发送媒体次要信息开关,支持发送 SEI 的设置。注意:1. 必须在调用 initSDK 接口之后、推流接口之前设置。
2. 如果只有音频直播,必须将 onlyAudioPublish 置为 true,此时将会由音频来驱动次要信息的传输,同时忽略视频流传输。- Parameters:
start
- 开启/关闭媒体次要信息传输,true 表示开启媒体次要信息传输,false 表示关闭媒体次要信息传输。start 为 true 时,onlyAudioPublish 参数开关才有效。onlyAudioPublish
- 是否为纯音频直播,true 表示纯音频直播,不传输视频数据;false 表示音视频直播,传输音频和视频数据;默认为 false。mediaInfoType
- 媒体次要信息类型,请参考ZegoConstants.MediaInfoType
定义,建议使用 ZegoConstants.MediaInfoType.SeiZegoDefined 类型。seiSendType
- SEI 发送类型,请参考ZegoConstants.SeiSendType
定义,此参数只对发送 SEI 时有效,当 mediaInfoType 参数为 ZegoConstants.MediaInfoType.SideInfoZegoDefined 时此参数无效,当发送 SEI 时建议使用 ZegoConstants.SeiSendType.SeiSendInVideoFrame 类型。channelIndex
- 推流通道 index,请参考ZegoConstants.PublishChannelIndex
-
sendMediaSideInfo
public void sendMediaSideInfo(java.nio.ByteBuffer inData, int dataLen, boolean packet, int channelIndex)
发送媒体次要信息注意:1. 必须在推流成功之后调用。
2.setMediaSideFlags(boolean, boolean, int, int, int)
orsetMediaSideFlags(boolean, boolean, int)
接口设置为音视频直播时,关闭摄像头将导致无法发送媒体次要信息。
3. 不需要发送媒体次要信息时,可调用 setMediaSideFlags 来关闭媒体次要信息传输,第一个参数填 false 就代表关闭,关闭后即使调用 sendMediaSideInfo 也不能再发送媒体次要信息。
4. sendMediaSideInfo 的调用频率不能超过帧率,假设推流采用默认帧率15 fps,即调用频率不能超过 1000/15=66.7 ms/次。- Parameters:
inData
- 需要传输的音视频次要信息数据,外部输入,必须使用ByteBuffer.allocateDirect(int)
创建,否则数据无法传递给 SDK,观众端收不到媒体次要信息回调。dataLen
- 传入的 inData 总长度,不能大于 4096 Bytes。packet
- 是否采用外部打包好的包头,填写 false。channelIndex
- 推流通道 index,请参考ZegoConstants.PublishChannelIndex
- See Also:
setMediaSideFlags(boolean, boolean, int)
-
setZegoMediaSideCallback
public void setZegoMediaSideCallback(IZegoMediaSideCallback callback)
设置媒体次要信息的回调监听,以接收媒体次要信息。注意:1. 在调用 initSDK 接口之后、拉流接口之前设置。
2. 观众端若想在此 API 设置的回调中获取主播端发送的媒体次要信息,需要主播端已开启发送媒体次要信息开关,并调用sendMediaSideInfo(ByteBuffer,int,boolean,int)
发送媒体次要信息。
3. 主播端采用音视频直播驱动媒体次要信息传输时,拉流时使用 ZegoLiveRoom activateVideoPlayStream(String,boolean) 接口设置了只拉音频时,将无法接收到媒体次要信息。
4. 当不需要接收数据时,调用 setZegoMediaSideCallback(null) 去除回调监听,避免内存泄漏。- Parameters:
callback
- 实现了IZegoMediaSideCallback
接口的对象实例,用于拉流时接收媒体次要信息。
-
-