ffmpeg Simpley Useage

| 分类 全栈工程师  | 标签 实习笔记 

###前几天公司的人去北京参加一个视频搜索的比赛,然后发回来组委对数据处理的要求

imageParser

  • 画中画
ffmpeg -y -i o_oC.mp4 -i y1.MP4 \
-strict experimental \
-filter_complex \
"[1:a] atrim=15:30,adelay=5000|5000 [a1]; \
[0:a][a1] amix [outa]; \
[1:v] scale=120:-1,setpts=PTS-(10/TB) [1v]; \
[0:v][1v] overlay=x=250:y=250:enable='between(t,5,200)'[outv]" \
-map "[outv]" -map "[outa]" \
-c:a aac -c:v libx264 \
-b:v 1000k \
-r 24 \
output.mp4
  • 视频增加中图片
ffmpeg -i y1.MP4 -i image.jpg \
-filter_complex "[0:v][1:v] overlay=25:25:enable='between(t,0,2)'" \
-pix_fmt yuv420p -c:a copy \
addImage.mp4

可以通过修改between达到插入一段时间或者1秒,scale可以用来控制插入前后的比例。overlay的x,y分别是距离左上角的偏移量。-strict experimental和-strict -2的效果相同,但必须紧跟在-i选项之后,否则报错。

  • 视频压缩

ffmpeg -i y2.MP4 -acodec mp2 --psnr 1 compress.mp4 之前对官网做性能优化的时候,把mp4转webm也能降低视频大小,但是视频压缩并不一定降低视频大小。

  • Gamma变换

ffmpeg -i y1.MP4 -strict -2 -vf "eq=gamma=0.5" gammaChange.mp4

  • 增加白噪音

ffmpeg -i y7.MP4 -strict -2 -filter_complex "aevalsrc=-2+random(0)" noise.mp4

  • 丢帧

avconv -r 24 -i src.mov -an -vf fps=fps=12 output.mov

  • 增加字幕

ffmpeg -i y1.MP4 -f srt -i a.srt -c:v copy -c:a copy -c:s mov_text addSrt.mp4

  • Reference Cut picture in Video

ffmpeg -ss [start] -i in.mp4 -t [duration] -c copy out.mp4

Update:2017.06.16
  • 取3,5秒的视屏转化为gif图片

ffmpeg -v warning -ss 3 -t 5 -i input.wmv -vf scale=3000:-1 -gifflags +transdiff -y sample.gif

###Other

下面链接所附,只做参考,部分命令不能使用。以上所有列出代码,均自己使用过的。PS:总是说有时间有时间,其实,我不知道啊。。啊,我的毕设毕设。还有我给你定的拖拉那么多的事情。

###Resources


上一篇     下一篇