addVideoWatermark method
- String watermarkUrl,
- WatermarkOptions options
添加本地视频水印。
该方法将一张 PNG 图片作为水印添加到本地发布的直播视频流上,同一直播频道中的观众、旁路直播观众和录制设备都能看到或采集到该水印图片。 Agora 当前只支持在直播视频流中添加一个水印,后添加的水印会替换掉之前添加的水印。
水印坐标和 RtcEngine.setVideoEncoderConfiguration 方法中的设置有依赖关系:
- 如果视频编码方向/ORIENTATION_MODE 固定为横屏或自适应模式下的横屏,那么水印使用横屏坐标。
- 如果视频编码方向/ORIENTATION_MODE 固定为竖屏或自适应模式下的竖屏,那么水印使用竖屏坐标。
- 设置水印坐标时,水印的图像区域不能超出 RtcEngine.setVideoEncoderConfiguration 方法中设置的视频尺寸,否则超出部分将被裁剪。
Note
- 你需要在调用 RtcEngine.enableVideo 方法之后再调用本方法。
- 如果你只是在旁路直播(推流到CDN)中添加水印,你可以使用本方法或 RtcEngine.setLiveTranscoding 方法设置水印。
- 待添加图片必须是 PNG 格式。本方法支持所有像素格式的 PNG 图片:RGBA、RGB、Palette、Gray 和 Alpha_gray。
- 如果待添加的 PNG 图片的尺寸与你在本方法中设置的尺寸不一致,SDK 会对 PNG 图片进行缩放或裁剪,以与设置相符。
- 如果你已经使用 RtcEngine.startPreview 方法开启本地视频预览,那么本方法的
visibleInPreview
可设置水印在预览时是否可见。 - 如果你已设置本地视频为镜像模式,那么此处的本地水印也为镜像。为避免本地用户看本地视频时的水印也被镜像, Agora 建议你不要对本地视频同时使用镜像和水印功能,请在应用层实现本地水印功能。
Parameter watermarkUrl
待添加的水印图片的本地路径。本方法支持从本地路径和 assets 路径添加水印图片。如果使用 assets 路径,需要以 /assets/
开头。
Parameter options
待添加的水印图片的设置选项。详见 WatermarkOptions。
Implementation
@override
Future<void> addVideoWatermark(
String watermarkUrl, WatermarkOptions options) {
return _invokeMethod('addVideoWatermark',
{'watermarkUrl': watermarkUrl, 'options': options.toJson()});
}