五:ffmpe主要参数的使用

目录

一:回顾一下主要参数

二:使用主要参数操作视频

[1、-i 输入流的使用](#1、-i 输入流的使用)

[2、-i 配合 输出流-f使用](#2、-i 配合 输出流-f使用)

三、使用-ss开始时间进行转换

四、使用-t参数,设置转换的时长


一:回顾一下主要参数

bash 复制代码
-i 设定输入流。 支持本地和网络流
-f 设定输出格式(format)。 当未指定输出格式的情况,是以文件名的后缀为准
-ss 开始时间
-t 时间长度

二:使用主要参数操作视频

我这里准备了测试用的视频,先进入到测试视频的目录

cd F:\code\VC\study\FFmpeg\示例视频

1、-i 输入流的使用

bash 复制代码
#输入
ffmpeg -i test.mp4

命令执行后,会在控制台显示信息,其中红字的部分标识该命令不能打开一个输出流。

ffmpeg 最基本的命令,至少要包含一个输出文件。

2、-i 配合 输出流-f使用

参数说明中,说明了 " 当未指定输出格式的情况,是以文件名的后缀为准 " 所以我们先测试不指定-f的情况

bash 复制代码
ffmpeg -i test.mp4 test.mkv

如果出现了如下画面,就说明开始转换了。

生成mkv文件之后。打开可以正常播放。接下来我们分别看一下mp4和mkv的视频格式

bash 复制代码
ffprobe test.mkv

ffprobe test.mp4

mkv的信息

mp4的信息

通过格式转换之后, mp4和mkv的视频格式都有变化。

当然,并不是所有的音频直接可以转换的,比如test.mp4 就不能直接转换为flv

bash 复制代码
ffmpeg -i test.mp4 test.flv

报错如下, 大概的意思是采样率不支持2400 , 请选择44100 / 22050 / 11025 , 我们修改参数重新执行

输入:

bash 复制代码
ffmpeg -i test.mp4 -ar 11025 test.flv
ffmpeg -i test.mp4 -ar 44100 test_44100.flv

开始正常转换,等待转换结束 。 可以看到转换结束后,不同采样率的文件大小不一样

以上都是按照后缀名做的转换,在转换过程中,可以使用-f强制指定格式,-f参数支持的格式可以通过 ffmpeg -formats查看

三、使用-ss开始时间进行转换

我们从test.mp4文件的1分钟位置开始进行转换

bash 复制代码
ffmpeg -i test.mp4 -ss 00:01:00 test_000100.mkv

观察文件大小,比test.mkv小了很多。打开查看,确实是从1分钟开始转换的

四、使用-t参数,设置转换的时长

bash 复制代码
ffmpeg -i test.mp4 -ss 00:01:00 -t 30 test_000100_30s.mkv

执行上面命令,将转换一个从1分钟开始的30秒的视频。

相关推荐
Hello.Reader4 小时前
用纯 Go 实现一个 AES-128 加密 m3u8 视频下载器(不依赖 ffmpeg)
golang·ffmpeg·音视频·m3u8
你好音视频8 小时前
RTSP推流:RTP包组装逻辑详解
ffmpeg·音视频
pu_taoc10 小时前
ffmpeg实战2-从MP4文件提取 音频和视频
c语言·c++·ffmpeg·音视频
香蕉ai大玩家11 小时前
ffmpeg.dll丢失怎么办?ffmpeg.dll找不到是什么情况
ffmpeg
爱宇阳11 小时前
使用 PowerShell + ffmpeg 自动压缩视频(支持 CRF、无损、目标大小模式)
ffmpeg·音视频
The_cute_cat11 小时前
FFmpeg的初步学习
学习·ffmpeg
mortimer1 天前
视频自动翻译里的“时空折叠”:简单实用的音画同步实践
python·ffmpeg·aigc
未央几许1 天前
使用ffmpeg.wasm解码视频(avi,mpg等格式)问题
前端·ffmpeg
rabbit_pro1 天前
Java 执行FFmpeg命令
java·开发语言·ffmpeg
z***56561 天前
从MySQL5.7平滑升级到MySQL8.0的最佳实践分享
ffmpeg