Nginx配置视频服务器

 server
{
listen ;
server_name localhost;
location /hls{
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers X-Requested-With;
add_header Access-Control-Allow-Methods GET,POST,OPTIONS;
types{
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
alias /data/hls;
expires -;
add_header Cache-Control no-cache;
}
access_log off;
}
}

FFmpeg拉流转码

ffmpeg -re  -rtsp_transport tcp -i 'rtsp://{IP}:9090/dss/monitor/params?cameraid={设备ID}${管道}&substream={码流}' \
        -c copy -map 0 -f segment -segment_list /data/hlstest.m3u8 -segment_list_flags +live -segment_time 10 -hls_list_size 20 /data/hls/output%03d.ts
-segment_list 配置输出的列表文件名
-segment_time 切片时长
-hls_list_size 保存最后切片数量

FFmpeg拉流推送HLS服务

ffmpeg -re  -rtsp_transport tcp -i 'rtsp://112.85.138.10:9090/dss/monitor/params?cameraid=1000401$0&substream=1' \
-vcodec copy  -vprofile baseline  -f flv -s 1280x720 -segment_list_flags +live -segment_time 10 -hls_list_size 20 'rtmp://192.168.200.31:28099/hls/test2'
-segment_list 配置输出的列表文件名
-segment_time 切片时长
-hls_list_size 保存最后切片数量

HLS服务Nginx服务器

1下载nginx-rtmp-module

yum install git

git clone https://github.com/arut/nginx-rtmp-module.git  

2下载编译nginx

yum -y install pcre-devel openssl openssl-devel gcc gcc-c++ 
wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf nginx-1.8.1.tar.gz
cd nginx-1.8.1
./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module
make && make install
3修改nginx.conf

worker_processes 8;

events {
worker_connections 1024;
}
rtmp {

server {

listen 28011;
chunk_size 4000;
# TV mode: one publisher, many subscribers
application mylive {
# enable live streaming
live on;
}
application hls {
live on;
hls on;
hls_path /data/hls;
hls_fragment 5s;
}
}
}

http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 28012;
server_name localhost;

location /hls{
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers X-Requested-With;
add_header Access-Control-Allow-Methods GET,POST,OPTIONS;
types{
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
alias /data/hls;
expires -1;
add_header Cache-Control no-cache;
}

}

access_log off;
}


相关技术推荐 视频拉流 Linux安装FFmpeg
海康&大华&DSS视频拉流-RTSP转RTMP多媒体播放技术
广告植入
C:\>ffmpeg.exe.lnk -i C:\Users\Administrator\Desktop\视频\zhgd.mp4 -c:v libx264
-c:a aac -strict - -hls_list_size -t : -hls_time -f hls c:/test.m3u8
												

ffmpeg+HLS实现直播与回放的更多相关文章

  1. 收藏:视频网站(JavaEE+FFmpeg)/Nginx+ffmpeg实现流媒体直播点播系统

    FFmpeg安装(windows环境)http://www.cnblogs.com/xiezhidong/p/6924775.html 最简单的视频网站(JavaEE+FFmpeg)http://bl ...

  2. hls&flv直播请求过程

    hls&flv直播请求过程 直播类产品层出不穷,从各方面塑造了我们的生活方式.直播产品中,延时是决定用户体验的关键因素,它也将间接决定直播产品的成败.这其间,对延时影响较大的就是直播架构中选择 ...

  3. 【原创+史上最全】Nginx+ffmpeg实现流媒体直播点播系统

    #centos6.6安装搭建nginx+ffmpeg流媒体服务器 #此系统实现了视频文件的直播及缓存点播,并支持移动端播放(支持Apple和Android端) #系统需要自行安装,流媒体服务器配置完成 ...

  4. ffmpeg推送直播流的技术进展

    首先安装好NGINX并打开服务 然后安装好ffmpeg 然后参考:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=2879051 ...

  5. RTMP HLS HTTP 直播协议一次看个够

    直播从2016年一路火到了2017年,如今要在自己的App里加入直播功能,只要找一个现成的SDK就行了,什么拍摄.美颜.推流,一条龙服务.不过作为直播身后最重要的部分:推流协议,很多人并不是很清楚.如 ...

  6. 流媒体技术学习笔记之(十)HLS协议直播延时优化(35s到10S)

    1.首先要了解HLS延时的机制,也就是为什么会延时,延时主要发生在什么地方. HTTP Live Streaming 并不是一个真正实时的流媒体系统,这是因为对应于媒体分段的大小和持续时间有一定潜在的 ...

  7. 使用ffmpeg进行网络直播

    一.采集:使用python调用摄像头采集,原设想是使用树莓派摄像头采集,但是经费紧张买不起,先用摄像头凑合下,反正很简单.                   原理就是先录一小段视频,然后循环播放,用 ...

  8. EasyDSS流媒体解决方案实现的RTMP/HLS视频直播、直播鉴权(如何完美将EasyDSS过渡到新版)

    上一篇博文介绍了EasyDSS点播功能,然后作为RTMP流媒体服务器,接受RTMP推流.进行实时的直播流分发又是自身一大核心功能. 需求背景: 写本篇博文的一个目的是向大家介绍一下EasyDSS新版的 ...

  9. HLS视频点播&直播初探

    前端可选的视频直播协议大致只有两种: RTMP(Real Time Messaging Protocol) HLS(HTTP Live Streaming) 其中RTMP是Adobe开发的协议,无法在 ...

随机推荐

  1. HackerRank - flipping-the-matrix 【数学】

    题意 一个矩阵中 每一行 每一列 都可以倒置 在不断进行倒置后 求 左上的那个 N * N 矩阵 的和 最大为多少 思路 M = 2 * N 通过 倒置特性 我们可以发现,最左上的那个矩阵 第 [I] ...

  2. 视图的创建与使用 Sql Server View

    创建教材的三个数据表Student.Course及SC. create database S_T Use S_T CREATE TABLE Student (Sno CHAR(9), Sname CH ...

  3. java -ea

    两题考的都是 assert和assertionassert是JDK1.4(&+)中新增的关键字,其功能称作assertionassert 条件表达式            如果条件表达式不成立 ...

  4. 20145210姚思羽《网络对抗技术》逆向及Bof基础实践

    20145210姚思羽<网络对抗技术>逆向及Bof基础实践 实践目标 1.本次实践的对象是一个名为pwn1的linux可执行文件. 2.该程序正常执行流程是:main调用foo函数,foo ...

  5. 基于msm8909高通平台Android驱动开发之hello程序

    本文转载自:http://www.itwendao.com/article/detail/227839.html Android驱动开发之Hello实例:   驱动部分 modified:   ker ...

  6. Elipse 快捷键

    1. eclipse里面如何快速收缩当前类文件里面的所有方法和注释收缩:ctrl+shift+/展开:ctrl+shift+*注意:这个/和*要是数字键盘上的/和*.   2. shift+enter ...

  7. EntityFramework 学习 一 Model Browser

    我们已经为School表创建第一个实体数据模型,可视化的EDM设计器不显示所有的实体,而是显示和数据库中对应的表和视图 Model Browser为你提供关于所有对象和函数的信息, Diagrams ...

  8. JAVAScript中DOM与BOM的差异分析

    JAVAScript 有三部分构成,ECMAScript,DOM和BOM,根据浏览器的不同,具体的表现形式也不尽相同.我们今天来谈一谈DOM和BOM这俩者之间的差异. 用百科上的来说: 1. DOM是 ...

  9. Selenium-免登录的实现

    场景: 经常会遇到登录需要验证码这样类似的情况 解决方案: 1.万能验证码 2.利用cookies来实现,问开发哪个cookies值是登录后需要的,把这个值带上即可 3.利用火狐浏览器的profile ...

  10. Failed to install xxxx.apk on device 'emulator-5554!

    异常信息:[HelloAndroid] Performing com.example.helloandroid.HelloAndroid activity launch[HelloAndroid] U ...