码迷,mamicode.com
首页 > 其他好文 > 详细

M3U8 的简单实现 nginx+ffmpeg

时间:2015-12-29 00:53:56      阅读:8810      评论:0      收藏:0      [点我收藏+]

标签:

一、概念

M3U8是一种格式  用于分段请求数据来实现流媒体的技术

 

二、nginx的安装

先下载:http://nginx.org/download/nginx-1.5.10.zip

修改config中mime 加上:

application/x-mpegURL m3u8;
application/vnd.apple.mpegurl m3u8;
video/MP2T ts;

修改域名端口配置,双击 nginx.exe运行  具体安装参考: windows下一分钟配置ngnix实现HLS m3u8点播

 

三、安装ffmpeg

多媒体转m3u8命令示例:

    1. 64Kbps音频编码
          根据苹果有关HLS音频规定,不能使用音频流峰值超过64kbps的流,因此目前使用音频流为56kbps
          命令如下:
         ffmpeg -i The.Interview.2014.BluRay.720p.x264.AAC-PHD.mp4 -vn     \
         -b:a 56000     \
         -hls_time 10     \
         -hls_list_size 0     \
         -hls_allow_cache 1     \
         -hls_base_url http://127.0.0.1:8080/audios/    \
         -hls_segment_filename /Users/kuoxin/Movies/56K/‘TI2014_56k_%05d.ts‘     \
         /Users/kuoxin/Movies/56K/56k_aac.m3u8
     
     2. 移动网络264Kbps视频编码
          帧率:          12
          尺寸:          416 x 234
          码流:          264Kbps
          视频:          200Kbps
          音频:          56Kbps
          音频采样:   48KHz
          MP4 描述:  baseling3.0
          时长:          10s
 
          命令如下:
          $ ffmpeg -i The.Interview.2014.BluRay.720p.x264.AAC-PHD.mp4   \
          -c:v libx264  \
          -r 12      \ 
          -s 416X234       \
          -b:v 200k       \
          -profile:v baseline      \
          -b:a 56k      \
          -hls_time 10      \
          -hls_list_size 0      \
          -hls_allow_cache 1      \
          -hls_base_url http://127.0.0.1:8080/videos/264k/       \
          -hls_segment_filename /Users/kuoxin/Movies/264k/‘TI2014_264k_%05d.ts’       \
          /Users/kuoxin/Movies/264K/264k_mp4.m3u8 
  
3. 移动网络464Kbps视频编码
          帧率:          15
          尺寸:          480 x 270
          码流:          464Kbps
          视频:          400Kbps
          音频:          56Kbps
          音频采样:   48KHz
          MP4 描述:  baseline
          时长:          10s
     $ ffmpeg -i The.Interview.2014.BluRay.720p.x264.AAC-PHD.mp4        \
     -c:v libx264      \
     -r 15       \
     -s 480X270       \
     -b:v 400k       \
     -profile:v baseline      \
     -b:a 56k      \
     -hls_time 10      \
     -hls_list_size 0      \
     -hls_allow_cache 1      \
     -hls_base_url http://127.0.0.1:8080/videos/464k/       \
     -hls_segment_filename /Users/kuoxin/Movies/464k/‘TI2014_464k_%05d.ts’      \
      /Users/kuoxin/Movies/464K/464k_mp4.m3u8 
  
4. WiFi/CELL 664Kbps视频编码
          帧率:          视频当前帧数
          尺寸:          640 x 360
          码流:          664Kbps
          视频:          600Kbps
          音频:          56Kbps
          音频采样:   48KHz
          MP4 描述:  baseline
          时长:          10s
     $ ffmpeg -i The.Interview.2014.BluRay.720p.x264.AAC-PHD.mp4        \
     -c:v libx264      \
     -s 640X360       \
     -b:v 400k       \
     -profile:v baseline      \
     -b:a 56k      \
     -hls_time 10      \
     -hls_list_size 0      \
     -hls_allow_cache 1      \
     -hls_base_url http://127.0.0.1:8080/videos/664k/       \
     -hls_segment_filename /Users/kuoxin/Movies/664k/‘TI2014_464k_%05d.ts’      \
      /Users/kuoxin/Movies/664K/664k_mp4.m3u8 
  
4. WiFi 1294Kbps视频编码
          帧率:          视频当前帧数
          尺寸:          640 x 360
          码流:          1296Kbps
          视频:          1200Kbps
          音频:          96Kbps
          音频采样:   48KHz
          MP4 描述:  baseline
          时长:          10s
     $ ffmpeg -i The.Interview.2014.BluRay.720p.x264.AAC-PHD.mp4        \
     -c:v libx264      \
     -s 640X360       \
     -b:v 1200k       \
     -profile:v baseline      \
     -b:a 96k      \
     -hls_time 10      \
     -hls_list_size 0      \
     -hls_allow_cache 1      \
     -hls_base_url http://127.0.0.1:8080/videos/1296k/       \
     -hls_segment_filename /Users/kuoxin/Movies/1296k/‘TI2014_1296k_%05d.ts’      \
      /Users/kuoxin/Movies/1296K/1296k_mp4.m3u8 
 
 
5. WiFi 3596Kbps视频编码
          帧率:          视频当前帧数
          尺寸:          960 x 540
          码流:          3596Kbps (当前最高码流只有:1780Kbps)
          视频:          3500Kbps(当前最高码流只有:1648Kbps)
          音频:          96Kbps
          音频采样:   48KHz
          MP4 描述:  main
          时长:          10s
     $ ffmpeg -i The.Interview.2014.BluRay.720p.x264.AAC-PHD.mp4        \
     -c:v libx264      \
     -s 960X540       \
     -b:a 128k          \
     -hls_time 10      \
     -hls_list_size 0      \
     -hls_allow_cache 1      \
     -hls_base_url http://127.0.0.1:8080/videos/3596k/       \
     -hls_segment_filename /Users/kuoxin/Movies/3596k/‘TI2014_3596k_%05d.ts’      \
      /Users/kuoxin/Movies/3596K/3596k_mp4.m3u8 
 
6. WiFi 5128Kbps视频编码
          帧率:          视频当前帧数
          尺寸:          1280 x 720
          码流:          5128k (当前最高码流只有:1780Kbps)
          视频:          5000Kbps(当前最高码流只有:1648Kbps)
          音频:          128Kbps
          音频采样:   48KHz
          MP4 描述:  main
          时长:          10s
    
  $ ffmpeg -i The.Interview.2014.BluRay.720p.x264.AAC-PHD.mp4        \
     -c:v libx264      \
     -b:a 128k          \
     -hls_time 10      \
     -hls_list_size 0      \
     -hls_allow_cache 1      \
     -hls_base_url http://127.0.0.1:8080/videos/5128k/       \
     -hls_segment_filename /Users/fengkun/Movies/kuoxin/‘TI2014_5128k_%05d.ts’      \
      /Users/kuoxin/Movies/5128K/5128k_mp4.m3u8 

 

 

具体参考 这篇帖子 使用FFmpeg生成HLS视频

注:-hls_base_url是指ts文件的url前缀 ,ts文件可以放到任何地方

-------------------------------------------------------------------

然后请求就得行了,浏览器不支持可以装一个vlc,打开网络传流看能不能打开

 

相关参考链接:

使用FFmpeg生成HLS视频 - http://www.cnblogs.com/kuoxin/p/4623642.html 

windows下一分钟配置ngnix实现HLS m3u8点播 - http://www.cnblogs.com/fx2008/p/4226974.html

 

M3U8 的简单实现 nginx+ffmpeg

标签:

原文地址:http://www.cnblogs.com/hhxBlog/p/5084420.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!