如何限制给定视频的视频持续时间.例如,如果我们上传一个不超过5分钟的视频,我需要FFMPEG中的元数据.你能找到答案.
小智 40
使用-t选项指定时间限制:
`-t duration'
Restrict the transcoded/captured video sequence to the duration specified in seconds. hh:mm:ss[.xxx] syntax is also supported.
Run Code Online (Sandbox Code Playgroud)
http://www.ffmpeg.org/ffmpeg.html
Pau*_*rez 11
只是为了更详细的使用和示例进一步阐述。
正如FFMpeg 文档中所指定的
-t duration (输入输出)
ffmpeg -t 5 -i input.mp3 testAsInput.mp3
ffmpeg -i input.mp3 -t 5 testAsOutput.mp3
-to position (输入输出)
to而不是tduration或position必须是持续时间规范,如ffmpeg-utils(1) 手册中指定。
[-][HH:]MM:SS[.m...]或者[-]S+[.m...][s|ms|us]-to和-t是互斥的,并且 -t 具有优先权。
注意:-f pulse -i 1是我的系统音频,-f pulse -i 2是我的麦克风输入
让我们想象一下我想无限期地同时录制我的麦克风和扬声器。(直到我用+强行停止)CtrlC
ffmpeg \
-f pulse -i 1 \
-f pulse -i 2 \
-filter_complex "amix=inputs=2" \
testmix.mp3
Run Code Online (Sandbox Code Playgroud)
ffmpeg \
-t 5 -f pulse -i 1 \
-f pulse -i 2 \
-filter_complex "amix=inputs=2:duration=longest" \
testmix.mp3
Run Code Online (Sandbox Code Playgroud)
注意::duration=longestamix 选项无论如何都是默认选项,因此不需要显式指定
ffmpeg \
-t 5 -f pulse -i 1 \
-t 10 -f pulse -i 2 \
-filter_complex "amix=inputs=2:duration=longest" \
testmix.mp3
Run Code Online (Sandbox Code Playgroud)
ffmpeg \
-t 5 -f pulse -i 1 \
-f pulse -i 2 \
-filter_complex "amix=inputs=2:duration=longest" \
-t 10 testmix.mp3
Run Code Online (Sandbox Code Playgroud)
注意:关于开始position搜索/寻求这个答案,我做了一些调查,可能也很有趣。
一个例子;
ffmpeg -f lavfi -i color=s=1920x1080 -loop 1 -i "input.png" -filter_complex "[1:v]scale=1920:-2[fg]; [0:v][fg]overlay=y=-'t*h*0.02'[v]" -map "[v]" -t 00:00:03 output.mp4
Run Code Online (Sandbox Code Playgroud)
这会将最长时间设置为 3 秒。请注意,如果您在此命令的开头设置 -t ,则它必须位于输出文件之前,即ffmpeg -t ....它将不起作用。
| 归档时间: |
|
| 查看次数: |
53258 次 |
| 最近记录: |