首页
/ 【亲测免费】 IJKPlayer 使用教程

【亲测免费】 IJKPlayer 使用教程

2026-01-30 04:34:10作者:廉彬冶Miranda

1. 项目介绍

IJKPlayer 是一个基于 FFmpeg 的开源媒体播放器项目,适用于 Android 和 iOS 平台。本项目在 B 站 ijkplayer 的基础上进行了优化和改进,将依赖库编译成静态库,并提供了预编译的 Android 平台的 ijkplayer.aar 和 iOS 平台的 IJKMediaFramework.xcframework。本项目支持最新的安卓15和iOS18系统。

2. 项目快速启动

iOS 平台

首先,使用 CocoaPods 安装 IJKMediaFramework:

pod "IJKMediaFramework", :podspec => 'https://github.com/debugly/ijkplayer/releases/download/k0.8.9/IJKMediaFramework.spec.json'

然后,运行以下命令初始化子模块并编译 FFmpeg:

git submodule update --init
cd ios
./install-ffmpeg.sh

最后,使用 Xcode 打开工程:

open IJKMediaDemo/IJKMediaDemo.xcodeproj

Android 平台

首先,下载预编译的 ijkplayer.aar 文件:

https://github.com/debugly/ijkplayer/releases/download/k0.8.9/ijkplayer-cmake-release.aar

然后,运行以下命令初始化子模块并编译 FFmpeg:

git submodule update --init
cd android
./install-ffmpeg.sh

最后,使用 Android Studio 打开 ijkplayer 目录工程。

3. 应用案例和最佳实践

IJKPlayer 可以用于播放本地或网络视频文件,以下是一个简单的播放器实现:

// 创建 IJKPlayer 实例
IjkMediaPlayer ijkMediaPlayer = new IjkMediaPlayer();

// 设置播放路径
ijkMediaPlayer.setDataSource("http://example.com/video.mp4");

// 准备播放器
ijkMediaPlayer.prepare();

// 开始播放
ijkMediaPlayer.start();

在实际项目中,您可能需要根据具体需求对播放器进行更多配置和事件处理。

4. 典型生态项目

以下是一些基于 IJKPlayer 的典型生态项目:

  • FSPlayer:IJKPlayer 的升级版,提供了更加强劲的功能。
  • Vitamio:另一个基于 FFmpeg 的 Android 视频播放器库。
  • ExoPlayer:Google 开发的 Android 视频播放器库。
登录后查看全文

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
511
551
docsdocs
暂无描述
Markdown
852
5.69 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.05 K
2.49 K
kernelkernel
deepin linux kernel
C
33
16
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
839
1.28 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
847
1.71 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.25 K
1.38 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.24 K
857
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
510
346
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
787
415