Ffmpeg的视频操做官网文档:https://ffmpeg.org/ffmpeg-filters.html#Video-Filtershtml
视频压缩用到的参数主要为如下几个:ide
码率,即波特率。值越小,转换后的视频越小工具
码率就是数据传输时单位时间传送的数据位数,通常咱们用的单位是kbps即千位每秒。post
码率与体积成正比:码率越大,体积越大;码率越小,体积越小。因为文件体积与取样率是成正比的,因此几乎全部的编码格式都想用最低的码率达到最少的失真,“码率”就是失真度,码率越高越清晰,反之则画面粗糙并且马赛克多。编码
建议码率不要小于500。通常500k左右,人眼看不到明显的闪烁。url
案例:ffmpeg.exe -i test.MP4 -b 600k output.mp4.net
指的是视频的分辨率,常见的分辨率有4096*2304,1920*1080,720*576等。视频
具体的值,能够根据源视频的分辨率作个等比的缩小。htm
案例:ffmpeg.exe -i test.MP4 -s 1920*1080 output.mp4blog
帧率(即视频更新率),就是每秒编码进视频文件的帧数目,是用于测量显示帧数的量度。
测量单位为“每秒显示帧数”(Frame Per Second,FPS,帧率)或“赫兹”,单位用FPS用来描述视频每秒播放多少帧,而单位用赫兹用来描述显示器的画面每秒更新多少次。
常见的帖率有2五、30,高清电视有50、60帧。
通常帧率越高,视频画面越流畅。可是人类的眼睛须要每秒至少15帧才能将图像连贯在一块儿~
案例:ffmpeg.exe -i test.MP4 -r 25 output.mp4
通常的压缩命令能够用:ffmpeg.exe -i test.MP4 -b:v 500k -r 25 -s 1920x1080 output.mp4。分辨率能够根据源视频的尺寸等比进行设置~
1. 下载ffmpeg.exe
ffmpeg.exe文件下载连接: https://pan.baidu.com/s/1DmeIHlDsCTq1SdSm_ejbmQ 提取码: jrkm
2.Xabe.FFmpeg
Xabe.FFmpeg是一个ffmpeg第三方封装,它提供了ffmpeg的下载、管理以及ffmpeg.exe的详细封装操做,使ffmpeg的操做更加简洁。
经过Nuget包引用后(只支持.net 4.6.1及以上),调用await FFmpeg.GetLatestVersion(FFmpegVersion.Full); 便可获取相应的版本。
Xabe.FFmpeg的使用,可参考博客:C# 中使用 FFmpeg.NET
参考文章: