player增加speed,pause扩展,seek支持秒级定位,MP4按时间戳生成文件

This commit is contained in:
baiyfcu
2021-08-09 18:28:43 +08:00
parent 9e5d325e43
commit 0ed902509a
25 changed files with 455 additions and 52 deletions

View File

@@ -142,6 +142,19 @@ API_EXPORT void API_CALL mk_media_set_on_close(mk_media ctx, on_mk_media_close c
*/
typedef int(API_CALL *on_mk_media_seek)(void *user_data,uint32_t stamp_ms);
/**
* 收到客户端的pause请求时触发该回调
* @param user_data 用户数据指针,通过mk_media_set_on_pause设置
*/
typedef int(API_CALL* on_mk_media_pause)(void* user_data);
/**
* 收到客户端的speed请求时触发该回调
* @param user_data 用户数据指针,通过mk_media_set_on_pause设置
* @param speed 0.5 1.0 2.0
*/
typedef int(API_CALL* on_mk_media_speed)(void* user_data, float speed);
/**
* 监听播放器seek请求事件
* @param ctx 对象指针
@@ -150,6 +163,22 @@ typedef int(API_CALL *on_mk_media_seek)(void *user_data,uint32_t stamp_ms);
*/
API_EXPORT void API_CALL mk_media_set_on_seek(mk_media ctx, on_mk_media_seek cb, void *user_data);
/**
* 监听播放器pause请求事件
* @param ctx 对象指针
* @param cb 回调指针
* @param user_data 用户数据指针
*/
API_EXPORT void API_CALL mk_media_set_on_pause(mk_media ctx, on_mk_media_pause cb, void* user_data);
/**
* 监听播放器pause请求事件
* @param ctx 对象指针
* @param cb 回调指针
* @param user_data 用户数据指针
*/
API_EXPORT void API_CALL mk_media_set_on_speed(mk_media ctx, on_mk_media_speed cb, void* user_data);
/**
* 获取总的观看人数
* @param ctx 对象指针

View File

@@ -73,6 +73,13 @@ API_EXPORT void API_CALL mk_player_play(mk_player ctx, const char *url);
*/
API_EXPORT void API_CALL mk_player_pause(mk_player ctx, int pause);
/**
* 倍数播放,仅对点播有用
* @param ctx 播放器指针
* @param speed 0.5 1.0 2.0
*/
API_EXPORT void API_CALL mk_player_speed(mk_player ctx, float speed);
/**
* 设置点播进度条
* @param ctx 对象指针
@@ -80,6 +87,13 @@ API_EXPORT void API_CALL mk_player_pause(mk_player ctx, int pause);
*/
API_EXPORT void API_CALL mk_player_seekto(mk_player ctx, float progress);
/**
* 设置点播进度条
* @param ctx 对象指针
* @param seekPos 取值范围 相对于开始时间增量 单位秒
*/
API_EXPORT void API_CALL mk_player_seektoByPos(mk_player ctx, int seekPos);
/**
* 设置播放器开启播放结果回调函数
* @param ctx 播放器指针
@@ -112,6 +126,15 @@ API_EXPORT void API_CALL mk_player_set_on_data(mk_player ctx, on_mk_play_data cb
*/
API_EXPORT int API_CALL mk_player_video_codecId(mk_player ctx);
/**
* 获取视频codec_id, vendor类型, 私有头数据 codec_id -1不存在 0H2641H2652AAC 3.G711A 4.G711U
* @param ctx 播放器指针
* @param vendor 输出厂家类型 如果是私有流 应该是H264另外还有厂家类型
* @param head 厂家SDK头数据
* @param head 厂家SDK头数据长度
*/
API_EXPORT int API_CALL mk_player_video_codecId_vendor_head(mk_player ctx, char* vendor, char* head, int* headLen);
/**
* 获取视频宽度
*/
@@ -154,10 +177,15 @@ API_EXPORT int API_CALL mk_player_audio_channel(mk_player ctx);
API_EXPORT float API_CALL mk_player_duration(mk_player ctx);
/**
* 获取点播播放进度,取值范围 0.01.0
* 获取点播播放进度,取值范围 0.01.0
*/
API_EXPORT float API_CALL mk_player_progress(mk_player ctx);
/**
* 获取点播播放进度位置,取值范围 相对于开始时间增量 单位秒
*/
API_EXPORT int API_CALL mk_player_progress_pos(mk_player ctx);
/**
* 获取丢包率rtsp时有效
* @param ctx 对象指针