public interface com.ss.avframework.live.VeLiveCameraDevice
相机设备管理对象。
| 返回 | 名称 |
|---|---|
| int[] | getRealFpsRange |
| int | enableTorch |
| int | setZoomRatio |
| float | getCurrentZoomRatio |
| float | getMaxZoomRatio |
| float | getMinZoomRatio |
| boolean | isAutoFocusEnabled |
| int | enableAutoFocus |
| int | setFocusPosition |
| boolean | isExposurePositionSupported |
| int | setExposurePosition |
| float | getMinExposureCompensation |
| float | getMaxExposureCompensation |
| int | setExposureCompensation |
int[] com.ss.avframework.live.VeLiveCameraDevice.getRealFpsRange()
获取相机支持帧率范围。
返回值
相机支持帧率范围。
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
int com.ss.avframework.live.VeLiveCameraDevice.enableTorch(boolean enable)
开启/关闭闪光灯。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| enable | boolean | 是否开启闪光灯。默认为 false。
|
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
int com.ss.avframework.live.VeLiveCameraDevice.setZoomRatio(float ratio)
设置摄像头的缩放倍数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| ratio | float | 缩放倍数。默认为原尺寸。缩放倍数的取值范围为 [getMinZoomRatio,getMaxZoomRatio]。 |
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
float com.ss.avframework.live.VeLiveCameraDevice.getCurrentZoomRatio()
获取摄像头当前的缩放倍数。
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
float com.ss.avframework.live.VeLiveCameraDevice.getMaxZoomRatio()
获取摄像头的最大缩放倍数。
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
float com.ss.avframework.live.VeLiveCameraDevice.getMinZoomRatio()
获取摄像头的最小缩放倍数。
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
boolean com.ss.avframework.live.VeLiveCameraDevice.isAutoFocusEnabled()
是否支持自动对焦。
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
int com.ss.avframework.live.VeLiveCameraDevice.enableAutoFocus(boolean enable)
开启/关闭自动对焦功能。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| enable | boolean | 是否开启自动对焦,默认为 true。
|
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
int com.ss.avframework.live.VeLiveCameraDevice.setFocusPosition( int viewW, int viewH, int x, int y )
设置摄像头的对焦位置。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| viewW | int | 当前视图宽度。 |
| viewH | int | 当前视图高度。 |
| x | int | 以左上角为原点,对焦点距当前视图的横向坐标值。 |
| y | int | 以左上角为原点,对焦点距当前视图的纵向坐标值。 |
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
boolean com.ss.avframework.live.VeLiveCameraDevice.isExposurePositionSupported()
检查当前使用的摄像头是否支持手动设置曝光点。
返回值
注意
必须已调用 startVideoCapture 使用 SDK 内部采集模块进行视频采集时,才能检查曝光点设置能力。
int com.ss.avframework.live.VeLiveCameraDevice.setExposurePosition( int viewW, int viewH, int x, int y )
设置当前使用的摄像头的曝光点。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| viewW | int | 当前视图宽度。 |
| viewH | int | 当前视图高度。 |
| x | int | 以左上角为原点,对焦点距当前视图的横向坐标值。 |
| y | int | 以左上角为原点,对焦点距当前视图的纵向坐标值。 |
返回值
注意
float com.ss.avframework.live.VeLiveCameraDevice.getMinExposureCompensation()
获取摄像头的最小曝光补偿值。
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
float com.ss.avframework.live.VeLiveCameraDevice.getMaxExposureCompensation()
获取摄像头的最大曝光补偿值。
返回值
注意
需要在调用 startVideoCapture 启动相机采集后,调用本方法。
int com.ss.avframework.live.VeLiveCameraDevice.setExposureCompensation(float value)
设置当前使用的摄像头的曝光补偿。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| value | float | 曝光补偿值,取值范围 [getMinExposureCompensation,getMaxExposureCompensation],0 为系统默认值,表示没有曝光补偿。 |
返回值
注意
public interface com.ss.avframework.live.VeLiveVideoEffectManager
视频特效管理对象。用于管理和设置视频特效,包括美颜、美形、美体、美妆、滤镜等。
int com.ss.avframework.live.VeLiveVideoEffectManager.setupWithConfig(VeLiveVideoEffectLicenseConfiguration config)
视频特效许可证配置,用于初始化视频特效管理对象。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| config | VeLiveVideoEffectLicenseConfiguration | 特效初始化配置,详情请参见 VeLiveVideoEffectLicenseConfiguration。 |
返回值
void com.ss.avframework.live.VeLiveVideoEffectManager.updateLicense(VeLiveVideoEffectCallback callback)
如果您使用在线 License 认证方式,在许可证过期后,可调用该方法更新 License;
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| callback | VeLiveVideoEffectCallback | 结果回调信息 |
注意
void com.ss.avframework.live.VeLiveVideoEffectManager.setEnable( boolean enable, VeLiveVideoEffectCallback callback )
创建/销毁特效引擎。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| enable | boolean | 是否创建特效引擎。默认为 false。
|
| callback | VeLiveVideoEffectCallback | 视频特效回调 VeLiveVideoEffectCallback。 |
返回值
注意
int com.ss.avframework.live.VeLiveVideoEffectManager.setAlgorithmModelPath(String path)
设置特效算法模型包的路径。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| path | String | 特效算法模型包的路径 |
返回值
注意
需要通过调用 setupWithConfig 设置视频特效许可证后调用。
int com.ss.avframework.live.VeLiveVideoEffectManager.setComposeNodes(String[] nodes)
设置视频特效组合。支持设置 ComposeMakeup.bundle 中的功能,包括美颜、美形、美体、美妆等。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| nodes | String[] | 视频特效素材包路径数组 |
返回值
注意
int com.ss.avframework.live.VeLiveVideoEffectManager.appendComposeNodes(String[] nodes)
在已有的视频特效组合上,叠加视频特效素材包,您可以调用 setComposeNodes 设置视频特效组合。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| nodes | String[] | 视频特效素材包路径数组 |
返回值
注意
需要在调用 setEnable 创建特效引擎后,调用本方法。
int com.ss.avframework.live.VeLiveVideoEffectManager.removeComposeNodes(String[] nodes)
调用本方法,可移除调用 setComposeNodes 和 appendComposeNodes 设置的视频特效资源。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| nodes | String[] | 视频特效素材包路径数组 |
返回值
注意
需要在调用 setEnable 创建特效引擎后,调用本方法。
int com.ss.avframework.live.VeLiveVideoEffectManager.updateComposerNodeIntensity( String node, String key, float intensity )
设置视频特效强度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| node | String | 视频特效素材包路径 |
| key | String | 需要设置的素材 key 名称 |
| intensity | float | 需要设置的强度值。取值范围为 [0.0,1.0] |
返回值
注意
int com.ss.avframework.live.VeLiveVideoEffectManager.setFilter(String path)
设置颜色滤镜。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| path | String | 滤镜资源包绝对路径 |
返回值
注意
请在调用 setEnable 开启视频特效后,调用该方法。
int com.ss.avframework.live.VeLiveVideoEffectManager.updateFilterIntensity(float intensity)
设置已启用的颜色滤镜强度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| intensity | float | 滤镜强度,取值范围为 [0.0,1.0]。 |
返回值
注意
请在调用 setFilter 设置颜色滤镜后调用。
int com.ss.avframework.live.VeLiveVideoEffectManager.setSticker(String path)
设置贴纸特效。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| path | String | 贴纸素材包的绝对路径 |
返回值
注意
请在调用 setEnable 开启视频特效后,调用该方法。
int com.ss.avframework.live.VeLiveVideoEffectManager.setAdvancedFeature( VeLiveVideoEffectHandleCallback callback, boolean isGLThread, boolean isAsync )
智能美化特效的高级功能。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| callback | VeLiveVideoEffectHandleCallback | 将 handle 作为参数的回调函数。 |
| isGLThread | boolean | 是否在 GL 线程回调 callback。 |
| isAsync | boolean | 是否同步执行 callback。 |
注意
请在调用 setEnable 开启视频特效后,调用该方法,不要在主线程中频繁执行同步操作。
public interface com.ss.avframework.live.VeLivePusher
直播推流器。
| 返回 | 名称 |
|---|---|
| static void | setLogLevel |
| static void | setEGLVersion |
| static void | setEGLContext |
| static EGLContext | getEGLContext |
static void com.ss.avframework.live.VeLivePusher.setLogLevel(VeLivePusherLogLevel logLevel)
设置输出到控制台的日志等级。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| logLevel | VeLivePusherLogLevel | 输出的日志级别。级别详情请参见 VeLivePusherLogLevel。 |
static void com.ss.avframework.live.VeLivePusher.setEGLVersion(int version)
设置 OpenGL 的版本号,默认值为 2。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| version | int | OpenGL 版本号,支持的取值包括 2 和 3,分别对应 OpenGL 2.0 和 3.0 版本。 |
static void com.ss.avframework.live.VeLivePusher.setEGLContext(EGLContext context)
设置 OpenGL 的上下文。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| context | EGLContext | OpenGL 上下文。 |
static EGLContext com.ss.avframework.live.VeLivePusher.getEGLContext()
获取 OpenGL 的上下文。
返回值
当前 OpenGL 的上下文。
void com.ss.avframework.live.VeLivePusher.release()
停止采集和推流,并销毁推流器。通常在调用 stopPush 结束推流后调用此方法进行清理。
void com.ss.avframework.live.VeLivePusher.setObserver(VeLivePusherObserver observer)
设置推流器回调,通过设置回调,监听推流器的推流错误、状态、网络质量、设备、首帧等回调事件。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| observer | VeLivePusherObserver | 推流器回调对象,详细信息请参见 VeLivePusherObserver。 |
注意
void com.ss.avframework.live.VeLivePusher.setStatisticsObserver( VeLivePusherStatisticsObserver observer, int interval )
设置推流器周期性回调,用于定期获取推流状态信息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| observer | VeLivePusherStatisticsObserver | 推流器周期性回调对象,详细信息请参见 VeLivePusherStatisticsObserver。 |
| interval | int | 周期性回调的时间间隔,单位为 s,默认值为 5。 |
注意
void com.ss.avframework.live.VeLivePusher.setRenderView(View view)
设置本地摄像头预览视图。摄像头采集到的画面,经过美颜、脸形调整、滤镜等多种效果叠加之后,最终会显示到传入的 View 上。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| view | View | 摄像头预览视图 |
void com.ss.avframework.live.VeLivePusher.setRenderFillMode(VeLivePusherRenderMode mode)
设置本地预览画面的填充模式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| mode | VeLivePusherRenderMode | 填充模式。 |
void com.ss.avframework.live.VeLivePusher.setVideoMirror( VeLiveVideoMirrorType type, boolean mirror )
开启/关闭镜像。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveVideoMirrorType | 镜像类型,详细信息请参见 VeLiveVideoMirrorType。 |
| mirror | boolean | 是否开启镜像。
|
注意
用于配置视频镜像效果,影响采集、预览和推流画面。
boolean com.ss.avframework.live.VeLivePusher.isMirror( VeLiveVideoMirrorType mirrorType, VeLiveVideoCaptureType captureType )
获取指定镜像类型和采集类型下的视频镜像状态。适用于主播需要了解当前镜像状态的场景,例如直播前确认预览画面是否符合预期。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| mirrorType | VeLiveVideoMirrorType | 镜像类型。详细信息请参见 VeLiveVideoMirrorType。 |
| captureType | VeLiveVideoCaptureType | 视频采集类型。详细信息请参见 VeLiveVideoCaptureType。 |
返回值
视频镜像状态。
true:已开启镜像。false:未开启镜像。void com.ss.avframework.live.VeLivePusher.startVideoCapture(VeLiveVideoCaptureType type)
开始视频采集。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveVideoCaptureType | 视频采集类型,详细信息请参见 VeLiveVideoCaptureType |
注意
调用该接口后,可以通过调用接口 stopVideoCapture 停止视频采集。
void com.ss.avframework.live.VeLivePusher.stopVideoCapture()
停止视频采集。
注意
调用该接口后,可以通过调用接口 startVideoCapture 开始视频采集。
void com.ss.avframework.live.VeLivePusher.startAudioCapture(VeLiveAudioCaptureType type)
开始音频采集。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveAudioCaptureType | 音频采集类型,详细信息请参见 VeLiveAudioCaptureType。 |
注意
调用该接口后,可以通过调用接口 stopAudioCapture 停止音频采集。
void com.ss.avframework.live.VeLivePusher.stopAudioCapture()
停止音频采集。
注意
调用该接口后,可以通过调用接口 startAudioCapture 开始音频采集。
void com.ss.avframework.live.VeLivePusher.switchVideoCapture(VeLiveVideoCaptureType type)
切换视频采集类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveVideoCaptureType | 视频采集类型,详细信息请参见 VeLiveVideoCaptureType。 |
注意
该接口必须在调用接口 startVideoCapture 后调用才能生效。
void com.ss.avframework.live.VeLivePusher.switchAudioCapture(VeLiveAudioCaptureType type)
切换音频采集类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveAudioCaptureType | 音频采集类型,详细信息请参见 VeLiveAudioCaptureType。 |
注意
该接口必须在调用接口 startVideoCapture 后调用才能生效。
VeLiveVideoCaptureType com.ss.avframework.live.VeLivePusher.getCurrentVideoCaptureType()
获取当前视频采集类型。
返回值
视频采集类型,详细信息请参见 VeLiveVideoCaptureType。
VeLiveAudioCaptureType com.ss.avframework.live.VeLivePusher.getCurrentAudioCaptureType()
获取当前音频采集类型。
返回值
音频采集类型,详细信息请参见 VeLiveAudioCaptureType。
void com.ss.avframework.live.VeLivePusher.updateCustomImage(Bitmap image)
自定义静态图,适用于静态图推流采集类型。使用该接口时,需要将视频采集类型设置为 VeLiveVideoCaptureCustomImage,您可调用 startVideoCapture 方法,将 VeLiveVideoCaptureType 设置为 VeLiveVideoCaptureCustomImage。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| image | Bitmap | 静态图片,用于在静态图推流采集类型下设置静态图。 |
VeLiveCameraDevice com.ss.avframework.live.VeLivePusher.getCameraDevice()
获取相机设备管理对象 VeLiveCameraDevice。通过设备管理,您可以使用以下功能。
返回值
相机设备管理对象 VeLiveCameraDevice。
注意
该接口需要在 startVideoCapture 方法中设置 VeLiveVideoCaptureType 为 VeLiveVideoCaptureFrontCamera 或 VeLiveVideoCaptureBackCamera。
void com.ss.avframework.live.VeLivePusher.setVideoEncoderConfiguration(VeLiveVideoEncoderConfiguration config)
设置推流视频编码参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| config | VeLiveVideoEncoderConfiguration | 推流视频参数,支持设置推流视频分辨率、编码格式、目标码率和视频 GOP 大小等信息。详情请参见 VeLiveVideoEncoderConfiguration。 |
注意
该接口可在推流开始前或开始后调用。
VeLiveVideoEncoderConfiguration com.ss.avframework.live.VeLivePusher.getVideoEncoderConfiguration()
获取推流视频编码参数。
返回值
推流视频参数,支持设置推流视频分辨率、编码格式、目标码率和视频 GOP 大小等信息。详情请参见 VeLiveVideoEncoderConfiguration。
void com.ss.avframework.live.VeLivePusher.setAudioEncoderConfiguration(VeLiveAudioEncoderConfiguration config)
设置推流音频编码参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| config | VeLiveAudioEncoderConfiguration | 推流音频编码参数,详情请参见 VeLiveAudioEncoderConfiguration。 |
注意
该接口需要在 startPush 或 startPushWithUrls 方法之前调用。
VeLiveAudioEncoderConfiguration com.ss.avframework.live.VeLivePusher.getAudioEncoderConfiguration()
获取推流音频编码参数。
返回值
推流音频编码参数,详情请参见 VeLiveAudioEncoderConfiguration。
void com.ss.avframework.live.VeLivePusher.startPush(String url)
开始推流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| url | String | 推流地址,用于将直播流推送到目标服务器。 |
void com.ss.avframework.live.VeLivePusher.startPushWithUrls(String[] urls)
开始推流,支持备用推流地址。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| urls | String[] | 推流地址列表,包含一个或多个推流地址。 |
注意
当主推流地址不可用时,会自动切换到备用推流地址继续推流。
void com.ss.avframework.live.VeLivePusher.stopPush()
停止推流。
注意
停止推流后,可以通过调用 startPush 或 startPushWithUrls 方法重新开始推流。
boolean com.ss.avframework.live.VeLivePusher.isPushing()
当前是否正在推流中,可用来查询推流器的当前状态。
返回值
是否正在推流。
int com.ss.avframework.live.VeLivePusher.setWatermark( Bitmap image, float x, float y, float scale )
设置推流水印。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| image | Bitmap | 水印图片。取值为 null 时,表示禁用水印。 |
| x | float | 水印的水平偏移量,即水印图片相对视频流左上角的横向偏移与视频流宽度的比值,取值范围为 [0.0,1.0]。 |
| y | float | 水印的垂直偏移量,即水印图片相对视频流左上角的纵向偏移与视频流高度的比值,取值范围为 [0.0,1.0]。 |
| scale | float | 水印图片的缩放比例,取值范围为 [0.0,1.0]。 |
返回值
void com.ss.avframework.live.VeLivePusher.startFileRecording( String path, VeLiveFileRecorderConfiguration config, VeLiveFileRecordingListener listener )
开始本地文件录制。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| path | String | 录制文件保存路径,不能为空。 |
| config | VeLiveFileRecorderConfiguration | 文件录制设置,详情请参见 VeLiveFileRecorderConfiguration。 |
| listener | VeLiveFileRecordingListener | 本地文件录制的监听,详情请参见 VeLiveFileRecordingListener。 |
void com.ss.avframework.live.VeLivePusher.stopFileRecording()
停止本地文件录制。
注意
该接口需要在 startFileRecording 方法之后调用。
int com.ss.avframework.live.VeLivePusher.setProperty( String key, Object value )
高级配置。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| key | String | 推流高级配置为 JSON 格式的字符串,此参数为 JSON 结构中的 Key。您可通过提交工单联系技术支持,了解配置方法。 |
| value | Object | 推流高级配置为 JSON 格式的字符串,此参数为 JSON 结构中的 Value。您可通过提交工单联系技术支持,了解配置方法。 |
返回值
int com.ss.avframework.live.VeLivePusher.pushExternalVideoFrame(VeLiveVideoFrame frame)
推送外部视频帧数据。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveVideoFrame | 视频帧的数据信息,详情请参见 VeLiveVideoFrame。 |
返回值
注意
调用该接口时,需要将视频采集类型设置为 VeLiveVideoCaptureExternal,您可调用 startVideoCapture 方法,将 VeLiveVideoCaptureType 设置为 VeLiveVideoCaptureExternal。
int com.ss.avframework.live.VeLivePusher.pushExternalAudioFrame(VeLiveAudioFrame frame)
推送外部音频帧数据。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveAudioFrame | 外部音频数据。详情请参见 VeLiveAudioFrame。 |
返回值
注意
该接口需要在 startAudioCapture 方法中设置 VeLiveAudioCaptureType 为 VeLiveAudioCaptureExternal。
void com.ss.avframework.live.VeLivePusher.setOrientation(VeLiveOrientation orientation)
设置推流视频帧朝向。默认为竖屏推流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| orientation | VeLiveOrientation | 视频帧朝向,详情请参见 VeLiveOrientation。 |
int com.ss.avframework.live.VeLivePusher.sendSeiMessage( String key, Object value, int repeat, boolean isKeyFrame, boolean allowsCovered )
通过视频帧发送 SEI 消息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| key | String | SEI 消息为 JSON 格式的字符串。此参数为 JSON 结构中的 Key。 |
| value | Object | SEI 消息为 JSON 格式的字符串。此参数为 JSON 结构中的 Value。 |
| repeat | int | 消息发送重复的次数。例如,repeat 取值为 20,isKeyFrame 取值为 YES,则会在视频帧开始的连续 20 个关键帧中添加 SEI 消息。 |
| isKeyFrame | boolean | 是否仅在关键帧中包含 SEI 消息。
|
| allowsCovered | boolean | 是否允许覆盖。
|
返回值
注意
该接口需要在调用 startPush 或 startPushWithUrls 方法之后调用。
void com.ss.avframework.live.VeLivePusher.setMute(boolean mute)
设置静音。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| mute | boolean | 是否设置为静音。默认为正常推流。
|
boolean com.ss.avframework.live.VeLivePusher.isMute()
当前是否是静音状态。
返回值
VeLiveVideoEffectManager com.ss.avframework.live.VeLivePusher.getVideoEffectManager()
获取视频特效管理对象 VeLiveVideoEffectManager。通过视频特效管理,您可以使用以下功能。
返回值
视频特效管理对象 VeLiveVideoEffectManager。
注意
该接口需要集成智能美化特效 SDK 后才能使用。
int com.ss.avframework.live.VeLivePusher.addVideoFrameFilter( VeLivePixelFormat format, VeLiveVideoBufferType bufferType, VeLiveVideoFrameFilter filter )
自定义视频处理。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| format | VeLivePixelFormat | 视频像素格式,详情请参见 VeLivePixelFormat。 |
| bufferType | VeLiveVideoBufferType | 视频数据类型,详情请参见 VeLiveVideoBufferType。 |
| filter | VeLiveVideoFrameFilter | 视频数据处理回调,详情请参见 VeLiveVideoFrameFilter。 |
返回值
int com.ss.avframework.live.VeLivePusher.removeVideoFrameFilter(VeLiveVideoFrameFilter filter)
移除已添加的视频帧自定义处理监听。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| filter | VeLiveVideoFrameFilter | 视频数据处理回调,需要与 addVideoFrameFilter 中传入的实例一致。详情请参见 VeLiveVideoFrameFilter。 |
返回值
注意
如果没有添加过此监听回调或者监听回调已被移除,调用此方法将返回失败。
VeLiveAudioDevice com.ss.avframework.live.VeLivePusher.getAudioDevice()
获取音频模块管理对象。
返回值
音频模块管理对象 VeLiveAudioDevice。
注意
该接口需要在 startAudioCapture 方法中设置 VeLiveAudioCaptureType 为 VeLiveAudioCaptureMicrophone。
void com.ss.avframework.live.VeLivePusher.setAudioFrameFilter(VeLiveAudioFrameFilter filter)
自定义音频处理。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| filter | VeLiveAudioFrameFilter | 音频帧滤镜对象 VeLiveAudioFrameFilter 。 |
VeLiveMediaPlayer com.ss.avframework.live.VeLivePusher.createPlayer()
创建播放器。
返回值
播放器管理对象 VeLiveMediaPlayer。
VeLiveMixerManager com.ss.avframework.live.VeLivePusher.getMixerManager()
获取混流管理对象。
返回值
混流管理对象 VeLiveMixerManager。
void com.ss.avframework.live.VeLivePusher.startMixSystemAudio()
开始系统音频采集。
void com.ss.avframework.live.VeLivePusher.stopMixSystemAudio()
停止系统音频采集。
boolean com.ss.avframework.live.VeLivePusher.isScreenRecording()
获取当前是否处于屏幕采集状态。
int com.ss.avframework.live.VeLivePusher.addVideoFrameListener(VeLiveVideoFrameListener listener)
添加视频帧的监听回调,用于获取推流器输出的视频帧。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| listener | VeLiveVideoFrameListener | 视频帧的监听回调,详细信息请参见 VeLiveVideoFrameListener。 |
返回值
int com.ss.avframework.live.VeLivePusher.removeVideoFrameListener(VeLiveVideoFrameListener listener)
移除已添加的视频帧监听回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| listener | VeLiveVideoFrameListener | 视频帧的监听回调,详细信息请参见 VeLiveVideoFrameListener。 |
返回值
注意
如果没有添加过此监听回调或者监听回调已被移除,调用此方法将返回失败。
int com.ss.avframework.live.VeLivePusher.addAudioFrameListener(VeLiveAudioFrameListener listener)
添加音频帧的监听回调,用于获取推流器输出的音频帧。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| listener | VeLiveAudioFrameListener | 音频帧监听回调,详细信息请参见 VeLiveAudioFrameListener。 |
返回值
int com.ss.avframework.live.VeLivePusher.removeAudioFrameListener(VeLiveAudioFrameListener listener)
移除已添加的音频帧监听回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| listener | VeLiveAudioFrameListener | 音频帧的监听回调,详细信息请参见 VeLiveAudioFrameListener。 |
返回值
注意
如果没有添加过此监听回调或者监听回调已被移除,调用此方法将返回失败。
void com.ss.avframework.live.VeLivePusher.snapshot(VeLiveSnapshotListener listener)
视频截图。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| listener | VeLiveSnapshotListener | 截图监听对象,详情请参见 VeLiveSnapshotListener。 |
public interface com.ss.avframework.live.VeLiveMixerManager
音视频混流器管理对象。支持添加/移除音视频流、发送自定义音视频帧、更新混流布局等。
int com.ss.avframework.live.VeLiveMixerManager.addVideoStream()
添加一路需要混流的视频流到混流器中。
返回值
视频流 ID。
int com.ss.avframework.live.VeLiveMixerManager.addAudioStream()
添加一路音频流到混流器中。
返回值
音频流 ID。
int com.ss.avframework.live.VeLiveMixerManager.addAudioStream(VeLiveAudioMixType type)
添加一路音频流到混流器中,并指定混流类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveAudioMixType | 混流类型,详情请参见 VeLiveAudioMixType 。 |
返回值
音频流 ID。
int com.ss.avframework.live.VeLiveMixerManager.getOriginVideoStream()
获取主路视频流 ID。
int com.ss.avframework.live.VeLiveMixerManager.getOriginAudioStream()
获取主路音频流 ID。
int com.ss.avframework.live.VeLiveMixerManager.getOriginScreenStream()
获取主路屏幕流 ID。
int com.ss.avframework.live.VeLiveMixerManager.getOriginSystemAudioStream()
获取主路系统音频流 ID。
void com.ss.avframework.live.VeLiveMixerManager.sendCustomVideoFrame( VeLiveVideoFrame frame, int streamId )
发送指定混流 ID 的自定义视频帧数据。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveVideoFrame | 自定义的视频帧,详情请参见 VeLiveVideoFrame 。 |
| streamId | int | 需要混流的视频流 ID。 |
void com.ss.avframework.live.VeLiveMixerManager.sendCustomAudioFrame( VeLiveAudioFrame frame, int streamId )
发送指定混流 ID 的自定义音频帧数据。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveAudioFrame | 自定义的音频帧,详情请参见 VeLiveAudioFrame 。 |
| streamId | int | 混流的音频流 ID。 |
void com.ss.avframework.live.VeLiveMixerManager.updateStreamMixDescription(VeLiveStreamMixDescription mixDescription)
更新音视频混流的布局。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| mixDescription | VeLiveStreamMixDescription | 新的音视频混流布局,详情请参见 VeLiveStreamMixDescription。 |
void com.ss.avframework.live.VeLiveMixerManager.removeVideoStream(int streamId)
从混流器中移除一路非主路的视频流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| streamId | int | 需要移除的非主路视频流 ID。 |
void com.ss.avframework.live.VeLiveMixerManager.removeAudioStream(int streamId)
从混流器中移除一路非主路的音频流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| streamId | int | 需要移除的非主路音频流 ID。 |
public interface com.ss.avframework.live.VeLiveMediaPlayer
媒体播放器对象。
| 返回 | 名称 |
|---|---|
| void | release |
| void | setListener |
| int | prepare |
| int | start |
| int | stop |
| void | pause |
| void | resume |
| long | getDuration |
| int | seek |
| void | enableMixer |
| void | enableAutoEq |
| void | setFrameListener |
| void | setBGMVolume |
| void | setVoiceVolume |
| void | enableBGMLoop |
void com.ss.avframework.live.VeLiveMediaPlayer.release()
销毁播放器实例。
void com.ss.avframework.live.VeLiveMediaPlayer.setListener(VeLiveMediaPlayerListener listener)
设置播放状态的监听。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| listener | VeLiveMediaPlayerListener | 播放状态监听。详情请参见 VeLiveMediaPlayerListener。 |
注意
重复调用本方法,仅最后一次调用生效。
int com.ss.avframework.live.VeLiveMediaPlayer.prepare(String url)
设置文件路径。支持的文件格式包括 MP3、AAC、M4A、WAV。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| url | String | 文件路径。 |
返回值
int com.ss.avframework.live.VeLiveMediaPlayer.start()
开始播放。
注意
需要在调用 start 开始播放后,调用本方法。
int com.ss.avframework.live.VeLiveMediaPlayer.stop()
停止播放。
返回值
注意
需要在调用 start 开始播放后,调用本方法。
void com.ss.avframework.live.VeLiveMediaPlayer.pause()
暂停播放。
注意
需要在调用 start 开始播放后,调用本方法。
void com.ss.avframework.live.VeLiveMediaPlayer.resume()
恢复播放。
注意
需要在调用 pause 暂停播放后,调用本方法。
long com.ss.avframework.live.VeLiveMediaPlayer.getDuration()
获取文件的总时长,单位为 ms。
返回值
注意
需要在调用 start 开始播放后,调用本方法。
int com.ss.avframework.live.VeLiveMediaPlayer.seek(long posMs)
设置播放进度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| posMs | long | 播放时间,单位为 ms。 |
返回值
void com.ss.avframework.live.VeLiveMediaPlayer.enableMixer(boolean enable)
开启/关闭音频是否混音到直播流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| enable | boolean | 开启/关闭,默认为 false。
|
void com.ss.avframework.live.VeLiveMediaPlayer.enableAutoEq( float sourceLufs, float targetLufs )
开启/关闭自动音量均衡。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| sourceLufs | float | 源响度。 |
| targetLufs | float | 目标响度。 |
void com.ss.avframework.live.VeLiveMediaPlayer.setFrameListener(VeLiveMediaPlayerFrameListener listener)
设置音视频帧回调的监听。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| listener | VeLiveMediaPlayerFrameListener | 音视频帧回调监听。详情请参见 VeLiveMediaPlayerFrameListener。 |
注意
重复调用本方法,仅最后一次调用生效。
void com.ss.avframework.live.VeLiveMediaPlayer.setBGMVolume(float volume)
设置播放音频的音量。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| volume | float | 播放音频音量,取值范围为 [0.0,4.0]。 |
void com.ss.avframework.live.VeLiveMediaPlayer.setVoiceVolume(float volume)
设置音频采集音量。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| volume | float | 音频采集音量,取值范围为 [0.0,4.0]。 |
注意
需要在调用 start 开始播放背景音乐后,调用本方法。
void com.ss.avframework.live.VeLiveMediaPlayer.enableBGMLoop(boolean loop)
设置是否循环播放。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| loop | boolean | 是否循环播放。默认为 false。
|
public interface com.ss.avframework.live.VeLiveAudioDevice
音频设备管理类。该类提供了用于管理和控制音频设备,包括设置音量、获取当前音量的方法。
| 返回 | 名称 |
|---|---|
| void | setVoiceLoudness |
| float | getVoiceLoudness |
void com.ss.avframework.live.VeLiveAudioDevice.setVoiceLoudness(float level)
设置音量响度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| level | float | 音量响度等级,取值范围为 [0.0,4.0]。 |
float com.ss.avframework.live.VeLiveAudioDevice.getVoiceLoudness()
获取当前音量响度。
返回值
当前音量响度等级。