Live Streaming Windows
2.7.0
网易视频云Windwos端直播推流SDK
|
#include "nlss_childvideo_api.h"
函数 | |
EXPORTS_API NLSS_RET | Nlss_GetAvailableAppWindNum (int *piAppWindNum) |
EXPORTS_API NLSS_RET | Nlss_GetAvailableAppWind (NLSS_OUT ST_NLSS_APPWND_INF *pLSAppWindInfos, int iMaxNum) |
EXPORTS_API NLSS_RET | Nlss_GetFreeDevicesNum (NLSS_OUT int *iVideoDeviceNum, NLSS_OUT int *iAudioDeviceNum) |
EXPORTS_API NLSS_RET | Nlss_GetFreeDeviceInf (NLSS_OUT ST_NLSS_INDEVICE_INF *pstVideoDevices, int iMaxVideoDevicesNum, NLSS_OUT ST_NLSS_INDEVICE_INF *pstAudioDevices, int iMaxAudioDevicesNum) |
EXPORTS_API NLSS_RET | Nlss_DeviceGetCamereCaptureInf (ST_NLSS_INDEVICE_INF *pstCamera, NLSS_OUT ST_NLSS_CAMERA_CAPTURE_PARAM *pstCaptureParams, NLSS_IN_OUT int *piNum) |
EXPORTS_API NLSS_RET | Nlss_GetDeckLinkDeviceList (NLSS_OUT ST_NLSS_INDEVICE_INF *pstDeckLinkDevices, NLSS_IN_OUT int *iMaxDeckLinkDeviceNum) |
EXPORTS_API NLSS_RET | Nlss_GetDeckLinkDeviceModeListById (const char *paDeviceId, NLSS_OUT ST_NLSS_INDEVICE_MODE_INF *pstDeckLinkDeviceModes, NLSS_IN_OUT int *iMaxDeckLinkDeviceModeNum) |
EXPORTS_API void | Nlss_GetSDKVersion (NLSS_OUT char **ppaVersion) |
EXPORTS_API NLSS_RET | Nlss_Create (const char *paWorkPath, const char *paCachePath, NLSS_OUT _HNLSSERVICE *phNLSService) |
EXPORTS_API void | Nlss_Destroy (_HNLSSERVICE hNLSService) |
EXPORTS_API NLSS_RET | Nlss_GetDefaultParam (_HNLSSERVICE hNLSService, NLSS_OUT ST_NLSS_PARAM *pstParam) |
EXPORTS_API NLSS_RET | Nlss_InitParam (_HNLSSERVICE hNLSService, ST_NLSS_PARAM *pstParam) |
EXPORTS_API void | Nlss_UninitParam (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_SetVideoWaterMark (_HNLSSERVICE hNLSService, ST_NLSS_VIDEO_WATER_PARAM *pstWaterParam) |
EXPORTS_API void | Nlss_SetVideoSamplerCB (_HNLSSERVICE hNLSService, PFN_NLSS_MERGED_VIDEO_SAMPLER_CB pFunVideoSamplerCB) |
EXPORTS_API void | Nlss_SetStatusCB (_HNLSSERVICE hNLSService, PFN_NLSS_STATUS_NTY pFunStatusNty) |
EXPORTS_API bool | Nlss_UpdateVideoOutParam (_HNLSSERVICE hNLSService, ST_NLSS_VIDEOOUT_PARAM *pstVideoParam) |
EXPORTS_API bool | Nlss_UpdateAudioOutParam (_HNLSSERVICE hNLSService, ST_NLSS_AUDIOOUT_PARAM *pstAudioParam) |
EXPORTS_API bool | Nlss_UpdatePushUrl (_HNLSSERVICE hNLSService, char *pucPushUrl) |
EXPORTS_API bool | Nlss_UpdateSyncTimestampType (_HNLSSERVICE hNLSService, EN_NLSS_SYNC_TS_TYPE enSyncTsType) |
EXPORTS_API NLSS_RET | Nlss_Start (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_Stop (_HNLSSERVICE hNLSService) |
EXPORTS_API NLSS_RET | Nlss_StartVideoPreview (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_PauseVideoPreview (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_ResumeVideoPreview (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_StopVideoPreview (_HNLSSERVICE hNLSService) |
EXPORTS_API NLSS_RET | Nlss_StartLiveStream (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_StopLiveStream (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_PauseVideoLiveStream (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_ResumeVideoLiveStream (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_PauseAudioLiveStream (_HNLSSERVICE hNLSService) |
EXPORTS_API void | Nlss_ResumeAudioLiveStream (_HNLSSERVICE hNLSService) |
EXPORTS_API NLSS_RET | Nlss_StartRecord (_HNLSSERVICE hNLSService, ST_NLSS_RECORD_PARAM *pstRecordParam) |
EXPORTS_API void | Nlss_StopRecord (_HNLSSERVICE hNLSService) |
EXPORTS_API unsigned long long | Nlss_GetStreamPts (_HNLSSERVICE hNLSService) |
EXPORTS_API unsigned long long | Nlss_GetSyncTimestamp (_HNLSSERVICE hNLSService) |
EXPORTS_API NLSS_RET | Nlss_SendCustomData (_HNLSSERVICE hNLSService, ST_NLSS_CUSTOM_DATA_PARAM *pstParam) |
EXPORTS_API NLSS_RET | Nlss_GetStaticInfo (_HNLSSERVICE hNLSService, NLSS_OUT ST_NLSS_STATS *pstStats) |
EXPORTS_API NLSS_RET Nlss_Create | ( | const char * | paWorkPath, |
const char * | paCachePath, | ||
NLSS_OUT _HNLSSERVICE * | phNLSService | ||
) |
创建直播推流实例,推流对象只允许存在一个,多次直播可以只调用一次
paWorkPath | NLSS work目录(要求UTF-8编码),会从work目录下面动态加载所需要的dll。 如果设置为空,则在当前所在目录下面 ,操作上述事情。 |
paCachePath | NLSS cache目录,会在该目录下面生成日志,需要有文件创建和写入权限 如果设置为空,则在当前所在目录下面 ,操作上述事情。 |
phNLSService | 直播推流实例 ,出参 |
EXPORTS_API void Nlss_Destroy | ( | _HNLSSERVICE | hNLSService | ) |
销毁直播推流实例,可以程序退出再销毁
hNLSService | 直播推流实例,入参 |
EXPORTS_API NLSS_RET Nlss_DeviceGetCamereCaptureInf | ( | ST_NLSS_INDEVICE_INF * | pstCamera, |
NLSS_OUT ST_NLSS_CAMERA_CAPTURE_PARAM * | pstCaptureParams, | ||
NLSS_IN_OUT int * | piNum | ||
) |
获取摄像头设备支持的采集参数
pstCamera | 摄像头对象,入参 |
pstCaptureParams | 摄像头支持的采集参数数组,出参,请自己申请和释放内存。 |
piNum | 作为入参表示传入的pstCaptureParams数组capacity;作为出参表示实际取到的pstCaptureParams数组size。 |
EXPORTS_API NLSS_RET Nlss_GetAvailableAppWind | ( | NLSS_OUT ST_NLSS_APPWND_INF * | pLSAppWindInfos, |
int | iMaxNum | ||
) |
获取可采集图像的app列表信息
pLSAppWindInfos | 可采集图像的app信息 出参 |
iMaxNum | pLSAppWindTitles最大容量 入参 |
EXPORTS_API NLSS_RET Nlss_GetAvailableAppWindNum | ( | int * | piAppWindNum | ) |
获取可采集应用图像的app个数
piAppWindNum | 可采集图像的app数量 出参 |
EXPORTS_API NLSS_RET Nlss_GetDeckLinkDeviceList | ( | NLSS_OUT ST_NLSS_INDEVICE_INF * | pstDeckLinkDevices, |
NLSS_IN_OUT int * | iMaxDeckLinkDeviceNum | ||
) |
获取所有DeckLink设备信息
pstDeckLinkDevices | DeckLink设备信息;当此参数为空时,iMaxDeckLinkDeviceNum返回可用的DeckLink设备个数 出参 |
iMaxDeckLinkDeviceNum | 作为入参是pstDeckLinkDevices的最大容量;作为出参是最终取到的设备信息个数 |
EXPORTS_API NLSS_RET Nlss_GetDeckLinkDeviceModeListById | ( | const char * | paDeviceId, |
NLSS_OUT ST_NLSS_INDEVICE_MODE_INF * | pstDeckLinkDeviceModes, | ||
NLSS_IN_OUT int * | iMaxDeckLinkDeviceModeNum | ||
) |
获取指定DeckLink设备的所有模式信息
pstDeckLinkDeviceModes | DeckLink设备的模式 出参 |
paDeviceId | 指定的DeckLink设备id 入参 |
iMaxDeckLinkDeviceModeNum | 作为入参是pstDeckLinkDeviceModes的最大容量;作为出参是最终取到的模式个数 |
EXPORTS_API NLSS_RET Nlss_GetDefaultParam | ( | _HNLSSERVICE | hNLSService, |
NLSS_OUT ST_NLSS_PARAM * | pstParam | ||
) |
获取直播默认参数
hNLSService | 直播推流实例,入参 |
pstParam | 直播参数,出参 |
EXPORTS_API NLSS_RET Nlss_GetFreeDeviceInf | ( | NLSS_OUT ST_NLSS_INDEVICE_INF * | pstVideoDevices, |
int | iMaxVideoDevicesNum, | ||
NLSS_OUT ST_NLSS_INDEVICE_INF * | pstAudioDevices, | ||
int | iMaxAudioDevicesNum | ||
) |
获取可用多媒体设备列表名称,暂时只支持DShow采集音视频
pstVideoDevices | 视频设备信息 出参 |
iMaxVideoDevicesNum | pstVideoDevices最大容量 入参 |
pstAudioDevices | 音频设备信息 出参 |
iMaxAudioDevicesNum | pstAudioDevices最大容量 入参 |
EXPORTS_API NLSS_RET Nlss_GetFreeDevicesNum | ( | NLSS_OUT int * | iVideoDeviceNum, |
NLSS_OUT int * | iAudioDeviceNum | ||
) |
获取可用多媒体设备列表个数
iVideoDeviceNum | 视频设备数量 出参 |
iAudioDeviceNum | 音频设备数量 出参 |
EXPORTS_API void Nlss_GetSDKVersion | ( | NLSS_OUT char ** | ppaVersion | ) |
获取sdk版本号
ppaVersion | 版本号,需要调用free进行释放,出参 |
EXPORTS_API NLSS_RET Nlss_GetStaticInfo | ( | _HNLSSERVICE | hNLSService, |
NLSS_OUT ST_NLSS_STATS * | pstStats | ||
) |
获取直播推流状态信息
hNLSService | 直播推流实例,入参 |
pstStats | 直播推流统计信息,出参 |
EXPORTS_API unsigned long long Nlss_GetStreamPts | ( | _HNLSSERVICE | hNLSService | ) |
获取当前直播流的pts(实际上是音频流的dts),单位毫秒
hNLSService | 直播推流实例,入参 |
EXPORTS_API unsigned long long Nlss_GetSyncTimestamp | ( | _HNLSSERVICE | hNLSService | ) |
获取当前透传的同步时间戳(通过视频流透传,ST_NLSS_PARAM::enSyncTsType不为NONE时,此接口有效),单位毫秒
hNLSService | 直播推流实例,入参 |
EXPORTS_API NLSS_RET Nlss_InitParam | ( | _HNLSSERVICE | hNLSService, |
ST_NLSS_PARAM * | pstParam | ||
) |
初始化直播参数
hNLSService | 直播推流实例,入参 |
pstParam | 直播参数 |
EXPORTS_API void Nlss_PauseAudioLiveStream | ( | _HNLSSERVICE | hNLSService | ) |
暂停音频直播推流
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_PauseVideoLiveStream | ( | _HNLSSERVICE | hNLSService | ) |
暂停视频直播推流
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_PauseVideoPreview | ( | _HNLSSERVICE | hNLSService | ) |
暂停视频预览
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_ResumeAudioLiveStream | ( | _HNLSSERVICE | hNLSService | ) |
恢复音频直播推流
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_ResumeVideoLiveStream | ( | _HNLSSERVICE | hNLSService | ) |
恢复视频直播推流
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_ResumeVideoPreview | ( | _HNLSSERVICE | hNLSService | ) |
恢复视频预览
hNLSService | 直播推流实例,入参 |
EXPORTS_API NLSS_RET Nlss_SendCustomData | ( | _HNLSSERVICE | hNLSService, |
ST_NLSS_CUSTOM_DATA_PARAM * | pstParam | ||
) |
发送透传的自定义数据
hNLSService | 直播推流实例,入参 |
pstParam | 要发送的自定义数据参数,入参 |
EXPORTS_API void Nlss_SetStatusCB | ( | _HNLSSERVICE | hNLSService, |
PFN_NLSS_STATUS_NTY | pFunStatusNty | ||
) |
设置直播过程中状态回调
hNLSService | 直播推流实例 |
pFunStatusNty | 直播状态通知函数 |
EXPORTS_API void Nlss_SetVideoSamplerCB | ( | _HNLSSERVICE | hNLSService, |
PFN_NLSS_MERGED_VIDEO_SAMPLER_CB | pFunVideoSamplerCB | ||
) |
设置视频截图的的回调
hNLSService | 直播推流实例,入参 |
pFunVideoSamplerCB | 视频截图图像回调 |
EXPORTS_API void Nlss_SetVideoWaterMark | ( | _HNLSSERVICE | hNLSService, |
ST_NLSS_VIDEO_WATER_PARAM * | pstWaterParam | ||
) |
设置视频水印,默认是无水印
hNLSService | 直播推流实例,入参 |
pstWaterParam | 水印参数结构体. |
EXPORTS_API NLSS_RET Nlss_Start | ( | _HNLSSERVICE | hNLSService | ) |
启动处理,在各类初始化之后,在预览和直播启动之前
hNLSService | 直播推流实例,入参 |
EXPORTS_API NLSS_RET Nlss_StartLiveStream | ( | _HNLSSERVICE | hNLSService | ) |
启动直播推流
hNLSService | 直播推流实例,入参 |
EXPORTS_API NLSS_RET Nlss_StartRecord | ( | _HNLSSERVICE | hNLSService, |
ST_NLSS_RECORD_PARAM * | pstRecordParam | ||
) |
开始直播录制
hNLSService | 直播推流实例,入参 |
pstRecordParam | 录制参数(录制文件存放路径、录制格式等),入参 |
EXPORTS_API NLSS_RET Nlss_StartVideoPreview | ( | _HNLSSERVICE | hNLSService | ) |
打开视频预览
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_Stop | ( | _HNLSSERVICE | hNLSService | ) |
停止处理,在预览和直播停止之后,在Nlss_UninitParam之前
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_StopLiveStream | ( | _HNLSSERVICE | hNLSService | ) |
停止直播推流
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_StopRecord | ( | _HNLSSERVICE | hNLSService | ) |
停止直播录制
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_StopVideoPreview | ( | _HNLSSERVICE | hNLSService | ) |
停止视频预览
hNLSService | 直播推流实例,入参 |
EXPORTS_API void Nlss_UninitParam | ( | _HNLSSERVICE | hNLSService | ) |
清除Nlss_InitParam设置的直播参数
hNLSService | 直播推流实例,入参 |
EXPORTS_API bool Nlss_UpdateAudioOutParam | ( | _HNLSSERVICE | hNLSService, |
ST_NLSS_AUDIOOUT_PARAM * | pstAudioParam | ||
) |
修改音频输出参数,必须在未推流状态下执行
hNLSService | 直播推流实例 |
pstAudioParam | 新的音频输出参数 |
EXPORTS_API bool Nlss_UpdatePushUrl | ( | _HNLSSERVICE | hNLSService, |
char * | pucPushUrl | ||
) |
修改推流地址,必须在未推流状态下执行
hNLSService | 直播推流实例 |
pucPushUrl | 新的推流地址 |
EXPORTS_API bool Nlss_UpdateSyncTimestampType | ( | _HNLSSERVICE | hNLSService, |
EN_NLSS_SYNC_TS_TYPE | enSyncTsType | ||
) |
修改透传同步时间戳类型(见EN_NLSS_SYNC_TS_TYPE)
hNLSService | 直播推流实例 |
enSyncTsType | 新的透传同步时间戳类型 |
EXPORTS_API bool Nlss_UpdateVideoOutParam | ( | _HNLSSERVICE | hNLSService, |
ST_NLSS_VIDEOOUT_PARAM * | pstVideoParam | ||
) |
修改视频输出参数,必须在未推流状态下执行
hNLSService | 直播推流实例 |
pstVideoParam | 新的视频输出参数 |