藏兵谷

ffmpeg转存直播为本地视频

2018-07-06  本文已影响413人  溪桥路转

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。

准备

官网ffmpeg
下载地址
ffmpeg官网提过了三大平台的安装包:

ffmpeg安装包

本次测试主要是在windows下面使用,因此下载了window的安装包,解压后如下:

ffmpeg window安装包解压如下
该包没有提供可视化界面,因此使用cmd工具进行使用。本次使用cmder进行操作。

可用的视频直播测试地址:

HTTP协议直播源
香港卫视:http://live.hkstv.hk.lxdns.com/live/hks/playlist.m3u8
CCTV1高清:http://ivi.bupt.edu.cn/hls/cctv1hd.m3u8
CCTV3高清:http://ivi.bupt.edu.cn/hls/cctv3hd.m3u8
CCTV5高清:http://ivi.bupt.edu.cn/hls/cctv5hd.m3u8
CCTV5+高清:http://ivi.bupt.edu.cn/hls/cctv5phd.m3u8
CCTV6高清:http://ivi.bupt.edu.cn/hls/cctv6hd.m3u8
苹果提供的测试源(点播):http://devimages.apple.com.edgekey.net/streaming/examples/bipbop_4x3/gear2/prog_index.m3u8

测试:

运行cmder,进入ffmpeg可执行文件所在目录:


ffmpeg可执行文件所在目录
λ ffplay -i http://ivi.bupt.edu.cn/hls/cctv5phd.m3u8
运行成功

此时会弹出预览窗口


预览窗口
λ ffmpeg -i http://ivi.bupt.edu.cn/hls/cctv5phd.m3u8 -c:a copy -c:v copy d:\20180706-cctv5+live.mp4

以上命令参数解释:

ffmpeg:可执行程序名称
-i: 输入
http://ivi.bupt.edu.cn/hls/cctv5phd.m3u8: 直播视频源
-c:a copy : 音频编码,并拷贝
-c:v copy :视频编码,并拷贝
d:\20180706-cctv5+live.mp4 转存的路径以及文件名
实时转码保存运行成功

开始录制,对应路径下生成文件:


生成文件

想要停止转存,按q即可。

实际使用

λ ffmpeg.exe -i http://livepgc.sobeycache.com/pgc/d831b248a3ae10fba60e085954f175ff.m3u8?auth_key=1561711194-0-0-13dd761cb11f51e0cb247b39dadf7231 -c:v copy -c:a copy  d:\wenke_0706pm_01.mp4

思考

1、该方法可实现直播的回放功能。
2、在转存的实现中可使用

λ ffmpeg.exe -i http://livepgc.sobeycache.com/pgc/d831b248a3ae10fba60e085954f175ff.m3u8?auth_key=1561711194-0-0-13dd761cb11f51e0cb247b39dadf7231 -c:v copy -c:a copy  -f mp4 d:\wenke_0706pm_01.mp4

加入-f mp4参数,实现实时转码,但是这样会增加系统开销,本次录制中没有使用。
3、可以新增控制台,对多个直播源进行录制。

上一篇下一篇

猜你喜欢

热点阅读