检测透明通道
#
FFmpeg命令
#
$ ffmpeg -v error -i 123.mp4 -vf "select='eq(n,0)', alphaextract" -f null /dev/null
[Parsed_alphaextract_1 @ 0x7fe8f5208100] Requested planes not available.
[Parsed_alphaextract_1 @ 0x7fe8f5208100] Failed to configure input pad on Parsed_alphaextract_1
[vf#0:0 @ 0x7fe8f5005f40] Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while filtering: Invalid argument
[out#0/null @ 0x7fe8f5004900] Nothing was written into output file, because at least one of its streams received no packets.
判断条件
#
如果出现以上报错信息,则说明视频中没有透明通道。
...通过FFmpeg内置滤镜、手动调整音量、或者ffmpeg-normalize实现对响度的控制。
内置归一化滤波器
#
loudnorm:通过EBU R.128进行响度标准化。您可以设置积分的体积目标,体积范围目标或最大真实峰。建议用于发布音频和视频,并被世界各地的广播公司使用。
...使用FFmpeg中的adelay和amix滤镜给音频做混音
在30秒后混合1个音频
ffmpeg -i 1-1.mp3 -i 2.mp3 -filter_complex "[1]adelay=delays=30s:all=1[aud1];[0][aud1]amix=inputs=2" -vsync 2 -y 3.mp3
在30秒后混合2个音频
ffmpeg -i 1-1.mp3 -i 2.mp3 -i 3.mp3 -filter_complex "[1]adelay=delays=30s:all=1[aud1];[2]adelay=delays=30s:all=1[aud2];[0][aud1][aud2]amix=inputs=3" -vsync 2 -y 4.mp3
混合多个参照混合2个的命令修改下即可
...图片水印、文字水印、画中画
图片水印
#
ffmpeg -i input.mp4 -vf "movie=wenzi.png[watermark];[in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10[out] " output.mp4
-i :一般表示输入
input.mp4:这里表示要处理的视频源
-vf:滤镜相关,视频裁剪,水印等等操作都需要它完成
...
ffprobe是ffmpeg提供的三大工具之一,用来查看音视频文件的各种信息,比如:封装格式、音频/视频流信息、数据包信息等。
ffprobe的源码是ffprobe.c,开发过程中如果想获取ffprobe查看的信息,可以通过分析源码,获得对应字段。
...清除mp3文件中自带的专辑(album),艺术家(artist),流派(genre)等元数据。
ffmpeg -i "test.mp3" -b:a 320k -map_metadata -1 -y "out.mp3"
-map_metadata -1 表示清除所有元数据
ffmpeg命令裁剪视频,一般用于裁剪黑边
说明
#
命令
#
ffmpeg -i input.mp4 -vf crop=iw/3:ih:0:0 output.mp4
ffmpeg -i input.mp4 -vf crop=iw/3:ih:iw/3:0 output.mp4
ffmpeg -i input.mp4 -vf crop=iw/3:ih:iw/3*2:0 output.mp4
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。
...
今天搜集了一下16:9和9:16相互转换的命令。将多余的部分用模糊背景填充,感觉比直接加黑边好很多。
16:9转9:16
#
命令
#
ffmpeg -i input.mp4 -lavfi "[0:v]scale=256/81*iw:256/81*ih,boxblur=luma_radius=min(h\,w)/40:luma_power=3:chroma_radius=min(cw\,ch)/40:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,setsar=1,crop=w=iw*81/256" output.mp4
效果
#
...ffmpeg输出苹果编码格式prores。分辨率1080p,25帧,5个音轨。
ffmpeg -i 06无字幕mp4-使用此视频的画面.mp4 -i 06有字幕-使用此视频的国际音轨.mov -map 0:v -s 1920x1080 -r 25 -c:v prores_ks -profile:v 3 -pix_fmt yuv422p10le -map 1:1 -acodec pcm_s24le -ar 48000 -ac 1 -map 1:2 -acodec pcm_s24le -ar 48000 -ac 1 -map 1:3 -acodec pcm_s24le -ar 48000 -ac 1 -map 1:4 -acodec pcm_s24le -ar 48000 -ac 1 -map 1:5 -acodec pcm_s24le -ar 48000 -ac 1 06-out.mov