ZLMediaKit/api/include/mk_recorder.h

86 lines
2.6 KiB
C++
Raw Normal View History

2019-12-18 11:47:49 +08:00
/*
2023-12-09 16:23:51 +08:00
* Copyright (c) 2016-present The ZLMediaKit project authors. All Rights Reserved.
2019-12-17 18:45:31 +08:00
*
2023-12-09 16:23:51 +08:00
* This file is part of ZLMediaKit(https://github.com/ZLMediaKit/ZLMediaKit).
2019-12-17 18:45:31 +08:00
*
2023-12-09 16:23:51 +08:00
* Use of this source code is governed by MIT-like license that can be found in the
2020-04-04 20:30:09 +08:00
* LICENSE file in the root of the source tree. All contributing project authors
* may be found in the AUTHORS file in the root of the source tree.
2019-12-17 18:45:31 +08:00
*/
2019-12-24 16:19:33 +08:00
#ifndef MK_RECORDER_API_H_
#define MK_RECORDER_API_H_
2019-12-17 18:45:31 +08:00
#include "mk_common.h"
2019-12-17 18:45:31 +08:00
#ifdef __cplusplus
extern "C" {
#endif
2019-12-24 16:19:33 +08:00
///////////////////////////////////////////flv录制/////////////////////////////////////////////
typedef struct mk_flv_recorder_t *mk_flv_recorder;
2019-12-17 18:45:31 +08:00
/**
* flv录制器
* @return
*/
API_EXPORT mk_flv_recorder API_CALL mk_flv_recorder_create();
/**
* flv录制器
* @param ctx
*/
API_EXPORT void API_CALL mk_flv_recorder_release(mk_flv_recorder ctx);
/**
* flv
* @param ctx flv录制器
2019-12-27 13:56:02 +08:00
* @param vhost
2019-12-17 18:45:31 +08:00
* @param app RtmpMediaSource的 app名
* @param stream RtmpMediaSource的 stream名
* @param file_path
* @return 0:-1:,RtmpMediaSource不存在
*/
2019-12-27 13:56:02 +08:00
API_EXPORT int API_CALL mk_flv_recorder_start(mk_flv_recorder ctx, const char *vhost, const char *app, const char *stream, const char *file_path);
2019-12-17 18:45:31 +08:00
2020-04-05 09:26:29 +08:00
///////////////////////////////////////////hls/mp4录制/////////////////////////////////////////////
/**
*
* @param type 0:hls,1:MP4
* @param vhost
* @param app
* @param stream id
* @return ,0:, 1:
*/
API_EXPORT int API_CALL mk_recorder_is_recording(int type, const char *vhost, const char *app, const char *stream);
/**
*
* @param type 0:hls-ts,1:MP4,2:hls-fmp4,3:http-fmp4,4:http-ts
2020-04-05 09:26:29 +08:00
* @param vhost
* @param app
* @param stream id
* @param customized_path null则自动生成
* @param max_second mp4录制最大切片时间0
2020-04-05 09:26:29 +08:00
* @return 10
*/
API_EXPORT int API_CALL mk_recorder_start(int type, const char *vhost, const char *app, const char *stream, const char *customized_path, size_t max_second);
2020-04-05 09:26:29 +08:00
/**
*
* @param type 0:hls-ts,1:MP4,2:hls-fmp4,3:http-fmp4,4:http-ts
2020-04-05 09:26:29 +08:00
* @param vhost
* @param app
* @param stream id
* @return 1:0
*/
API_EXPORT int API_CALL mk_recorder_stop(int type, const char *vhost, const char *app, const char *stream);
2019-12-17 18:45:31 +08:00
#ifdef __cplusplus
}
#endif
2019-12-24 16:19:33 +08:00
#endif /* MK_RECORDER_API_H_ */