Token导航 LogoToken导航TokenDH.com
待分类可写文件github未标认证来源可访问clear审计通过

audio-trimmer音频修剪器

Agent Skill

用于辅助音频、音乐、语音转写、语音合成或声音素材处理。它适合让 Agent 生成配乐说明、整理音频流程、调用语音工具或处理播客和视频配音素材。使用时需要确认输入音频来源、输出格式、时长和模型限制;涉及人声克隆、版权音乐或公开发布时,应先核对授权和合规边界。

总安装

1,557

周安装

63

GitHub Stars

53

下载量

489
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:audio-trimmer(音频修剪器)
来源仓库:https://github.com/dkyazzentwatwa/chatgpt-skills
仓库路径:skills/audio-trimmer
安装命令:
npx skills add https://github.com/dkyazzentwatwa/chatgpt-skills --skill audio-trimmer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/dkyazzentwatwa/chatgpt-skills --skill audio-trimmer

简介

用于精确剪辑音频文件,支持裁剪、淡入淡出、变速和片段拼接。

  • 可提取特定时间段内容并应用基础音频处理效果。
  • 适用于播客片段提取、广告去除和音频素材重组等编辑需求。
  • 安装方式:github,通过 npx skills add 命令从指定仓库添加。
  • 注意:concatenate 方法支持多文件合并,建议预处理确保采样率一致。

SKILL.md

Audio Trimmer

Edit audio files with precise cutting, trimming, and effects. Extract segments, add fades, adjust speed, concatenate clips, and apply basic audio manipulations.

Quick Start

from scripts.audio_trimmer import AudioTrimmer

# Trim to segment
trimmer = AudioTrimmer("podcast.mp3")
trimmer.trim(start="00:05:30", end="00:10:00")
trimmer.save("segment.mp3")

# Add fades and save
trimmer = AudioTrimmer("song.mp3")
trimmer.fade_in(3000).fade_out(5000).save("song_faded.mp3")

# Concatenate multiple files
AudioTrimmer.concatenate(["intro.mp3", "main.mp3", "outro.mp3"], "full_episode.mp3")

Features

  • Precise Trimming: Cut segments by timestamp or milliseconds
  • Fade Effects: Fade in/out with customizable duration
  • Speed Control: Speed up or slow down audio
  • Concatenation: Join multiple audio files
  • Basic Effects: Reverse, loop, overlay
  • Silence Operations: Add silence, remove silence
  • Volume Adjustment: Gain control, normalization

API Reference

Initialization

trimmer = AudioTrimmer("audio.mp3")

Trimming

# By timestamp (HH:MM:SS or MM:SS)
trimmer.trim(start="01:30", end="05:00")

# By milliseconds
trimmer.trim(start_ms=90000, end_ms=300000)

# From start to timestamp
trimmer.trim(end="02:00")

# From timestamp to end
trimmer.trim(start="10:00")

Fade Effects

# Fade in at start (milliseconds)
trimmer.fade_in(3000)  # 3 second fade in

# Fade out at end
trimmer.fade_out(5000)  # 5 second fade out

# Crossfade (for concatenation)
AudioTrimmer.concatenate_with_crossfade(files, output, crossfade_ms=2000)

Speed Control

# Speed up (1.5x)
trimmer.speed(1.5)

# Slow down (0.75x)
trimmer.speed(0.75)

Effects

# Reverse audio
trimmer.reverse()

# Loop audio N times
trimmer.loop(3)

# Overlay another audio
trimmer.overlay("background.mp3", position_ms=0, volume=-6)

Volume

# Adjust volume (dB)
trimmer.gain(6)   # Increase by 6 dB
trimmer.gain(-3)  # Decrease by 3 dB

# Normalize to target level
trimmer.normalize(-3)  # Normalize to -3 dBFS

Silence Operations

# Add silence at start
trimmer.add_silence_start(2000)  # 2 seconds

# Add silence at end
trimmer.add_silence_end(1000)

# Strip leading/trailing silence
trimmer.strip_silence(threshold=-50)  # dBFS threshold

Concatenation

# Simple concatenation
AudioTrimmer.concatenate(
    ["file1.mp3", "file2.mp3", "file3.mp3"],
    "output.mp3"
)

# With crossfade
AudioTrimmer.concatenate_with_crossfade(
    ["intro.mp3", "main.mp3", "outro.mp3"],
    "output.mp3",
    crossfade_ms=2000
)

Save

# Save to file (format from extension)
trimmer.save("output.mp3")

# Explicit format and quality
trimmer.save("output.mp3", format="mp3", bitrate=320)

CLI Usage

# Trim segment
python audio_trimmer.py --input podcast.mp3 --output segment.mp3 --start 05:30 --end 10:00

# Add fades
python audio_trimmer.py --input song.mp3 --output faded.mp3 --fade-in 3000 --fade-out 5000

# Speed up
python audio_trimmer.py --input lecture.mp3 --output fast.mp3 --speed 1.5

# Concatenate files
python audio_trimmer.py --concat file1.mp3 file2.mp3 file3.mp3 --output merged.mp3

# Extract multiple segments
python audio_trimmer.py --input podcast.mp3 --segments "00:00-05:00,10:00-15:00,20:00-25:00" --output-dir ./clips/

CLI Arguments

ArgumentDescriptionDefault
--inputInput audio fileRequired
--outputOutput file pathRequired
--startStart timestamp (HH:MM:SS or MM:SS)-
--endEnd timestamp-
--fade-inFade in duration (ms)-
--fade-outFade out duration (ms)-
--speedSpeed multiplier1.0
--gainVolume adjustment (dB)0
--reverseReverse audioFalse
--normalizeNormalize to dBFS level-
--concatFiles to concatenate-
--crossfadeCrossfade duration for concat (ms)0
--segmentsMultiple segments to extract-

Examples

Extract Podcast Segment

trimmer = AudioTrimmer("episode_42.mp3")
trimmer.trim(start="15:30", end="22:45")
trimmer.fade_in(1000)
trimmer.fade_out(2000)
trimmer.save("highlight_clip.mp3")

Create Ringtone

trimmer = AudioTrimmer("song.mp3")
trimmer.trim(start="01:15", end="01:45")  # 30-second segment
trimmer.fade_in(500)
trimmer.fade_out(1000)
trimmer.normalize(-3)
trimmer.save("ringtone.mp3", bitrate=192)

Speed Up Lecture

trimmer = AudioTrimmer("lecture.mp3")
trimmer.speed(1.25)  # 25% faster
trimmer.normalize(-16)  # Podcast-friendly level
trimmer.save("lecture_fast.mp3")

Build Episode from Segments

# With crossfades between segments
AudioTrimmer.concatenate_with_crossfade(
    files=[
        "intro_music.mp3",
        "sponsor_read.mp3",
        "main_content.mp3",
        "outro_music.mp3"
    ],
    output="full_episode.mp3",
    crossfade_ms=1500
)

Extract Multiple Highlights

# Extract several segments from a long recording
trimmer = AudioTrimmer("meeting_recording.mp3")

segments = [
    ("00:05:00", "00:08:30", "intro"),
    ("00:25:00", "00:32:00", "discussion"),
    ("01:15:00", "01:20:00", "conclusion")
]

for start, end, name in segments:
    t = AudioTrimmer("meeting_recording.mp3")
    t.trim(start=start, end=end)
    t.fade_in(500)
    t.fade_out(500)
    t.save(f"{name}.mp3")

Add Background Music

# Overlay quiet background music
trimmer = AudioTrimmer("podcast.mp3")
trimmer.overlay(
    "ambient_music.mp3",
    position_ms=0,
    volume=-15,  # 15 dB quieter
    loop=True    # Loop to fill duration
)
trimmer.save("podcast_with_music.mp3")

Time Format Reference

The trimmer accepts these timestamp formats:

FormatExampleMeaning
MM:SS05:305 minutes 30 seconds
HH:MM:SS01:30:001 hour 30 minutes
SS9090 seconds
SS.ms90.50090.5 seconds

Dependencies

pydub>=0.25.0

Note: Requires FFmpeg installed on system.

Limitations

  • Speed adjustment may affect pitch (no pitch preservation)
  • Very large files may consume significant memory
  • Crossfade works best with similar audio levels

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenCode

27.35%
按下载量换算134

Claude Code

24.71%
按下载量换算121

Codex

20.28%
按下载量换算99

Gemini CLI

14.15%
按下载量换算69

Antigravity

8.91%
按下载量换算44

windsurf

3.33%
按下载量换算16

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

可写文件

该 Skill 可能写入或修改本地文件,使用前需要确认目标目录和修改范围。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills