TestsTested | ✗ |
LangLanguage | Obj-CObjective C |
License | MIT |
ReleasedLast Release | Feb 2017 |
Maintained by vbyte.
vbyte云视频解决方案,可帮助用户直接使用经过大规模验证的直播流媒体分发服务,通过vbyte成熟的P2P技术大幅节省带宽,提供更优质的用户体验。开发者可通过SDK中简洁的接口快速同自有应用集成,实现iOS设备上的视频P2P加速功能。
IOS SDK托管于第三方平台CocoaPods上,依赖部署是非常简单的。凭借这设计良好的接口,在使用上也非常方便。
# 参考:https://git-lfs.github.com/
# 如果你使用的是Homebrew,可以如下安装
$ brew install git-lfs
# 系统默认使用MacPorts安装
$ port install git-lfs
# 安装完别忘记先在系统内初始化,只需要执行一次,以后每个项目都可以使用
$ git lfs install
pod 'VbyteP2P', '~> 1.0.3'
pod install
cd /path/to/your/application
pod install
#import <VbyteP2P/P2PModule.h>
即可使用// Example: 程序的入口AppDelegate.m
#import "AppDelegate.h"
#import <VbyteP2P/P2PModule.h>
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// do something other...
// 初始化P2P
NSString *appID = @"577cddf55aa77e385435dcff";
NSString *key = @"ZiMAWNyAdKhjATiK";
NSString *secret = @"NxSMiy6VUqRel1Cf5OLoCJSjZDQFgaC4";
[P2PModule init:appID appKey:key appSecretKey:secret];
return YES;
}
// something other function...
- (void)applicationWillTerminate:(UIApplication *)application
{
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
// 释放P2P模块
[P2PModule release];
}
@end
直播大家都很熟悉,观众一进来都是直接看到最新的直播内容,本是没有暂停、随机播放(回看)功能。但是应时移回看需求的增长,我们的SDK也提供了时移回看的方式,详细见API文档。
// Example: LiveVideoController.m
#import <VbyteP2P/P2PModule.h>
- (void)viewDidLoad
{
[super viewDidLoad];
// do something others as init player and view
[LiveController load:[channel absoluteString] resolution:@"UHD" listener:^(NSURL *url){
if (url != nil) {
self.url = url
[self.player prepareToPlay:[url absoluteString]];
}
}];
}
// Example: LiveVideoController.m
#import <VbyteP2P/P2PModule.h>
- (void)viewDidDisappear:(BOOL)animated {
[super viewDidDisappear:animated];
[self.player shutdown];
[self removeMovieNotificationObservers];
// 直播停止的地方
[LiveController unload];
}
点播与直播最大的不同是点播视频是固定的,包括文件大小固定、内容固定、视频时长固定,有暂停、恢复、随机播放等操作。
// Example: VodVideoController.m
#import <VbyteP2P/P2PModule.h>
- (void)viewDidLoad
{
[super viewDidLoad];
// do something others as init player and view
[VodController load:[url absoluteString] resolution:@"UHD" startTime:0 listener:^(NSURL *url){
if (url != nil) {
self.url = url
[self.player prepareToPlay:[url absoluteString]];
}
}];
}
// 在播放器暂停按钮按下时,应调用
[VodController pause];
// 在播放器播放按钮按下时,恢复播放
[VodController resume];
// Example: VodVideoController.m
#import <VbyteP2P/P2PModule.h>
- (void)viewDidDisappear:(BOOL)animated {
[super viewDidDisappear:animated];
[self.player shutdown];
[self removeMovieNotificationObservers];
// 直播停止的地方
[VodController unload];
}
更多高级功能诸如开启debug开关、事件监听、直播时移等请参见IOS版API文档,然后就可以尽情地使用P2P SDK带来的便利功能吧!
感谢阅读本篇文档,希望能帮您尽快上手IOS SDK的用法,再次欢迎您使用月光石P2P加速SDK!
温馨提示:如果你需要任何帮助,或有任何疑问,请联系我们。