ffmpeg - 从最后开始用 x 时间切割多个视频(ffmpeg?)

标签 ffmpeg

我没有使用 ffmpeg 的历史,但我认为这将是适合这项工作的工具。我正在尝试剪切不同长度的视频文件夹。我想把它们都剪到最后 12 秒。那就是:在 30 秒的视频中,我会留下 00:18 - 00:30。 00:00-00:17 将被删除。
我在 mac OS Mojave 上。看来 ffmpeg 是批量编辑这些视频的正确工具。有人可以帮我完成这个吗?我有一些基本的了解,但需要解释代码/脚本,以便我可以将其应用于我自己的用途。非常感谢。

最佳答案

从输入中获取持续时间。使用 bc 实用程序计算时间位置:$(echo "$DUR"-12 | bc -l)

#!/bin/bash
for f in *.mkv; do
  DUR="$(ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 "$f")"
  ffmpeg -ss $(echo "$DUR" -12 | bc -l) -i "$f" -map 0 -c copy "${f%.*}_trim.mkv"
done
将从关键帧复制,因此不等于 12 秒。为了准确起见,您必须转换,将“-c copy”替换为“-c:v h264_nvenc -cq 18 -c:a aac -q:a 4”或您想要的内容。
#!/bin/bash
for f in *.mkv; do
  ffmpeg -sseof -12 -i "$f" -map 0 -c:v h264_nvenc -cq 18 -c:a aac -q:a 4 "${f%.*}_trim.mkv"
done
感谢吉安
[添加信息]
在包含视频的文件夹中创建上述脚本。或者运行一个字符串,编辑每个文件:
ffmpeg -sseof -12 -i "input.mp4" -map 0 -c:v libx264 -b:v 3M -c:a aac -b:a 320k "output.mkv"

关于ffmpeg - 从最后开始用 x 时间切割多个视频(ffmpeg?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64493747/

相关文章:

ffmpeg 交叉淡入淡出 2 张 1080p 的图片

c - fatal error :libavcodec/avcodec.h No such file or directory

FFMpeg - 很难使用吗

node.js - Node.js Web 应用程序上的 IBM Watson 语音到文本音频转换

c++ - 使用 Qt 5.0 以编程方式创建视频

audio - 使用 FFMPEG 从 Quicktime 中提取多声道音频

video - FFmpeg 修剪 .3gp 并另存为 .mp4 不起作用

c++ - 编码为 H264 视频的图像被跳过和/或丢失?

java - 安卓和 ffmpeg。播放视频(有声)

ffmpeg - 什么是实时 4k 视频编码的最佳库/SDK?