#include <stdio.h>
#include <sys/time.h>
#include <sys/resource.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/wait.h>
#include <unistd.h>
#include <signal.h>
#include <stdlib.h>
#include <time.h>
#include "28181SDK.h"
static bool bGetLoaclRes = false;
//打印事件回调信息
void enventcallback(int eventtype, int eventparam, int datalen, char *data)
{
printf("eventtype:%d, eventparam:%d, datalen:%d, data:%s\n", eventtype, eventparam, datalen, data);
if (eventtype == 2)
{
bGetLoaclRes = true;
}
else if (eventtype == 1 && eventparam == 1)
{
C_GetResource(NULL);
}
}
//打印码流回调信息
void streamcallback(long handle, int datatype, int datalen, unsigned char *data, long userdata)
{
printf("handle:%ld, datatype:%d, datalen:%d, userdata:%ld\n", handle, datatype, datalen, userdata);
}
int main()
{
int iRet = -1;
//初始化设置 SIP服务器的IP、端口、地址编码(必须为200平台类型)、用户名、密码、事件回调函数
iRet = C_InitSDK((char *)"192.168.1.230", 5061, (char *)"11000000002000000001", (char *)"11000000002000000001", (char *)"12345678a", enventcallback);
printf("1.InitSDK return :%d\n", iRet);
//等待资源推送
while (true)
{
if (bGetLoaclRes)
break;
sleep(1);
}
sleep(5);
//获取已经推送的所有资源
printf("1.GetLocalResource Body:%s\n", C_GetLocalResource(NULL));
sleep(10);
//开始实时视频1 ID需要自己根据推送获取
long lrealhandle1 = C_RealVideoStart((char *)"11010000001310000001", streamcallback, 1024);
printf("RealVideoStart lrealhandle:%d\n", lrealhandle1);
//开始实时视频2 ID需要自己根据推送获取
long lrealhandle2 = C_RealVideoStart((char *)"11010000001310000002", streamcallback, 1024);
printf("RealVideoStart lrealhandle:%d\n", lrealhandle2);
sleep(5);
//停止实时视频1
if (lrealhandle1 > 0)
C_RealVideoStop(lrealhandle1);
//停止实时视频2
if (lrealhandle2 > 0)
C_RealVideoStop(lrealhandle2);
sleep(1);
//PTZ控制
C_Ptz((char *)"11010000001310000002", 1, 100);
sleep(1);
//PTZ控制结束
C_Ptz((char *)"11010000001310000002", 2, 0);
sleep(5);
//查询历史视频
printf("2.C_HisVideoQuery Body:%s\n", C_HisVideoQuery((char *)"11010000001310000002", (char *)"2017-12-06T09:26:00", (char *)"2017-12-06T09:50:00"));
sleep(5);
//点播历史视频
long hishandle1 = C_HisVideoStart((char *)"11010000001310000002", (char *)"2017-12-06T09:26:00", (char *)"2017-12-06T09:50:00", streamcallback, 2048, 0);
printf("C_HisVideoStart hishandle1:%d\n", hishandle1);
sleep(5);
if (hishandle1 > 0)
{
//点播控制
// 1.点播慢放控制
C_HisVideoCtrl(hishandle1, 3, 2);
sleep(5);
// 2.点播暂停控制
C_HisVideoCtrl(hishandle1, 4, 0);
sleep(10);
// 3.点播播放控制
C_HisVideoCtrl(hishandle1, 1, 0);
sleep(10);
// 4.点播快放控制
C_HisVideoCtrl(hishandle1, 2, 4);
sleep(10);
// 5.点播跳转控制
C_HisVideoCtrl(hishandle1, 5, 500);
sleep(10);
// 6.点播快放控制
C_HisVideoCtrl(hishandle1, 1, 0);
}
sleep(10);
//结束点播控制
C_HisVideoStop(hishandle1);
sleep(50);
C_UnInitSDK();
return 0;
}

沉睡的思绪
- 粉丝: 536
最新资源
- 网络信息生态及谣言的应对方案.docx
- 教育信息化时代下高职英语教育的现状与发展对策研究.docx
- 轮机自动化课件第九章.ppt
- 现代企业融资租赁--通信业融资的捷径.doc
- 摭谈互联网平台支撑下的小学英语作业有效性研究.docx
- 【ppt模板】蓝色科智慧城市建设发展报告商业计划书模板.pptx
- (源码)基于Arduino的NodeMCU继电器控制器.zip
- 三层楼电梯PLC控制系统设计与调试.doc
- 关于银行网络安全的若干实践问题.docx
- 简易录播--AI人工智能教学行为分析评测系统.doc
- 二元拉格朗日插值Fortran程序设计实验.doc
- 通信管道试通记录表.doc
- 论高校人事管理信息化建设.docx
- 山东新华电脑学院——网络传媒高设计师介绍.doc
- 基于中学信息技术课培养学生计算机思维的实践研究.docx
- 项目管理要注意在不同阶段的重点.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



- 1
- 2
- 3
前往页