如何在结束前2.24秒分割多个视频

问题描述 投票:1回答:1

我有一个包含100个视频的文件夹,我需要将所有视频分成2个,分割需要在每个视频结束前2秒进行。

我想在分割后保留视频的两个部分。

video ffmpeg mp4 video-editing
1个回答
0
投票

也许有一种更简单的方法可以完成它,但是您可以编写bash脚本来完成所需的操作。

您可以从类似这样的内容开始:

#!/bin/bash
file="$1"
splitTime=$(ffmpeg -i "$file" 2>&1 \
  | sed -n 's/^ *Duration: *\([^,]*\).*$/\1/p' \
  | awk -F: '{ print $1 ":" $2 ":0" $3 - 2.24; }')
# the ffmpeg command; maybe you need two of them, or maybe one is enough

它在变量splitTime中存储视频的时长,减少了2.24秒。显然,awk脚本绝对不可靠,因为它假设Duration的秒部分大于或等于10且小于12.24(这就是为什么我硬编码前导零,":0"); you should indeed make some checks in theawk`脚本,并相应地调整秒和/或分钟和/或小时。

© www.soinside.com 2019 - 2024. All rights reserved.