
前两章我们探讨了如何使用nginx和ngixn的rtmp模块构建直播服务器,并介绍了在android平台上使用ijkplayer作为视频直播播放器的流程。今天,我们将聚焦于在ios平台上如何引入和使用ijkplayer。如果你对我们的直播技术系列感兴趣,欢迎订阅我的头条号——“一点热”。
快速回顾
1. 使用nginx搭建视频直播服务器
2. android上使用ijkplayer与nginx进行视频直播
对于ios平台,我们首先需要在项目中引入ijkplayer。这里以mac环境为例,先安装必要的环境工具:homebrew、git和yasm。安装命令如下:
bash
ruby -e “$(curl -fssl raw./homebrew/install/master/install)”
brew install git
brew install yasm
接下来,从github上克隆ijkplayer的源码到本地:
bash
git clone /bilibili/ijkplayer.git ijkplayer-ios
cd ijkplayer-ios
git checkout -b latest k0.6.0
然后进行初始化脚本并编译:
bash
./init-ios.sh
cd ios
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all
编译完成后,将ijkplayer集成到你的项目中。以项目“yeehotkingprogram”为例,按照以下步骤操作:
1. 打开项目文件。
2. 点击file -> add files to yeehotkingprogram,选择编译好的ijkplayer项目中的ijkmediaplayer目录下的ijkmediaplayer.xcodeproj。如果添加失败,可以尝试直接拖拽该文件到项目中。
3. 添加后,你的项目将包含几个新的文件包和项目工程。
4. 接下来,你需要将一系列的frameworks添加到你的项目中。在项目的target中,按照的提示进行操作,将相关的framework添加到项目中。
现在,你可以开始使用ijkplayer进行直播了。导入相关的头文件并定义一个播放器实例。以下是一个简单的示例代码:
objc
// viewcontroller.h
import
import
@interface viewcontroller : uiviewcontroller
@property(nonatomic, strong) id player;
@end
在播放页面初始化播放器:
objc
// viewcontroller.m
import “viewcontroller.h”
…
self.player = [[ijkffmovieplayercontroller alloc] initwithcontenturl:[nsurl urlwithstring:@”rtmp://your_live_server_url”] withoptions:@{ijkffoptionskey : [ijkffoptions optionsbydefault]}];
self.player.view … // 配置播放器视图属性,如尺寸、缩放模式等
[self.view addsubview:self.player.view];
…
现在你已经配置好了播放器,可以打开nginx服务器并开始使用obs进行推流了。当一切配置正确时,你应该能在ios设备上看到你的直播内容。
这就是在ios平台上使用ijkplayer进行视频直播的基本流程。如果你有任何问题或需要进一步的帮助,请随时留言咨询。欢迎关注我的头条号“一点热”,更多技术分享等你来探索。
