(转)nginx-rtmp-module和ffmpeg搭建实时HLS切片
1.rtmp服务器
nginx+pcre+zlib+openssl+nginx-rtmp-module ./configure \ --prefix=/usr/local/nginx \ --sbin-path=/usr/local/nginx/nginx \ --conf-path=/usr/local/nginx/nginx.conf \ --pid-path=/usr/local/nginx/nginx.pid \ --error-log-path=/usr/local/nginx/logs/error.log \ --with-pcre=/project/pcre-8.33 \ --with-zlib=/project/zlib-1.2.8 \ --with-http_dav_module \ --with-http_flv_module \ --with-http_stub_status_module \ --without-http_scgi_module \ --without-http_uwsgi_module \ --without-http_gzip_module \ --without-http_ssi_module \ --without-http_proxy_module \ --without-http_memcached_module \ --without-http_empty_gif_module \ --without-mail_pop3_module \ --without-mail_imap_module \ --without-mail_smtp_module \ --with-http_ssl_module \ --with-openssl=/project/openssl-1.0.1e \ --add-module=/project/nginx-rtmp-module-master make && make install 修改nginx-rtmp-module-master/test/rtmp-publisher目录下player.html中rtmp推流接收地址和stream 增加nginx-rtmp-module-master/test/rtmp-publisher目录下播放器相关文件权限x 具体参考:http://www.cnblogs.com/aHuner/p/3247068.html 2.rtmp实时推流 推流工具:Adobe Flash Media Live Encoder 必须同时推音频和视频,否则ffmpeg切片会报错,e2eSoft VCam做模拟视频输入,手机耳机插入PC麦克风插口做音频输入 3.安装x264 wget ftp://ftp.videolan.org/pub/x264/ ... 2245-stable.tar.bz2 tar jxvf x264-snapshot-20120718-2245-stable.tar.bz2 ./configure --prefix=/usr/local/x264 --disable-asm --enable-shared make && make install vi /etc/ld.so.conf 加入:/usr/local/x264/lib 执行:ldconfig 4.安装aac http://www.audiocoding.com/faac.html ./configure --prefix=/usr/local/faac--enable-shared make&&make install 遇到错误: mpeg4ip.h:126: error: new declaration ‘char* strcasestr(const char*, const char*)’ 解决方法: vi common/mp4v2/mpeg4ip.h 修改第123行: #ifdef __cplusplus extern "C++" { #endif const char *strcasestr(const char *haystack, const char *needle); #ifdef __cplusplus } #endif vi /etc/ld.so.conf 加入:/usr/local/faac/lib 执行:ldconfig 5.ffmpeg切片方案 ./configure --disable-yasm --enable-libx264--enable-libfaac --enable-gpl --enable-shared --prefix=/usr/local/ffmpeg --extra-cflags=-I/usr/local/x264/include --extra-ldflags=-L/usr/local/x264/lib make && make install 如果linux下出现 ffmpeg: error while loading shared libraries: libavdevice.so.55: cannot open shared object file: No such file or directory vi /etc/ld.so.conf 加入:/usr/local/ffmpeg/lib 执行:ldconfig 切本地文件命令:ffmpeg -i test.ts -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 10 output%03d.ts 切网络地址命令:ffmpeg -i rtmp://192.168.42.128/myapp/test1 -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 10 output%03d.ts 设置视频编码库libx264和音频编码库libfaac: ./ffmpeg -y -i rtmp://192.168.42.128/myapp/test1 -pix_fmt yuv420p -vcodec libx264 -acodec libfaac -r 25 -profile:v baseline -b:v 150k -maxrate 200k -force_key_frames 50 -s 320x240 -map 0 -flags -global_header -f segment -segment_list playlist.m3u8 -segment_time 10 -segment_format mpeg_ts -segment_list_type m3u8 segment%05d.ts 6. nginx-rtmp-module切片 application hls { live on; hls on; hls_path /project/nginx-rtmp-module-master/test/rtmp-publisher; } 7.nginx实时rtmp播放地址 http://192.168.42.128/player.html 8.HLS实时播放地址 |
(转)nginx-rtmp-module和ffmpeg搭建实时HLS切片的更多相关文章
- 解决RTMP推送时间戳问题引起HLS切片不均匀导致手机浏览器播放卡顿的问题
本文转自EasyDarwin开源团队成员Kim的博客:http://blog.csdn.net/jinlong0603/article/details/74161115 引言 最近在测试EasyNVR ...
- ffmpeg,rtmpdump和nginx rtmp实现录屏,直播和录制
公司最近在做视频直播的项目,我这里分配到对直播的视频进行录制,录制的方式是通过rtmpdump对rtmp的视频流进行录制 前置的知识 ffmpeg: 用于实现把录屏工具发出的视频和音频流,转换成我们需 ...
- (转)Nginx+rtmp+ffmpeg搭建流媒体服务器
(1)下载第三方扩展模块nginx-rtmp-module # mkdir module && cd module //创建一个存放模块的目录 # wget https://githu ...
- 三、Windows下用FFmpeg+nginx+rtmp搭建直播环境 实现推流、拉流
一.环境 1.开发环境:windows 2.开发工具:FFmpeg.nginx.nginx-rmtp-module (链接:https://pan.baidu.com/s/119d2GeMzddas_ ...
- centos7+nginx+rtmp+ffmpeg搭建流媒体服务器(保存流目录与http目录不要随意配置,否则有权限问题)
搭建nginx-http-flv-module升级代替rtmp模块,详情:https://github.com/winshining/nginx-http-flv-module/blob/master ...
- 基于Nginx+nginx-rtmp-module+ffmpeg搭建rtmp、hls流媒体服务器
上篇文章是基于Red5与ffmpeg实现rtmp处理NVR或摄像头的监控视频处理方案,有兴趣的朋友可以查看. Nginx及nginx-rtmp-module安装 新建目录 mkdir /usr/loc ...
- nginx::基于Nginx+nginx-rtmp-module+ffmpeg搭建rtmp、hls流媒体服务器
待续 ffmpeg -re -i "/home/bk/hello.mp4" -vcodec libx264 -vprofile baseline -acodec aac -ar 4 ...
- Android中直播视频技术探究之---视频直播服务端环境搭建(Nginx+RTMP)
一.前言 前面介绍了Android中视频直播中的一个重要类ByteBuffer,不了解的同学可以 点击查看 到这里开始,我们开始动手开发了,因为我们后续肯定是需要直播视频功能,然后把视频推流到服务端, ...
- Linux-Nginx+rtmp+ffmpeg搭建流媒体服务器
Nginx+rtmp+ffmpeg搭建流媒体服务器 说明: nginx搭建流媒体服务需要用到 nginx-rtmp-module 模块 具体操作步骤: 安装nginx (1)下载第三方扩展模块ngin ...
随机推荐
- SQLite创建表并加入数据
- (void)viewDidLoad { [super viewDidLoad]; //创建表 [self creatTable]; //插入数据 [self insertTable]; } // ...
- 【前端阅读】——《编程之魂》摘记&读后感&思维导图
前言:这本书全名叫<编程之魂——与27为编程语言创始人对话>,它的内容以采访对话为主,以图通过和顶级大师的真实交流来调查:大师们为什么要创建某种编程语言,它的技术如何开发.如何教授和学习, ...
- 知其一不知其二之Jenkins Hacking
转自安全脉搏 本文首发安全脉搏 感谢大王叫我来巡山 的投递 转载请注明来源 大多安全工作者听到jenkins都会知道有个未授权的命令执行 但是如果Script页面要授权才能访问呢 或者你的用户没有Ov ...
- codeforces 204(Div.1 A) Little Elephant and Interval(贪心)
题意: 有一种个位数与最高位数字相等的数字,求在l,r的范围内,这样的数字的个数. 思路: 找下规律就知道当当n>10的时候除去个位以后的答案等于n/10,然后考虑第一个数字是否小于最后一个.小 ...
- hibernate uuid
- hive分区(partition)简介
一.背景 1.在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作.有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念. 2.分区表指的是在创建表 ...
- robotframework安装appium
安装: Appium-Python-Client,在运行的cmd下输入:pip install Appium-python-Client 安装:robotframework-appiumlibrary ...
- bzoj4010【HNOI2015】菜肴制作
4010: [HNOI2015]菜肴制作 Time Limit: 5 Sec Memory Limit: 512 MB Submit: 981 Solved: 480 [Submit][Statu ...
- MySql(八):MySQL性能调优——Query 的优化
一.理解MySQL的Query Optimizer MySQL Optimizer是一个专门负责优化SELECT 语句的优化器模块,它主要的功能就是通过计算分析系统中收集的各种统计信息,为客户端请求的 ...
- Synchronized修饰静态变量和普通变量的区别
这里主要涉及到类对象(static方法),对象方法(非static方法) 我们知道,当synchronized修饰一个static方法时,多线程下,获取的是类锁(即Class本身,注意:不是实例): ...