网站首页 > 精选教程 正文
一、linux安装ffmpeg
1. yum源安装yasm汇编编译器
yum -y install yasm
1.1 检查是否安装成功
yasm --version
2. 下载安装ffmpeg
2.1 两种下载方式都可
2.1.1 官网下载压缩包ffmpeg官网下载
2.1.2 linux服务器下载ffmpeg所有版本下载
wget http://www.ffmpeg.org/releases/ffmpeg-5.0.1.tar.gz
2.2 解压并安装
2.2.1 找到下载的目录并进行解压
tar -xvf ffmpeg-5.0.1.tar.gz
2.2.2 进入解压目录并进行编译安装
prefix: 指定安装路径
cd ffmpeg-5.0.1
./configure --prefix=/home/ffmpeg
make
make install
相关学习资料推荐,点击下方链接免费报名,先码住不迷路~】
音视频免费学习地址:FFmpeg/WebRTC/RTMP/NDK/Android音视频流媒体高级开发
【免费分享】音视频学习资料包、大厂面试题、技术视频和学习路线图,资料包括(C/C++,Linux,FFmpeg webRTC rtmp hls rtsp ffplay srs 等等)有需要的可以点击788280672加群免费领取~
2.3 配置环境变量
vi /etc/profile
输入i进入编辑模式,在最后添加
export FFMPEG_HOME=/home/ffmpeg
export PATH=$PATH:$FFMPEG_HOME/bin
Esc键退出编辑模式,输入:wq保存
使环境变量生效
source /etc/profile
2.4 检查是否安装成功
ffmpeg -version
二、linux安装pm2
1. 下载安装node
官网下载nodejs官网下载
2. 上传至linux并解压
tar -xvf node-v16.15.1-linux-x64.tar.xz
tar -xvf node-v16.15.1-linux-x64.tar
mv node-v16.15.1-linux-x64 node
2.1 建立软连接
ln -s /home/node/bin/node /usr/local/bin
ln -s /home/node/bin/npm /usr/local/bin
2.2 配置环境变量
vi /etc/profile
输入i进入编辑模式,在最后添加
export NODE_HOME=/home/node
export PATH=$PATH:$NODE_HOME/bin
Esc键退出编辑模式,输入:wq保存
使环境变量生效
source /etc/profile
2.3 检查是否安装成功
node -v
npm -v
3. npm安装pm2
npm install pm2 -g
查看版本号
pm2 -v
三、后端nodejs代码
百度网盘链接:nodejs-java
提取码:flti
3. 下载后上传至linux并解压
unzip flvjs-master.zip
注意修改ffmpeg安装路径及websocket监听的端口号
3.1 pm2启动nodejs
进入ffmpeg解压目录启动
pm2 start index.js
查看启动列表
pm2 list
四、前端vue代码
百度网盘链接:flvjs-vue
提取码:vxkr
4. 修改地址
将vue项目打包上传至linux服务器
五、nginx代理websocket
修改nginx/conf/nginx.conf文件
server {
listen 52000;
server_name localhost;
# 前端代理
location / {
root /home/frontend/dist;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
# 后端代理
location /api {
proxy_read_timeout 30s;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://localhost:52001;
}
# websocket代理
location /rtsp {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://localhost:52100;
}
error_page 404 /index.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
进入nginx/bin目录下启动nginx
./nginx
访问nginx代理地址localhost:52000即可播放视频
其原理是后端用ffmpeg将rtsp视频流转换为flv,然后通过websocket传输flv视频流,然后前端通过websocket获取到视频流后,使用flvjs对视频流再一次处理并进行播放,这是一套无插件无flash免费的视频直播解决方案
访问nginx代理地址localhost:52000即可播放视频
其原理是后端用ffmpeg将rtsp视频流转换为flv,然后通过websocket传输flv视频流,然后前端通过websocket获取到视频流后,使用flvjs对视频流再一次处理并进行播放,这是一套无插件无flash免费的视频直播解决方案
原文链接:https://blog.csdn.net/m0_49419441/article/details/125408131
- 上一篇: Nginx 为什么这么快? nginx为什么这么快
- 下一篇: 免费放送啦!架构师大型项目实战视频
猜你喜欢
- 2024-10-05 不会搭建视频直播服务?教你十分钟实现视频推流拉流服务
- 2024-10-05 Node.js教程分享一下视频 nodejs教学视频
- 2024-10-05 好程序员00后自学Java经验分享,Java零基础视频推荐大全!
- 2024-10-05 实现浏览器播放rtsp视频流的解决方案
- 2024-10-05 「高淇Java300集」2022年新版,全套教学视频,零基础教学
- 2024-10-05 5 分钟完成 Nginx 直播服务部署(直播 + 分流 + 画面水印)
- 2024-10-05 视频直播服务搭建好了?教你快速实现多频道输入输出与权限控制
- 2024-10-05 手把手教你搭建一个流媒体直播服务器《零基础都可以》
- 2024-10-05 免费放送啦!架构师大型项目实战视频
- 2024-10-05 Nginx 为什么这么快? nginx为什么这么快
你 发表评论:
欢迎- 最近发表
-
- 我的世界光影MOD下载(我的世界光影mod下载安装)
- 我的世界1.7/1.8VoxelMap小地图MOD下载
- 我的世界1.7.10多世界 整合包(我的世界1.7.10forge整合包)
- 我的世界1.8最好用的修改器下载(我的世界1.8最好用的修改器下载安装)
- 我的世界更多弯曲动作MOD下载(我的世界更多弯曲动作mod下载手机版)
- 我的世界龙珠MOD下载(我的世界龙珠模组整合包下载)
- 我的世界1.7.10以太2 下载(我的世界以太2mod1.12.2)
- 我的世界虚拟人生MOD下载分享(我的世界虚拟人生下载安装)
- 我的世界无正版账号的简单联机方法(非网易版,仅适用于局域网)
- “我的语言极限,即是我的世界的极限。” ——《On Java》书籍推荐
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)