Nginx增加m3u8流视频文件功能模块 推流和拉流
Nginx增加m3u8流视频文件功能模块 推流和拉流
FastDFS分布式文件系统安装和配置_亲测成功
./configure --prefix=/u06/data/apps/nginx-rtmp \--pid-path=/u06/data/logs/nginx-rtmp/nginx.pid \--lock-path=/u06/data/apps/nginx-rtmp/nginx.lock \--error-log-path=/u06/data/logs/nginx-rtmp/error.log \--http-log-path=/u06/data/logs/nginx-rtmp/access.log \--http-client-body-temp-path=/u06/data/temps/nginx-rtmp/client_body_temp \--http-proxy-temp-path=/u06/data/temps/nginx-rtmp/proxy_temp \--http-fastcgi-temp-path=/u06/data/temps/nginx-rtmp/fastcgi_temp \--http-uwsgi-temp-path=/u06/data/temps/nginx-rtmp/uwsgi_temp \--http-scgi-temp-path=/u06/data/temps/nginx-rtmp/scgi_temp \--with-http_stub_status_module \--with-http_ssl_module \--add-module=/u06/data/software/fastdfs-nginx-module/src \--add-module=/u06/data/software/nginx-rtmp-modulemake
make install
Nginx配置
vim /u06/data/apps/nginx-rtmp/conf/nginx.conf
rtmp {server {listen 1935;chunk_size 4000;application hls {live on;hls on;hls_path /u06/data/datas/fdfs/hls;}}
}location /hls {types {application/vnd.apple.mpegurl m3u8;video/mp2t ts;}root /u06/data/datas/fdfs;ngx_fastdfs_module;add_header Cache-Control no-cache;expires -1;}cd /u06/data/datas/fdfs/hls生成aaa.m3u8文件
ffmpeg -re -i /u06/data/datas/fdfs/path0/data/00/00/wKgBMlvaDUCAKnRbAATfpUYN9Vw280.mp4 -vcodec copy -f flv rtmp://192.168.1.50:1935/hls/aaa
Chrome不支持m3u8文件播放,会直接下载,可以安装插件 play-hls-m3u8-1.1.crx
用Safari访问: http://192.168.1.50:9998/hls/aaa.m3u8
过不了多久hls目录下的m3u8文件和ts文件会全部自动清除的, rtmp的实时机制
注意: 其实什么都不用安装也不用改配置,直接用FastDFS的nginx就可以了
cd /u06/data/datas/fdfs/path0/data/00/00
使用ffmpeg生成m3u8文件
ffmpeg -i wKgBMlvaDUCAKnRbAATfpUYN9Vw280.mp4 -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 5 output%03d.ts
访问 http://222.240.10.170:8088/group1/M00/00/00/playlist.m3u8 报400的错误
看nginx的错误日志,可以看到是因为文件名太短了,-----注意-----唉,没看错误日志坑了自己,害我去安装nginx-rtmp-module搞什么hls流,白搞了
报错 filename is too short, length: 23 < 44
FastDFS 的文件名必须在 23到44长度之间
ffmpeg -i /u06/data/datas/fdfs/path0/data/00/00/wKgBMlvaDUCAKnRbAATfpUYN9Vw280.mp4 -c copy -map 0 -f segment -segment_list wKgBMlvaDUCAKnRbAATfpUYN9Vw280.m3u8 -segment_time 5 wKgBMlvaDUCAKnRbAATfpUYN9Vw280-%03d.ts
访问:http://222.240.10.170:8088/group1/M00/00/00/wKgBMlvaDUCAKnRbAATfpUYN9Vw280.m3u8 成功
Nginx增加m3u8流视频文件功能模块 推流和拉流相关推荐
- Centos7下SRS流式服务器搭建、推流、拉流
Centos7下SRS流式服务器搭建.推流.拉流 1. 设计目的 2. 实验内容 3. 实验过程 1. 设计目的 本报告从SRS服务器的部署入手,分析视频摄像头RTSP流媒体协议向RTMP流媒体协议的 ...
- m3u8解析_浅谈m3u8格式视频文件采集
在对某在线视频网站抓包分析时,发现该站点采用m3u8格式进行视频文件传输. 通过m3u8的response可以看到,m3u8格式文件由很多段ts文件组成.那么什么是m3u8,什么是ts呢? M3U8是 ...
- 将.m3u8转换为视频文件保存到本地
实现将一直的视频流文件保存到本地,需要 安装ffmpeg 视频流文件地址 使用ffmpeg安装包中的ffplay.exe实现视频的播放: ffplay http://edge.linknetott.s ...
- 流媒体之从零实现搭建简单流媒体服务器,推流,拉流播放全景视频
一.直播与点播 直播:在我的理解中是实时录制的内容,类似各个晚会的实时直播过程,在现场采集图像的同时传输影像到网络上. 点播:是提前录制完成的内容,类似某些直播平台上根据观众的需求播放某些电影或经典电 ...
- 通过Nginx实现直播软件源码的推流和拉流
推流和拉流是直播软件源码实现直播的重要步骤,今天我们分析一下如何通过Nginx实现直播软件源码的推拉流. 理论介绍 1.RMTP, Real Time Messaging Protocol 实时消 ...
- windows下ffmpeg结合Nginx搭建RTMP,直播中的推流和拉流
windows下ffmpeg结合Nginx搭建RTMP,直播中的推流和拉流 推流和拉流的概念 以及RTMP协议 在直播中,一般需要三个角色:主播,服务器,用户.主播通过推流将数据推到服务器上,而用户可 ...
- 视频推流、拉流相关技术
这里写自定义目录标题 视频的推流与拉流 webrtc 视频的推流与拉流 拉流是指服务器已有直播内容,用指定地址进行拉取的过程. 推流指的是把采集阶段封包好的内容传输到服务器的过程,其实就是将现场的视频 ...
- ffmpeg rtmp 花屏_音视频系列6:ffmpeg多线程拉流
本文与csdn博客同步:https://blog.csdn.net/Hanghang_/article/details/105302384,欢迎关注,点赞,评论. 前言 本篇博客是音视频系列的续集与改 ...
- Web端阿里云音视频通信推流、拉流demo
请先阅读官网文档阿里云音视频通信 前提:一些前期的准备工作需要后端人员去操作.下面我只要介绍Web端推流和拉流的实现方式 一.推流 首先请从官网下载最新sdk,添加到同层目录如下图 <!DOCT ...
最新文章
- 不错的工具:Reflector for .NET
- js的时间 java怎么处理,JS实现处理时间,年月日,星期的公共方法示例
- pytorch 维度变化的时候应该使用什么方法permute
- 不用GD32?我把STM32换成了国产MM32
- python 网格_Python | 网格到情节
- 原生js追加html代码,原生js动态添加元素
- POI(兴趣点)抓取工具
- 复现awvs——CVE-2020-1938(CNVD-2020-10487)tomcat ajp 文件包含漏洞
- python弹球游戏实验报告_Python游戏练习之弹球示例
- java怎么编写木马,实现简单木马免杀(示例代码)
- AAC 音频数据结构实例分析:
- 设置自动清理mysql binlog日志_自动清理MySQL binlog日志
- 虚拟服务器欠费是什么原因,辟谣:Elysium解释近期服务器崩溃的原因 非服务器欠费 而是闪电...
- 八皇后问题(又名: 高斯八皇后)
- C#学习笔记之从入门到精通
- 情侣纪念日网站html5源码教程
- Java接入支付宝扫码支付
- Matlab中读取excel表格数据
- 膳食纤维之短链脂肪酸
- 怎样才能设计一个“易用性”好的网站?