萤石云是一个可提供视频云技术的开放式平台。在此平台上开发者可以利用丰富的API接口和SDK,创建自己的应用来满足特定的需求。其中,萤石云SDK提供了iOS和Android的开发工具包,能够帮助开发者方便地集成视频、音频和云存储等功能。
萤石云的开放性让开发者能够以最短的时间内开发自己的视频监控应用,同时节省了开发成本。本文将介绍如何使用萤石云SDK来开发一个自己的视频监控应用。
一、创建应用及获取AppKey和Secret
首先,开发者需要在萤石云平台申请自己的应用,获取到AppKey和Secret。在应用创建之前,需要先注册萤石云的开发者账号。之后,开发者只需要进入开发者控制台,创建应用,填写相关信息即可。
二、SDK集成
萤石云SDK提供了iOS和Android两个版本,本文以iOS版本SDK为例进行说明。在下载并解压SDK之后,将SDK导入到Xcode项目中,并添加必要的系统框架:
- AVFoundation.framework
- CoreMedia.framework
- CoreVideo.framework
- SystemConfiguration.framework
- MobileCoreServices.framework
- MediaPlayer.framework
- AudioToolbox.framework
- libc++.dylib
- libz.dylib
并在项目的Build Settings中添加如下标志:
- Other Linker Flags中添加 -ObjC
- Build Active Architecture Only改为NO
- Enable Bitcode改为NO
完成以上操作后,SDK集成就基本完成了。
三、设备配对及实时预览
由于萤石云SDK提供的是云存储服务,因此,在使用SDK进行视频监控开发前,首先需要完成设备与云端之间的配对,也就是设备的注册和添加。
在配对完成后,就可以进行实时预览。SDK提供了ZYPlayView控件,可以方便地实现预览控制。在ViewController中添加播放控件并设置相应的属性:
ZYPlayView *playView = [[ZYPlayView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:playView];
// 监听播放状态
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onPlayStatusChanged:) name:kSDK_PreviewStatusChange object:nil];
// 开始实时预览
EZPlayer *player = [EZOpenSDK createPlayerWithDeviceSerial:deviceSerial cameraNo:cameraNo];
[player setPlayerView:playView];
[player startRealPlay];
四、云存储相关API
除实时预览外,萤石云SDK还提供了许多云存储相关的API,如云存储录像查询、下载、删除等。以下是相关API的介绍:
- EZOpenSDK getCloudRecordsFromDeviceTime:设备云存储录像查询
- EZOpenSDK downloadCloudRecord:设备云存储录像下载
- EZOpenSDK deleteCloudRecords:删除设备云存储录像
在调用以上API时,需要提供相应的参数:设备序列号、通道号、云存储开始时间、云存储结束时间等。
通过调用以上API,开发者可以非常方便地集成云存储相关的功能到自己的应用中。
总结
本文介绍了如何使用萤石云SDK来开发自己的视频监控应用。通过SDK提供的API接口和功能,开发者可以快速地创建出既能够实现实时预览又能够管理云存储录像的应用。让我们一起来开发更加智能、高效的视频监控应用吧!