水印篇
1、添加水印
ffmpeg官方提供了另外一种添加图片水印的方法
在视频右下角的添加图片水印
ffmpeg -i input.mp4 -i logo.png -filter_complex 'overlay=main_w-overlay_w-10:main_h-overlay_h-10' output.mp4
在视频左下角添加图片水印
ffmpeg -i input.mp4 -i logo.png -filter_complex 'overlay=x=10:y=main_h-overlay_h-10' output.mp4
参数解析
-filter_complex: 相比-vf, filter_complex适合开发复杂的滤镜功能,如同时对视频进行裁剪并旋转。参数之间使用逗号(,)隔开即可
main_w:视频宽度
overlay_w: 要添加的图片水印宽度
main_h : 视频高度
overlay_h:要添加的图片水印宽度
2、如何改变水印大小
String.format("-y -i %s -i %s -filter_complex '[1:v]scale=99:25 [ovrl],[0:v][ovrl]overlay=x=10:y=10' %s", videoPath, waterImgPath, output)
查看信息篇
1、查看音频文件信息,并以json格式输出
ffprobe -v quiet -print_format json -show_format -show_streams #{source}
Mp3转pcm
ffmpeg -y -i test.mp3 -acodec pcm_s16le -f s16le -ac 2 -ar 16000 16k.pcm

pcm转mp3
ffmpeg -y -f s16be -ac 2 -ar 16000 -acodec pcm_s16le -i 16k.pcm new_mp3.mp3

ffmpeng对某个格式支持列表查询,以Pcm为例
$ ffmpeg -formats | grep PCM (格式查询指令)
DE alaw PCM A-law
DE f32be PCM 32-bit floating-point big-endian
DE f32le PCM 32-bit floating-point little-endian
DE f64be PCM 64-bit floating-point big-endian
DE f64le PCM 64-bit floating-point little-endian
DE mulaw PCM mu-law
DE s16be PCM signed 16-bit big-endian
DE s16le PCM signed 16-bit little-endian
DE s24be PCM signed 24-bit big-endian
DE s24le PCM signed 24-bit little-endian
DE s32be PCM signed 32-bit big-endian
DE s32le PCM signed 32-bit little-endian
DE s8 PCM signed 8-bit
DE u16be PCM unsigned 16-bit big-endian
DE u16le PCM unsigned 16-bit little-endian
DE u24be PCM unsigned 24-bit big-endian
DE u24le PCM unsigned 24-bit little-endian
DE u32be PCM unsigned 32-bit big-endian
DE u32le PCM unsigned 32-bit little-endian
DE u8 PCM unsigned 8-bit
网友评论