递归火山软件开发平台

标题: 【解决方案】ffmpeg常用命令 [打印本页]

作者: 创世魂    时间: 2023-7-3 21:06
标题: 【解决方案】ffmpeg常用命令
视频处理

视频压缩4K处理方案:
https://GITHUB.com/microshow/RxFFmpeg/issues/65
  1. ffmpeg -y -i /storage/emulated/0/1/input.mp4 -b 2097k -r 30 -vcodec libx264 -preset superfast /storage/emulated/0/1/result.mp4
复制代码



视频拼接
  1. ffmpeg -y -f concat -safe 0 -i Cam01.txt -c copy Cam01.mp4
复制代码
这种合并方式的适用场景是:当容器格式不支持文件层次的合并,而又不想(不需要)进行再编码的操作的时候。这种方式对源视频同样有【同格式同性质】的要求
Cam01.txt文件里面的内容类似如下(要改成全路径形式)
file 'input1.mp4'
file 'input2.mp4'
file 'input3.mp4'

视频转图片(每隔一秒截取一张图)
  1. ffmpeg -y -i /storage/emulated/0/1/input.mp4 -f image2 -r 1 -q:v 10 -preset superfast /storage/emulated/0/1/%3d.jpg
复制代码

截取指定时间的一张图
  1. ffmpeg -y -i /storage/emulated/0/1/input.mp4 -f image2 -ss 00:00:03 -vframes 1 -preset superfast /storage/emulated/0/1/result.jpg
复制代码

添加背景音乐(支持调节原音和配乐的音量)
  1. ffmpeg -y -i /storage/emulated/0/1/input.mp4 -i /storage/emulated/0/1/input.mp3 -filter_complex [0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.2[a0];[1:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=1[a1];[a0][a1]amix=inputs=2:duration=first[aout] -map [aout] -ac 2 -c:v copy -map 0:v:0 -preset superfast /storage/emulated/0/1/result.mp4
复制代码

添加水印
  1. ffmpeg -y -i /storage/emulated/0/1/input.mp4 -i /storage/emulated/0/1/input.png -filter_complex [0:v]scale=iw:ih[outv0];[1:0]scale=0.0:0.0[outv1];[outv0][outv1]overlay=0:0 -preset superfast /storage/emulated/0/1/result.mp4
复制代码

GIF转视频
  1. ffmpeg -y -i /storage/emulated/0/1/input.gif -pix_fmt yuv420p -preset superfast /storage/emulated/0/1/result.mp4
复制代码

视频转GIF
  1. ffmpeg -y -ss 0 -t 7 -i /storage/emulated/0/1/input.mp4 -r 5 -s 280x606 -preset superfast /storage/emulated/0/1/result.gif
复制代码

图片合成视频(带动画)
  1. ffmpeg -y -loop 1 -r 25 -i /storage/emulated/0/1/input.png -vf zoompan=z=1.1:x='if(eq(x,0),100,x-1)':s='960*540' -t 10 -pix_fmt yuv420p /storage/emulated/0/1/result.mp4
复制代码

视频去水印
//x:y 离左上角的坐标 值必须>=1; w:h logo的宽和高; show:设为1有一个绿色的矩形边框,默认值0
  1. ffmpeg -y -i /storage/emulated/0/1/input.mp4 -vf delogo=x=1:y=1:w=200:h=200:show=1 -preset superfast /storage/emulated/0/1/result.mp4
复制代码

视频变速
// X = 取值范围 [0.5 - 2.0] ; 1.0为标准速度, 替换 X 的值即可
  1. ffmpeg -y -i /storage/emulated/0/1/input.mp4 -filter_complex [0:v]setpts=PTS/X[v];[0:a]atempo=X[a] -map [v] -map [a] -preset superfast /storage/emulated/0/1/result.mp4
复制代码


音频处理

……一会儿补











作者: xqnh520    时间: 2023-7-3 21:20
这是要出FFMPE库了吗?

作者: ゞ情非得已Sky    时间: 2023-7-3 21:29
音频处理  通用格式 任何格式转换命令如下

ffmpeg -i 待转.mp3 目标格式.wav

作者: ゞ情非得已Sky    时间: 2023-7-3 21:35
音频提取  如下

ffmpeg -i 待取.mp4[完整路径] -vn -acodec copy 目标音频格式[完整路径].aac


作者: 创世魂    时间: 2023-7-3 22:21
xqnh520 发表于 2023-7-3 21:20
这是要出FFMPE库了吗?

安卓计划的库都在逐步完善....
作者: starsoul    时间: 2023-7-4 07:47
大佬,啥时候搞PC版的ffmpeg库啊?
作者: ゞ情非得已Sky    时间: 2023-7-4 08:11
starsoul 发表于 2023-7-4 07:47
大佬,啥时候搞PC版的ffmpeg库啊?

PC的已经拉闸
作者: 水常流    时间: 2023-7-4 15:45
乍一看,我还以为是Linux代码
作者: locoman    时间: 2023-7-6 13:21
ffmpeg无视遮挡录制指定窗口中的音视频,只要窗口标题是中文的就不行(录制的结果是黑屏无声)。

(无视遮挡录制:就是指定了录制窗口标题后,就不管该窗口是否被其他窗口遮挡了或是该窗口被放小了,都能正常完成录制
)。
作者: 创世魂    时间: 2023-7-9 21:32
locoman 发表于 2023-7-6 13:21
ffmpeg无视遮挡录制指定窗口中的音视频,只要窗口标题是中文的就不行(录制的结果是黑屏无声)。

(无视遮 ...

不知道,这里是安卓
作者: guo828587    时间: 2023-7-10 11:07
先说一下用这个剪辑视频,怎么能精确剪的问题,基本是会少几秒或多几秒,要不然就是前面有几秒卡画面
作者: lhy201233    时间: 2023-7-13 16:08
火山有这库?




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4