Linux环境搭建Nginx+FFmpeg,使用Java在WEB端实现视频播放

Linux环境搭建Nginx+FFmpeg,使用Java在WEB端实现视频播放_第1张图片
FFmpeg

描述:Linux环境搭建Nginx+FFmpeg服务,实现rtsp流转hls流,并使用Java在WEB端,实现H5 video视频播放

1、FFmpeg安装

官网:http://ffmpeg.org/releases
参考:
Nginx+FFmpeg实现rtsp流转hls流,在WEB通过H5 video实现视频播放
Linux下ffmpeg安装教程

(1)到官网下载ffmpeg-4.2.2.tar.gz文件,通过rz命令上传到/sorf/ffmpeg/下

(2)解压

$ tar zxvf ffmpeg-4.2.2.tar.gz

(3)安装

$ cd ffmpeg-4.2.2/
$ ./configure --enable-shared --prefix=/opt/ffmpeg

如果出现以下错误,则需要安装yasm


Linux环境搭建Nginx+FFmpeg,使用Java在WEB端实现视频播放_第2张图片
image.png

(4)安装yasm

1)下载:http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
2)解压:把下载下来的压缩包进行解压
3)切换路径: cd yasm-1.3.0
4)执行配置: ./configure
5)编译:make
6)安装:make install(提示:Permission denied,就执行sudo make install)
参考:https://www.cnblogs.com/brady-wang/p/11770512.html

(5)继续安装ffmpeg

切换到ffmpeg目录下

$ ./configure --enable-shared --prefix=/opt/ffmpeg
$ make
$ make install

(6)创建一个文件并写入lib路径

vim /etc/ld.so.conf.d/ffmpeg.conf 

在ffmpeg.conf文件中添加一行内容:/opt/ffmpeg/lib
保存并退出(wq),然后执行 ldconfig 使配置生效
现在再次执行./ffmpeg -version 显示就正常了

(7)配置软链接

ln -s /opt/ffmpeg/bin/ffmpeg /usr/local/bin/ffmpeg

再次执行ffmpeg就可以显示版本信息了

2、Nginx安装

参考:Centos7下安装Nginx

(1)下载:nginx-1.12.2.tar.gz

(2)通过rz命令上传到/usr/local

(3)安装依赖的软件库

1) gcc
$ yum install gcc
2)pcre-devel
$ yum install -y pcre pcre-devel
3)zlib-devel
$ yum install -y zlib zlib-devel
4)openssl-devel
$ yum install -y openssl openssl-deve

(4)解压

$ tar -zxvf nginx-1.12.2.tar.gz

(5)配置

这里使用默认配置

$ cd nginx-1.12.2
$ ./configure

(6)编译安装

$ make
$ make install

(7)查找安装路径并进入

$ whereis nginx

(8)启动停止、重新加载配置文件

进入安装路径下的sbin目录

$ cd sbin/

启动:

$ ./nginx

停止:

$ ./nginx -s quit

重新加载配置文件:

$ ./nginx -s reload

(9)测试

$ curl 127.0.0.1

3、Nginx配置

(1)修改配置文件

nginx/conf/nginx.conf,在http --> server下增加以下配置:

# ffmpeg生成hls流的http访问配置
location /hls {
    #若nginx\conf\mime.types中没有配置如下type,请加上,或直接在mime.types加
    #types{
    #   application/vnd.apple.mpegurl m3u8;
    #   application/x-mpegURL m3u8;
    #   video/mp2t ts;
    #}
    root html;
    #add_header Cache-Control no-cache;
    add_header Access-Control-Allow-Origin *;
}

启动nginx服务
注: 使用ffmepg转流需要指定目标路径为上面配置的nginx/html/hls

3、Java源码实现

参考:
FFCH4J源码下载
FFCH4J源码解析

Linux环境搭建Nginx+FFmpeg,使用Java在WEB端实现视频播放_第3张图片

你可能感兴趣的:(Linux环境搭建Nginx+FFmpeg,使用Java在WEB端实现视频播放)