Install
openclaw skills install xiaomi-touchscreen-alarm-clock-video-productionB站视频下载裁剪压缩工具。下载bilibili视频、裁剪去除边框、压缩到指定大小时使用。支持b23.tv短链和BV号。别名:闹钟视频下载。
openclaw skills install xiaomi-touchscreen-alarm-clock-video-production固定下载720P分辨率视频(格式ID: 30064+30280): python -m yt_dlp -f "30064+30280" -o PATH --merge-output-format mp4 URL
说明: 30064为720P视频流,30280为音频流
使用固定裁剪参数直接裁剪: ffmpeg -y -i IN -vf "crop=792:600:432:56" -c:v libx264 -crf 18 -c:a copy OUT
固定裁剪参数(720p): crop=792:600:432:56
步骤1: 去除前10秒 ffmpeg -y -i IN -ss 00:00:10 -c:v libx264 -crf 18 -c:a copy TEMP
步骤2: 获取剩余视频时长 ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 TEMP
步骤3: 去除后10秒(总时长-10) ffmpeg -y -i TEMP -t (duration-10) -c:v libx264 -crf 18 -c:a copy OUT
说明: 固定去除片头10秒和片尾10秒,总时长减少20秒
目标:压缩到10MB以内
步骤1: 获取视频时长 ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 INPUT_VIDEO
步骤2: 计算动态码率 使用Python计算码率参数(以目标10MB为例):
target_MB = 10
duration = 217.345783 # 从步骤1获取的实际时长
vbr = int((target_MB * 0.9 * 8 * 1024) / duration - 64) # 视频码率
maxrate = int(vbr * 1.5) # 最大码率
bufsize = int(vbr * 2) # 缓冲大小
# 示例输出: vbr=275k, maxrate=412k, bufsize=550k
计算公式:
步骤3: 执行压缩 使用计算出的参数执行压缩: ffmpeg -y -i INPUT_VIDEO -c:v libx264 -b:v 275k -maxrate 412k -bufsize 550k -c:a aac -b:a 64k -ar 44100 OUTPUT_VIDEO
验证压缩结果: ffprobe -v error -show_entries format=size -of default=noprint_wrappers=1:nokey=1 OUTPUT_VIDEO
实际案例参考:
scripts/download_and_process.py: python scripts/download_and_process.py URL --format_id "30064+30280" --crop "792:600:432:56" --max_size_mb 10 参数: url, --format_id, --crop, --max_size_mb(10), --filename(bilibili_video), --output_dir(Documents)