1.安装Ubuntu系统
我是在虚拟机中安装的ubuntu系统的,所以我需要先安装一个虚拟机。
下载VMware虚拟机
下载ubuntu.ios
安装ubuntu
指导地址 https://jingyan.baidu.com/article/14bd256e0ca52ebb6d26129c.html
(安装的时候会设置用户账号密码,ubuntu中,密码是默认不显示的,输出正确密码直接Enter就行了)
内存不够用可以自己去设置
安装git和yasm,终端执行(Ctril + Alt + T)以下命令:
sudo apt-get update
sudo apt-get install git
sudo apt-get install yasm
下载安装JDK:
原文链接:https://www.cnblogs.com/a2211009/p/4265225.html
下载安装Android NDK和SDK:
1.下载Android NDK:
执行命令行: wget -c http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin
定位到下载的ndk.bin的文件夹,右键在终端打开:
执行命令行:sudo ./android-ndk-r10e-linux-x86_64.bin
2.下载Android SDK:
执行命令行:wget http://dl.gmirror.org/android/android-sdk_r24.4.1-linux.tgz
右键提取,或者执行命令行:tar-zxvfandroid-sdk_r24.4.1-linux.tgz
3.配置环境:
为了方便,我将NDK和SDK放在了同一个文件夹下,文件名也稍作了修改
定位文件位置
配置环境变量:
先打开配置文件。输入命令行:
sudo gedit /etc/profile //打开profile文件
添加配置信息:
export ANDROID_NDK=/home/yh/config/android-ndk-r10e
export ANDROID_SDK=/home/yh/config/android-sdk-linux
export PATH=$PATH:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools:$ANDROID_NDK:$PATH
保存文件
检查JDK环境是否配置成功:
java -version
检查NDK环境是否配置成功:
ndk-build
下载Ijkplayer,可以根据Bilibili文档上来执行:
https://github.com/Bilibili/ijkplayer
在执行最后一句命令行 ./compile-ijk.sh all之前,需要修改一些东西
1.首先需要支持rtsp格式的播放流
打开下载下来的ijkplayer文件夹,打开module-lite.sh文件
添加支持
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=rtp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=tcp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=rtsp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=sdp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=rtp"
2.修改ff_ffplay.c文件
修改ijklivehook.c
修改完成后开始编译代码:
在compile-ijk.sh的文件夹下打开终端,执行命令行./compile-ijk.sh all
等待编译成功。成功后直接使用文件夹中的ijkplayer就好了
我是直接运行的ijkplayer里面的demo播放我的网络摄像头地址:运行效果如下:
基本上是秒开,延迟2s左右
第一次弄这个,好多不会的,整个过程中遇到一些问题,感谢老武前辈,大斌哥的帮助。