IOS使用ijkPlayer

最近要做一个视频直播的项目,刚刚进入视频坑,开始自己琢磨AVPlayer,使用起来发现还挺多限制的,虽然当然知道要先把基础打好,相关基础链接:

 

网络播放器相关

http://blog.csdn.net/Matthew_Fan/article/category/1200896

 

HLS流媒体开发

http://blog.csdn.net/sdvch/article/details/14047281

 

HLS比较全的中文博客

http://blog.csdn.net/Matthew_Fan/article/category/1200896

 

苹果iOS 开发文档 (HLS)

https://developer.apple.com/streaming/

 

正文

但是急于做出一个demo交工,就简略的查了查攻略- -,发现B站的开源项目ijkPlayer是一个很好借鉴的项目,赶紧下下来试试, 

链接:https://github.com/Bilibili/ijkplayer 

 

具体怎么编译就不一一细说了,自己参照一下文档,这里我主要针对导入ijkplayer包并且使用做一些简单的说明。

完成github上的步骤之后,我们打开ios文件夹下的IJKMediaPlayer工程,发现他的output是一个framework包,那样就轻松了

 

 

build&run以后,将framework包复制取出,可以从右侧栏直接查看路径

 


 

 

或者直接右键进入路径

 


 

 

既然已经取出了framework文件,那么我们就将它导入到我们需要的工程里面,当然,前提是你不打算修改里面的东西,你也可以通过建立workplace加上建立依赖关系导入整个工程文件,省的每次修改都要重复导入包。ps:其他ijkplayerdemo上的包也最好一起导入了,不然可能会编译出错

 


 

之后的内容可以参考ijkdemo中的ijkMoviePlayerViewController实现调用播放器,如果你不需要这么多东西也可以直接像我这样简单写:

ViewController

 

#import<IJKMediaFramework/IJKMediaFramework.h>

 

@interface ViewController : UIViewController

@property (atomic,strong) NSURL *url;

@property (atomic,retain)id<IJKMediaPlayback> player;

@property (weak,nonatomic) IBOutlet UIView*PlayerView;

@property (weak,nonatomic) IBOutlet UIButton*playButton;

 

然后就通过初试化一些基本设置就可以播放了:

1url

2PlayView

3notification

4prepareToPlay

 

简单把界面上的东西部署一下,url等初始化

 

self.url = [NSURLURLWithString:@"http://live.hkstv.hk.lxdns.com/live/hks/playlist.m3u8"];

 

_player =[[IJKFFMoviePlayerController alloc] initWithContentURL:self.urlwithOptions:nil];

UIView *playerView =[_player view];

playerView.frame = self.PlayerView.frame;

playerView.autoresizingMask= UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

 

[self.PlayerView insertSubview:playerViewatIndex:1];

[_playersetScalingMode:IJKMPMovieScalingModeAspectFill];

[self installMovieNotificationObservers];

 

 

别忘记了这个

 

[self.player prepareToPlay];

 

最后在你需要的地方调用播放等接口

 

[self.player play];

 

demo链接:http://download.csdn.net/detail/atomic123/9402481

猜你喜欢

转载自blog.csdn.net/a454431208/article/details/72723800