环境:centos7.6

最近痴迷于FFmpeg切片,由于CentOS没有官方FFmpeg rpm软件包,我们需要借助第三方YUM源(Nux Dextop)来安装。

首先安装第三方 Nux Dextop Yum 源

sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

接着安装FFmpeg 和 FFmpeg

sudo yum install ffmpeg ffmpeg-devel -y

测试

#查看安装信息
ffmpeg
#查看帮助文档
ffmpeg -h
#查看支持容器
ffmpeg -formats
#查看支持编码格式
ffmpeg -codecs
#查看已安装编码器
ffmpeg -encoders
#获取媒体文件时长
ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 <File>
#获取媒体文件大小
ffprobe -v error -show_entries format=size -of default=noprint_wrappers=1:nokey=1 <File>
#获取媒体文件比特率
ffprobe -v error -show_entries format=bit_rate -of default=noprint_wrappers=1:nokey=1 <File>
#获取视频文件编码
ffprobe -v error -select_streams v:0 -show_entries stream=codec_name -of efault=noprint_wrappers=1:nokey=1 <File>
#视频文件直接切片实例
ffmpeg -i <File> -vcodec copy -acodec aac -bsf:v h264_mp4toannexb -map 0 -f segment -segment_list output.m3u8 -segment_time 10 output_%03d.ts
ffmpeg -i C:\输入视频.mp4 -c:v libx264 -c:a aac -hls_time 8 -hls_list_size 0 -strict -2 -f hls -hls_playlist_type vod C:\输入视频.m3u8
#M3U8合成视频文件
ffmpeg -allowed_extensions ALL -i "meida.m3u8" -c copy "media.mp4"

分片时长计算(VBR, 大约)
分片时间 = (文件限制大小[M] 1024 1024) / (媒体文件比特率[b] * 突发码率比率 / 8)
突发码率比率: 1.35 (视情况取值, 大于等于1)
字幕格式转换(webvtt.org)

更多文档参见:https://www.ffmpeg.org/documentation.html

最后编辑:2021年05月05日 ©著作权归作者所有

发表评论

正在加载 Emoji