ffmpeg实现rtmp推流(linux环境)
一.安装ffmpeg
参考:linux安装并配置ffmpeg
二.搭建rtmp推流环境
1.下载nginx-rtmp-module
nginx-rtmp-module是一个nginx的插件,让nginx可支持rtmp协议。
链接:nginx-rtmp-module插件下载链接
提取码:w771
下载完成后进行解压,然后放在和nginx安装目录(不是nginx解压目录)同一等级下。
2.安装包含nginx-rtmp-module模块的nginx
参考:linux(centos)下安装nginx
注意:参考linux(centos)下安装nginx安装时,有一处命令要修改,既安装nginx时带上nginx-rtmp-module模块。
把下图中的./configure命令改为:
./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module
3.安装完成后目录结构
三.在nginx配置文件配置rtmp
在nginx.conf文件加上如下代码:
rtmp{server {listen 1935;chunk_size 4000;application live {live on;record off;allow play all;}}
}
下面是完整的配置文件:
#user nobody;
worker_processes 1;#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;#pid logs/nginx.pid;events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;#log_format main '$remote_addr - $remote_user [$time_local] "$request" '# '$status $body_bytes_sent "$http_referer" '# '"$http_user_agent" "$http_x_forwarded_for"';#access_log logs/access.log main;sendfile on;#tcp_nopush on;#keepalive_timeout 0;keepalive_timeout 65;#gzip on;include vhosts/*.conf;#server {#listen 80;#server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;#location / {# root html;# index index.html index.htm;#}#error_page 404 /404.html;# redirect server error pages to the static page /50x.html##error_page 500 502 503 504 /50x.html;#location = /50x.html {# root html;#}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000##location ~ \.php$ {# root html;# fastcgi_pass 127.0.0.1:9000;# fastcgi_index index.php;# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;# include fastcgi_params;#}# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {# deny all;#}#}# another virtual host using mix of IP-, name-, and port-based configuration##server {# listen 8000;# listen somename:8080;# server_name somename alias another.alias;# location / {# root html;# index index.html index.htm;# }#}# HTTPS server##server {# listen 443 ssl;# server_name localhost;# ssl_certificate cert.pem;# ssl_certificate_key cert.key;# ssl_session_cache shared:SSL:1m;# ssl_session_timeout 5m;# ssl_ciphers HIGH:!aNULL:!MD5;# ssl_prefer_server_ciphers on;# location / {# root html;# index index.html index.htm;# }#}}rtmp{server {listen 1935;chunk_size 4000;application live {live on;record off;allow play all;}}
}
四.测试
1.把测试视频放在如下位置
2.执行ffmpeg推流命令
ffmpeg -re -i 96c72c9f00dba32ecfc1fa101b2988cd.mp4 -f flv rtmp://182.254.242.219:1935/live
3.使用VLC查看结果
ffmpeg实现rtmp推流(linux环境)相关推荐
- 利用ffmpeg实现rtmp推流直播
我们这次利用ffmpeg实现rtmp推流(最终推流地址统一为rtmp://127.0.0.1:1935/live/123) 1.首先下载ffmpeg和ffplay 官方下载链接为:FFmpeg 下载后 ...
- ffmpeg rtmp 封装发送函数_基于FFmpeg进行RTMP推流(一)
简介 开发环境 FFmpeg sdk下载 项目配置 代码流程 开发环境 vs 2017 FFmpeg sdk下载 下载地址 这里下载3.3.3 - 32bit - share和Dev 8.png Sh ...
- 随身wifi刷debian系统后用ffmpeg进行rtmp推流的一些tip(有关水印和卡顿)
跟风入了随身wifi,虽然只有1.2主频,512内存和4G存储,性能弱鸡,但9块9包邮的价格,立马让它香了起来. 实测,随身wifi的性能用ffmpeg进行rtmp推流毫无压力,cpu和内存占用都极低 ...
- python利用ffmpeg进行rtmp推流直播
思路: opencv读取视频 -> 将视频分割为帧 -> 将每一帧进行需求加工后 -> 将此帧写入pipe管道 -> 利用ffmpeg进行推流直播 pipe管道: 啥是pipe ...
- 【FFmpeg】rtmp推流
参考 -参考 编码+rtmp推流 _ffmpeg_process = subprocess.Popen(('/home/ubuntu/encoder/bin/ffmpeg','-re', '-i', ...
- Windows下用FFmpeg+nginx+rtmp搭建直播环境 实现推流、拉流(超简单教程)
https://blog.csdn.net/qq_32381727/article/details/81078213
- FFmpeg入门 - rtmp推流
FFmpeg入门 - 视频播放_音视频开发老马的博客-CSDN博客介绍了怎样用ffmpeg去播放视频. 里面用于打开视频流的avformat_open_input函数除了打开本地视频之外,实际上也能打 ...
- 利用ffmpeg实现rtmp推流
https://www.jianshu.com/p/c141fc7881e7 ffmpeg 常见命令功能: 查看电脑设备: ffmpeg -list_devices true -f dshow ...
- ffmpeg摄像头Android,Android平台下使用FFmpeg进行RTMP推流(摄像头推流)
简介 今天要给大家介绍如何在Android平台下获取采集的图像,并进行编码推流.同时项目工程也是在之前的代码基础上新增功能 QQ截图20171124114855.png 打开摄像头并设置参数 具体代码 ...
最新文章
- Python培训之就业面试题分享
- 自然语言处理的蓬勃发展及其未来
- SQLStoredProc调用数据库存储过程
- 5GS 协议栈 — PFCP 协议 — URR 用量上报规则
- Android WebView 性能优化
- 0也显示曲线 mpchart_BenQ 明基专业摄影显示器SW270C开箱评测体验
- vue 生成发布包_年轻人如何从0到1封装发布一个vue组件__Vue.js
- 人生重开模拟器微信小程序源码
- Jquery,Ready函数.
- volley源代码解析(六)--HurlStack与HttpClientStack之争
- 如何在Ubuntu中更改用户密码
- 解析数论 1: Fourier积分和Fourier变换
- 数学建模论文书写总结
- Centos7下载文件恢复工具 extundelete
- SecureCRT安装破解教程
- ps小白修改矢量图颜色
- 钱理群: 真正的鲁迅是沉默的
- Win10去除资源管理器导航窗格多余的文件夹(3D对象、桌面、图片等)
- MTL多目标学习介绍综述等
- xch-sboot单体服务架子
热门文章
- 箱线图入门,一文看懂箱线图,matplotlib画箱线图
- win10打开蓝牙_WIN10的蓝牙不能用,开启蓝牙后不能识别到其它设备,蓝牙只能匹配手机找不到耳机怎么办?机。...
- 饿了么API对接,例:导出评论,同步数据到数据库
- Android 设置延时操作
- ZTE U880刷固件,安装GSF
- 滴滴开源AoE:一种快速集成AI的终端运行环境SDK
- Linux系统与网络、磁盘参数和日志监控等命令详解二
- 京东数科铁路巡检机器人 亮相2019上海国际先进轨道交通展
- python线条粗细_更改matplotlib pyplot图例中的线条宽度
- 用Python写个石头剪刀布的小游戏