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. 【ELK】抓取AWS-ELB日志的logstash配置文件

    前言 ELK搭建没有难度,难的是logstash的配置文件,logstash主要分为三个部分,input,filter和output. input,输入源可选的输入源由很多,详情见ELK官网,这里我们 ...

  2. python3 批量缩放图片为iphone5的640*1136以下

    try: from PIL import Image, ImageDraw, ImageFont, ImageEnhance except ImportError: import Image, Ima ...

  3. eclipse的问题:如何在debug模式下,能始终看到某变量的值

    Window—>Show View—>other—>Debug—>Expressions中左边是变量名,右边显示变量value.

  4. RedisTemplate操作Redis

    RedisTemplate Redis 可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字符串).List(列表).Set(集合).Hash(散列)和 Zset(有序 ...

  5. Python常用转换函数

    字符串转换为整数 int() 如int('2'). 字符串转换为浮点数 float() 如float('12.34') ASCII码转换为字符 chr() 如chr(97) 字符转换为ASCII码 o ...

  6. if-else 与 switch-case语句

    if语句就是起一个判断作用,在c语言中有三种表达形式:1.if(表达式)语句:pl.   if(x==y)printf("%d",x);         //*  "== ...

  7. Linux电源管理(1)-整体架构【转】

    本文转载自:http://www.wowotech.net/pm_subsystem/pm_architecture.html 1. 前言 在这个世界中,任何系统的运转都需要能量.如树木依靠光能生长, ...

  8. poj 1419Graph Coloring 【dfs+补图+计算最大团+计算最大独立集 【模板】】

    题目地址:http://poj.org/problem?id=1419 Graph Coloring Time Limit: 1000MS   Memory Limit: 10000K Total S ...

  9. Neutron Callback System

    用于core and service components之间的通信,传递resource的lifecycle events (e.g. before creation, before deletio ...

  10. 分享知识-快乐自己:java代码 操作 solr

    POM 文件: <!-- solr客户端 --> <dependency> <groupId>org.apache.solr</groupId> < ...