Live Streaming Windows  2.7.0
网易视频云Windwos端直播推流SDK
nlss_api.h
浏览该文件的文档.
1 /*
2 * Author hzzhuling15
3 * Date 2015/09/11
4 * Copyright Hangzhou, Netease Inc.
5 * Brief
6 * Notice
7 */
8 #ifndef _NLSS_API_H_
9 #define _NLSS_API_H_
10 
11 #include "nlss_childvideo_api.h"
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
19 /*******************************设备管理API:获取可供采集资源列表*************************************/
27 EXPORTS_API NLSS_RET Nlss_GetAvailableAppWindNum(int *piAppWindNum);
28 
37 EXPORTS_API NLSS_RET Nlss_GetAvailableAppWind(NLSS_OUT ST_NLSS_APPWND_INF *pLSAppWindInfos, int iMaxNum);
38 
47 EXPORTS_API NLSS_RET Nlss_GetFreeDevicesNum(NLSS_OUT int *iVideoDeviceNum, NLSS_OUT int *iAudioDeviceNum);
48 
59 EXPORTS_API NLSS_RET Nlss_GetFreeDeviceInf(NLSS_OUT ST_NLSS_INDEVICE_INF *pstVideoDevices, int iMaxVideoDevicesNum, NLSS_OUT ST_NLSS_INDEVICE_INF* pstAudioDevices, int iMaxAudioDevicesNum);
60 
71 
80 EXPORTS_API NLSS_RET Nlss_GetDeckLinkDeviceList(NLSS_OUT ST_NLSS_INDEVICE_INF *pstDeckLinkDevices, NLSS_IN_OUT int* iMaxDeckLinkDeviceNum);
81 
91 EXPORTS_API NLSS_RET Nlss_GetDeckLinkDeviceModeListById(const char* paDeviceId, NLSS_OUT ST_NLSS_INDEVICE_MODE_INF *pstDeckLinkDeviceModes, NLSS_IN_OUT int* iMaxDeckLinkDeviceModeNum);
92 
93 
94 
95 
96 /*******************************初始化和参数设置API*************************************************************/
104 EXPORTS_API void Nlss_GetSDKVersion(NLSS_OUT char **ppaVersion);
105 
117 EXPORTS_API NLSS_RET Nlss_Create(const char *paWorkPath, const char *paCachePath, NLSS_OUT _HNLSSERVICE *phNLSService);
118 
124 EXPORTS_API void Nlss_Destroy(_HNLSSERVICE hNLSService);
125 
133 EXPORTS_API NLSS_RET Nlss_GetDefaultParam(_HNLSSERVICE hNLSService, NLSS_OUT ST_NLSS_PARAM *pstParam);
141 EXPORTS_API NLSS_RET Nlss_InitParam(_HNLSSERVICE hNLSService, ST_NLSS_PARAM *pstParam);
142 
150 EXPORTS_API void Nlss_UninitParam(_HNLSSERVICE hNLSService);
151 
160 EXPORTS_API void Nlss_SetVideoWaterMark(_HNLSSERVICE hNLSService, ST_NLSS_VIDEO_WATER_PARAM *pstWaterParam);
161 
170 EXPORTS_API void Nlss_SetVideoSamplerCB(_HNLSSERVICE hNLSService, PFN_NLSS_MERGED_VIDEO_SAMPLER_CB pFunVideoSamplerCB);
171 
180 EXPORTS_API void Nlss_SetStatusCB(_HNLSSERVICE hNLSService, PFN_NLSS_STATUS_NTY pFunStatusNty);
181 
182 
183 
184 /*******************************修改ST_NLSS_PARAM中的参数*************************************************************/
193 EXPORTS_API bool Nlss_UpdateVideoOutParam(_HNLSSERVICE hNLSService, ST_NLSS_VIDEOOUT_PARAM* pstVideoParam);
194 
203 EXPORTS_API bool Nlss_UpdateAudioOutParam(_HNLSSERVICE hNLSService, ST_NLSS_AUDIOOUT_PARAM* pstAudioParam);
204 
213 EXPORTS_API bool Nlss_UpdatePushUrl(_HNLSSERVICE hNLSService, char* pucPushUrl);
214 
223 EXPORTS_API bool Nlss_UpdateSyncTimestampType(_HNLSSERVICE hNLSService, EN_NLSS_SYNC_TS_TYPE enSyncTsType);
224 
225 
226 
227 /*******************************启动|停止处理API*************************************************************/
235 EXPORTS_API NLSS_RET Nlss_Start(_HNLSSERVICE hNLSService);
236 
244 EXPORTS_API void Nlss_Stop(_HNLSSERVICE hNLSService);
245 
246 
247 /*******************************输出视频预览API*************************************************************/
255 EXPORTS_API NLSS_RET Nlss_StartVideoPreview(_HNLSSERVICE hNLSService);
256 
264 EXPORTS_API void Nlss_PauseVideoPreview(_HNLSSERVICE hNLSService);
265 
273 EXPORTS_API void Nlss_ResumeVideoPreview(_HNLSSERVICE hNLSService);
274 
282 EXPORTS_API void Nlss_StopVideoPreview(_HNLSSERVICE hNLSService);
283 
284 
285 
286 
287 /*******************************直播推流API*************************************************************/
295 EXPORTS_API NLSS_RET Nlss_StartLiveStream(_HNLSSERVICE hNLSService);
296 
304 EXPORTS_API void Nlss_StopLiveStream(_HNLSSERVICE hNLSService);
305 
313 EXPORTS_API void Nlss_PauseVideoLiveStream(_HNLSSERVICE hNLSService);
321 EXPORTS_API void Nlss_ResumeVideoLiveStream(_HNLSSERVICE hNLSService);
322 
330 EXPORTS_API void Nlss_PauseAudioLiveStream(_HNLSSERVICE hNLSService);
331 
339 EXPORTS_API void Nlss_ResumeAudioLiveStream(_HNLSSERVICE hNLSService);
340 
349 EXPORTS_API NLSS_RET Nlss_StartRecord(_HNLSSERVICE hNLSService, ST_NLSS_RECORD_PARAM *pstRecordParam);
350 
358 EXPORTS_API void Nlss_StopRecord(_HNLSSERVICE hNLSService);
359 
367 EXPORTS_API unsigned long long Nlss_GetStreamPts(_HNLSSERVICE hNLSService);
368 
376 EXPORTS_API unsigned long long Nlss_GetSyncTimestamp(_HNLSSERVICE hNLSService);
377 
386 EXPORTS_API NLSS_RET Nlss_SendCustomData(_HNLSSERVICE hNLSService, ST_NLSS_CUSTOM_DATA_PARAM *pstParam);
387 
396 EXPORTS_API NLSS_RET Nlss_GetStaticInfo(_HNLSSERVICE hNLSService, NLSS_OUT ST_NLSS_STATS *pstStats);
397 
398 
399 
400 #ifdef __cplusplus
401 }
402 #endif
403 
404 #endif// _LS_MEDIACAPTURE_API_H_
405 
406 
407 
EXPORTS_API NLSS_RET Nlss_GetFreeDevicesNum(NLSS_OUT int *iVideoDeviceNum, NLSS_OUT int *iAudioDeviceNum)
EXPORTS_API void Nlss_PauseAudioLiveStream(_HNLSSERVICE hNLSService)
EXPORTS_API void Nlss_Destroy(_HNLSSERVICE hNLSService)
EXPORTS_API NLSS_RET Nlss_StartRecord(_HNLSSERVICE hNLSService, ST_NLSS_RECORD_PARAM *pstRecordParam)
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 unsigned long long Nlss_GetStreamPts(_HNLSSERVICE hNLSService)
#define EXPORTS_API
Definition: nlss_define.h:16
Definition: nlss_type.h:254
Definition: nlss_type.h:382
EXPORTS_API NLSS_RET Nlss_GetStaticInfo(_HNLSSERVICE hNLSService, NLSS_OUT ST_NLSS_STATS *pstStats)
EXPORTS_API void Nlss_UninitParam(_HNLSSERVICE hNLSService)
EXPORTS_API bool Nlss_UpdateVideoOutParam(_HNLSSERVICE hNLSService, ST_NLSS_VIDEOOUT_PARAM *pstVideoParam)
Definition: nlss_type.h:193
EXPORTS_API NLSS_RET Nlss_StartLiveStream(_HNLSSERVICE hNLSService)
#define NLSS_OUT
Definition: nlss_define.h:32
EXPORTS_API void Nlss_SetVideoWaterMark(_HNLSSERVICE hNLSService, ST_NLSS_VIDEO_WATER_PARAM *pstWaterParam)
Definition: nlss_type.h:328
EXPORTS_API NLSS_RET Nlss_SendCustomData(_HNLSSERVICE hNLSService, ST_NLSS_CUSTOM_DATA_PARAM *pstParam)
Definition: nlss_type.h:173
Definition: nlss_type.h:295
EXPORTS_API NLSS_RET Nlss_GetDefaultParam(_HNLSSERVICE hNLSService, NLSS_OUT ST_NLSS_PARAM *pstParam)
EXPORTS_API void Nlss_StopVideoPreview(_HNLSSERVICE hNLSService)
enum enum_NLSS_SYNC_TS_TYPE EN_NLSS_SYNC_TS_TYPE
EXPORTS_API NLSS_RET Nlss_StartVideoPreview(_HNLSSERVICE hNLSService)
Definition: nlss_type.h:164
#define NLSS_IN_OUT
Definition: nlss_define.h:31
Definition: nlss_type.h:263
EXPORTS_API NLSS_RET Nlss_InitParam(_HNLSSERVICE hNLSService, ST_NLSS_PARAM *pstParam)
EXPORTS_API NLSS_RET Nlss_Create(const char *paWorkPath, const char *paCachePath, NLSS_OUT _HNLSSERVICE *phNLSService)
EXPORTS_API void Nlss_StopRecord(_HNLSSERVICE hNLSService)
EXPORTS_API void Nlss_PauseVideoPreview(_HNLSSERVICE hNLSService)
EXPORTS_API unsigned long long Nlss_GetSyncTimestamp(_HNLSSERVICE hNLSService)
EXPORTS_API void Nlss_PauseVideoLiveStream(_HNLSSERVICE hNLSService)
EXPORTS_API NLSS_RET Nlss_GetAvailableAppWind(NLSS_OUT ST_NLSS_APPWND_INF *pLSAppWindInfos, int iMaxNum)
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 void Nlss_ResumeVideoLiveStream(_HNLSSERVICE hNLSService)
EXPORTS_API void Nlss_StopLiveStream(_HNLSSERVICE hNLSService)
void(* PFN_NLSS_MERGED_VIDEO_SAMPLER_CB)(_HNLSSERVICE hNLSService, ST_NLSS_VIDEO_SAMPLER *pstSampler)
获取最新一帧合并子视频画面后的视频截图后的回调
Definition: nlss_type.h:422
void(* PFN_NLSS_STATUS_NTY)(_HNLSSERVICE hNLSService, EN_NLSS_STATUS enStatus, EN_NLSS_ERRCODE enErrCode)
直播发生错误回调,当直播过程中发生错误,通知应用层,应用层可以做相应的处理
Definition: nlss_type.h:414
EXPORTS_API void Nlss_SetVideoSamplerCB(_HNLSSERVICE hNLSService, PFN_NLSS_MERGED_VIDEO_SAMPLER_CB pFunVideoSamplerCB)
EXPORTS_API void Nlss_ResumeVideoPreview(_HNLSSERVICE hNLSService)
EXPORTS_API void Nlss_SetStatusCB(_HNLSSERVICE hNLSService, PFN_NLSS_STATUS_NTY pFunStatusNty)
EXPORTS_API bool Nlss_UpdatePushUrl(_HNLSSERVICE hNLSService, char *pucPushUrl)
Definition: nlss_type.h:366
Definition: nlss_type.h:182
EXPORTS_API bool Nlss_UpdateAudioOutParam(_HNLSSERVICE hNLSService, ST_NLSS_AUDIOOUT_PARAM *pstAudioParam)
EXPORTS_API void Nlss_GetSDKVersion(NLSS_OUT char **ppaVersion)
EXPORTS_API NLSS_RET Nlss_Start(_HNLSSERVICE hNLSService)
EXPORTS_API void Nlss_Stop(_HNLSSERVICE hNLSService)
EXPORTS_API NLSS_RET Nlss_GetDeckLinkDeviceModeListById(const char *paDeviceId, NLSS_OUT ST_NLSS_INDEVICE_MODE_INF *pstDeckLinkDeviceModes, NLSS_IN_OUT int *iMaxDeckLinkDeviceModeNum)
EXPORTS_API NLSS_RET Nlss_GetDeckLinkDeviceList(NLSS_OUT ST_NLSS_INDEVICE_INF *pstDeckLinkDevices, NLSS_IN_OUT int *iMaxDeckLinkDeviceNum)
EXPORTS_API NLSS_RET Nlss_GetAvailableAppWindNum(int *piAppWindNum)
Definition: nlss_type.h:375
EXPORTS_API void Nlss_ResumeAudioLiveStream(_HNLSSERVICE hNLSService)
EXPORTS_API bool Nlss_UpdateSyncTimestampType(_HNLSSERVICE hNLSService, EN_NLSS_SYNC_TS_TYPE enSyncTsType)