快刀集(1): 一刀斩断视频片头广告

一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。


1. 引子

作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。

电影嘛,要沉浸,要专注,要氛围。结果有些无良的发布者非得在前面贴上几十秒、几分钟的广告片头:"本片由 ××× 高清首发!"、"关注我们不迷路!"、"...全国可飞",再加点音乐、加点 LOGO、再来个 10 秒静音背景图。

孰能忍?叔不能忍。------码农秋动刀了。


2. 刀长啥样

核心思路:FFmpeg + Shell脚本,无损剪切,一刀斩首。

这把刀的设计思路

  • 锋刃:FFmpeg(专业视频处理神器)
  • 刀柄:Shell脚本自动化控制
  • 招式:从指定时间开始截取,无损复制
  • 效果:覆盖原文件,保持文件名不变

简单来说,就是告诉FFmpeg:"从第X秒开始,后面的我全要,前面的垃圾统统扔掉。"


3. 铸刀

神器登场:mvcut脚本,简单粗暴,一招制敌。

bash 复制代码
#!/bin/bash

if [ $# -lt 2 ]; then
  echo "用法: $0 <视频文件> <剪掉时间 (秒或 00:02:00)>"
  exit 1
fi

INPUT_PATH="$1"
CUT_TIME="$2"

INPUT_FILE="$(cd "$(dirname "$INPUT_PATH")"; pwd)/$(basename "$INPUT_PATH")"
DIRNAME=$(dirname "$INPUT_FILE")
BASENAME=$(basename "$INPUT_FILE")
EXT="${BASENAME##*.}"
FILENAME="${BASENAME%.*}"
TEMP_FILE="${DIRNAME}/${FILENAME}_cut.${EXT}"

ffmpeg -hide_banner -loglevel error -ss "$CUT_TIME" -i "$INPUT_FILE" -c copy "$TEMP_FILE"

if [ $? -ne 0 ]; then
  echo "剪辑失败:$INPUT_FILE"
  exit 1
fi

rm -f "$INPUT_FILE"
mv "$TEMP_FILE" "$INPUT_FILE"
echo "搞定了:${INPUT_FILE}"

铸刀心法

  • -ss 参数是这把刀的锋刃,告诉FFmpeg从哪里开始切
  • -c copy 是刀的精髓,无损复制,不重新编码,速度贼快
  • 先切到临时文件,成功了再替换原文件,避免切坏了丢失原片

4. 牛刀小试

实战演示:假如有个 movie.mp4,前面2分钟都是垃圾广告。

出刀!干掉前120秒

bash 复制代码
mvcut movie.mp4 120

再来一刀!干掉前2分钟

bash 复制代码
mvcut movie.mp4 00:02:00

装备到全身

bash 复制代码
# 安家落户
mkdir -p ~/.local/bin
# 把上面代码保存为 ~/.local/bin/mvcut

# 开光加持
chmod +x ~/.local/bin/mvcut

# 随身携带
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

刀法效果:一刀下去,前面垃圾不见了,文件名还是原来的,干净利落。想剪多少秒就剪多少秒,支持时间格式,想怎么切就怎么切。


5. 后记

这把小刀虽短,但好用。我不搞高大上的GUI,也不做视频特效,一把命令行小刀,够利落,够狠。

下回再写一招"批量斩首",或者"片尾花字清除术",继续为电影"正义"而战。

老码农的江湖格言:人生苦短,片头别长。


码农秋:在代码堆里打滚的老兵 | 2025-06-07 | 快刀·一闪系列

相关推荐
花落已飘2 天前
STM32中实现shell控制台(命令解析实现)
stm32·shell
Johny_Zhao2 天前
Docker 一键安装部署 JumpServer 堡垒机
linux·网络安全·信息安全·云计算·shell·jumpserver·ldap·yum源·系统运维
Johny_Zhao3 天前
Ubuntu系统安装部署Pandawiki智能知识库
linux·mysql·网络安全·信息安全·云计算·shell·yum源·系统运维·itsm·pandawiki
bcbobo21cn4 天前
初步了解Linux etc/profile文件
linux·运维·服务器·shell·profile
1.01^100016 天前
[2-02-02].第59节:功能函数 - 函数基础
shell
___波子 Pro Max.17 天前
Shell脚本中&&和||语法解析
shell
lewis_lk19 天前
文本处理三剑客: grep、sed、awk使用指南
后端·shell
Johny_Zhao20 天前
企业级LDAP-RADIUS深度集成高可用方案
linux·网络·python·网络安全·信息安全·云计算·shell·cisco·系统运维
Johny_Zhao21 天前
基于CentOS Stream 8的物联网平台深度优化方案
linux·网络·网络安全·信息安全·云计算·shell·yum源·系统运维
Johny_Zhao22 天前
CentOS Stream 8 高可用 Kuboard 部署方案
linux·网络·python·网络安全·docker·信息安全·kubernetes·云计算·shell·yum源·系统运维·kuboard