IJKPlayer安装与配置

来源:互联网 发布:java返回值是什么意思 编辑:程序博客网 时间:2024/05/29 09:59

IJKPlayer是基于FFmpeg的视频直播框架。

1. 下载:

https://github.com/Bilibili/ijkplayer

2. 安装

进入文件夹的根目录,阅读README.md。

首先初始化,运行

./init-ios.sh

然后进入ios目录,运行

./compile-ffmpeg.sh clean

./compile-ffmpeg.sh all

3. 创建项目

在ios目录中创建新的项目

将ios目录下的IJKMediaPlayer项目拖入新的项目


添加Frameworks和Libraries


4. 让项目跑起来

写一个简单的视图控制器

#import "XYViewController.h"@interface LiveViewController : XYViewController@property (nonatomic, copy) NSString * URL;@end
#import "LiveViewController.h"#import <IJKMediaFramework/IJKMediaFramework.h>@interface LiveViewController ()@property(nonatomic, strong) IJKFFMoviePlayerController * player;@end@implementation LiveViewController- (void)viewDidLoad {    [super viewDidLoad];    // Do any additional setup after loading the view from its nib.        self.title = @"直播";        [self setupView];}- (void)viewWillAppear:(BOOL)animated {    [super viewWillAppear:animated];        [self.player prepareToPlay];}- (void)viewWillDisappear:(BOOL)animated {    [super viewWillDisappear:animated];        [self.player shutdown];}- (void)didReceiveMemoryWarning {    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}#pragma mark - Setup- (void)setupView {    // 这个一定要有,options是对数据的处理,videotoolbox解码,设置音频视频等属性,都要有这个数据    IJKFFOptions * options = [IJKFFOptions optionsByDefault];    IJKFFMoviePlayerController * player = [[IJKFFMoviePlayerController alloc] initWithContentURL:[NSURL URLWithString:self.URL] withOptions:options];    player.view.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;    player.view.frame = self.view.bounds;    player.scalingMode = IJKMPMovieScalingModeAspectFit;    // 如果是直播,最好不让他自动播放,如果YES,那么就会自动播放电影,不需要通过[self.player play];就可以播放了    // 但是如果NO,我们需要注册通知,然后到响应比较合适的地方去检测通知,然后必须通过[self.player play];手动播放    player.shouldAutoplay = YES;    self.player = player;    self.view.autoresizesSubviews = YES;    [self.view addSubview:self.player.view];}@end
传入直播地址,运行项目。
原创粉丝点击