README-去片尾处理报告.md

抖音视频「去片尾」处理报告

处理方式

抖音分享下载的视频,末尾都固定带一段约 3.0 秒的抖音账号引导片尾卡(头像 + 抖音号 + 搜索框 + 二维码)。 本次没有统一「砍掉最后 3 秒」,而是逐条精确检测片尾的起始帧: 把整条视频逐帧与「最后一帧(片尾卡)」做灰度差分,片尾卡是静止画面,与卡片差异骤降的那一帧即片尾起点。 实测 27 条源视频的片尾长度均为 2.999~3.062 秒,与固定 3 秒片尾吻合。

裁剪采用 ffmpeg -c copy 流复制(不重编码、画质无损),只丢掉片尾的包; 唯一例外:2 条变帧率(VFR)视频因 B 帧解码顺序早于显示顺序,为保证不重编码又完整去掉片尾,末尾多丢 2 帧(≈0.03s)。

逐条结果

输出文件原始时长片尾起点去掉片尾处理后时长大小说明
share_0324b8de92e002a5ffcb534a96c81b311789332909743-无片尾.mp416.833s13.833s3.0s13.833s4.84MB
share_2100c77a52beae2c9577b914d6d1745f1789334035897-无片尾.mp429.999s27.0s2.999s26.983s3.91MB
share_278aba181407c1158da44a946fe9e7af1789334826315-无片尾.mp412.119s9.1s3.019s9.067s2.13MB末尾多丢2帧(≈0.03s,VFR)
share_2a30277bc8884d9f6b1e816d3137d38d1788576331539-无片尾.mp418.553s15.533s3.02s15.517s5.97MB
share_2eaa8ed00016625ad98080bb429d369e1789335166720-无片尾.mp438.333s35.333s3.0s35.333s4.82MB
share_45b935cc9ad9dca8cd24a36a13a1dfca1789332682579-无片尾.mp418.692s15.667s3.025s15.65s8.43MB
share_5d4cbf907e21f2506e405d6cc23f922c1789334726197-无片尾.mp410.889s7.867s3.022s7.867s2.39MB
share_5d64c5a9110c8b0768ea4df0a135427a1789334839229-无片尾.mp48.451s5.45s3.001s5.45s2.16MB
share_7569a003456230bf8c01b6563efcb6171789333060845-无片尾.mp48.172s5.133s3.039s5.133s2.56MB
share_75f1d97cbc01acf37d5310393a9f6f201789334941275-无片尾.mp413.633s10.633s3.0s10.633s4.3MB
share_7c95bae39c9e9bce9cc00bc8c3cf52331788448715062-原样(无片尾).mp4Nones—0s16.67s2.0MB源文件无片尾,未裁剪
share_81b2e11b15815c5d937e792a5b2795bd1789335493099-无片尾.mp417.762s14.7s3.062s14.7s5.68MB
share_83259a6d31bb1c11cf76466d30bba5da1789334546317-无片尾.mp410.006s6.967s3.039s6.967s2.29MB
share_8407dd053f3f7b29f8d6eee8c5ae92781789333308848-无片尾.mp411.029s8.0s3.029s8.0s1.9MB
share_8547753db3c719e4c436f594a829c7411789333383778-无片尾.mp414.176s11.167s3.009s11.167s1.93MB
share_93e5d5fc2dc0eac728abda226f95c5431788950922652-无片尾.mp439.242s36.2s3.042s36.2s7.4MB
share_9a194274e1b3ac966e9227efae163a831789334455246-无片尾.mp419.735s16.717s3.018s16.683s9.11MB末尾多丢2帧(≈0.03s,VFR)
share_a0265214f750f0336dd1c223e1b3e9011789332171494-无片尾.mp413.838s10.8s3.038s10.8s2.21MB
share_a19be536da972c2c91d674785d2ab8831789332817795-无片尾.mp417.504s14.467s3.037s14.467s7.79MB
share_ab662bc9323956edb927531a0a11dc111789333820410-无片尾.mp420.618s17.567s3.051s17.567s5.12MB
share_b87189ae14252a89a66ecbe7f17ebf081789334733045-无片尾.mp422.359s19.35s3.009s19.35s4.13MB
share_beafb098e51b1d7c7acfc13c04d4d2951789334782288-无片尾.mp416.509s13.467s3.042s13.467s6.77MB
share_bf02fc3bc2844426c31a764174810ff81789335253016-无片尾.mp416.158s13.12s3.038s13.12s3.19MB
share_cedacdcc402899bf213ea0026ec1d4e01789335210471-无片尾.mp432.367s29.36s3.007s29.36s6.87MB
share_d619cabe3511a986fa2f74442590b17b1789335701434-无片尾.mp48.474s5.467s3.007s5.467s2.3MB
share_db860e3c47c54745962946910a0b31131789333292055-无片尾.mp432.867s29.867s3.0s29.867s5.84MB
share_ddded25caac9dd411992c2e9c99c27fd1789334688259-无片尾.mp410.912s7.9s3.012s7.9s3.03MB
share_f1a203649bbce25e832fe3037a694cfa1789333195364-无片尾.mp424.217s21.2s3.017s21.2s5.05MB

质量校验(28/28 通过)

对每个产出文件逐条做了 4 项校验:

  1. 首帧一致:与源文件首帧逐字节相同 → 片头内容零损失;
  2. 整条解码无报错:ffmpeg -f null - 全解码无 error(流复制不会留下坏帧/悬空参考帧);
  3. 尾帧不是片尾:产出文件最后 0.5 秒的每一帧与源文件片尾卡做图像差分,差异均很大(无残留卡片);
  4. 音视频完整:h264 + aac 双流俱在,时长与画面长度一致。

唯一需要说明的一条:share_8547753db3c719e4c436f594a829c7411789333383778-无片尾.mp4 结尾是画面淡出到黑(带抖音号水印), 与深色片尾卡的灰度差异偏小(14.6),已人工逐帧确认该帧是正片淡出而非片尾卡;其视频流最大 PTS 11.133s < 片尾起点 11.167s。

未处理的相关文件

复现命令(单条)

# 1) 找片尾起点:与最后一帧逐帧差分,diff 骤降处即片尾起点 T(秒)与帧号 N
# 2) 无损裁剪(N = 片尾首帧的帧序号)
ffmpeg -i 源.mp4 -frames:v N -t T -c copy -movflags +faststart 输出.mp4
下载此文件