Skip to content
Back to skills

Arch Video Cut

ASecurity

Automatic architecture video editing workflow with self-learning preferences

  • 92 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 29, 2026
toolspythonbash

Works with

  • cli

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 8 files and shows the line behind each finding

Scanned May 29, 2026

npx -y skills add aAAaqwq/AGI-Super-Team --skill arch-video-cut --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Arch Video Cut?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Arch Video Cut
[![Security: A β€” Skills Directory](https://www.skillsdirectory.com/api/skills/aaaaqwq-arch-video-cut/badge)](https://www.skillsdirectory.com/skills/aaaaqwq-arch-video-cut)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: arch-video-cut
description: Automatic architecture video editing workflow with self-learning preferences
---

# arch-video-cut

Automatic Architecture Video Editing Workflow with Self-Learning Preferences

---

## Description

Automatically complete the full architecture video editing workflow: multi-video merging, speech-to-text subtitles, background music mixing, and dual output (landscape + portrait). Built-in self-learning system remembers your editing preferences.

**Core Features:**
- 🎬 Auto merge multiple videos + duration compression
- πŸŽ™οΈ Speech transcription or custom subtitles
- 🎡 Smart background music generation + mixing
- πŸ“± Dual output: landscape (16:9) + portrait (3:4)
- 🧠 Self-evolving preference system

---

## Usage

### Quick Start

```bash
cd ~/.openclaw/workspace/skills/arch-video-cut
python3 scripts/full_workflow.py
```

### Prerequisites

1. **Install dependencies:**
```bash
brew install ffmpeg-full  # Required for libass subtitle support
pip3 install faster-whisper  # Optional: for speech transcription
```

2. **Prepare materials:**
- Audio file: `~/Desktop/ζ–°ε½•ιŸ³ XX.m4a` (narration voiceover)
- Video folder: `data/m1/` (architecture video clips to merge)

3. **Configure preferences (optional):**
```bash
python3 scripts/manage_preferences.py set
```

---

## Commands

| Command | Description |
|------|------|
| `python3 scripts/full_workflow.py` | Execute full editing workflow |
| `python3 scripts/manage_preferences.py show` | View current preferences |
| `python3 scripts/manage_preferences.py set` | Interactive preference editor |
| `python3 scripts/manage_preferences.py reset` | Reset to defaults |

---

## Configuration

### Preferences

Edit `config/user_preferences.json` or run `manage_preferences.py set`:

```json
{
  "video": {
    "target_duration": 20.0,      // Target duration in seconds
    "vertical_format": "3:4",     // Portrait aspect ratio
    "vertical_resolution": "1080x1440"
  },
  "subtitles": {
    "horizontal_font_size": 14,   // Landscape font size (px)
    "vertical_font_size": 10,     // Portrait font size (px)
    "font_name": "STHeiti",       // Font family
    "auto_wrap": true,            // Auto word wrap
    "margin_v": 30                // Bottom margin (px)
  },
  "audio": {
    "background_music_volume": 0.15,  // BGM volume (0-1)
    "fade_in_duration": 2,            // Fade-in duration (sec)
    "fade_out_duration": 2            // Fade-out duration (sec)
  }
}
```

### Custom Subtitles

Edit the `subtitles_text` array in `transcribe_audio()` function:

```python
subtitles_text = [
    "These six renovation projects were transformed from abandoned schools",
    "Historic buildings, red brick houses, tile-roof homes, single-story factories, and rural self-built houses",
    "Through minimalist design approaches and low-cost renovation strategies",
    "Giving old buildings new life",
    "While balancing contemporary aesthetics and market demands",
]
```

---

## Output

**Output location:** `data/` folder

| File | Description |
|------|------|
| `edited_video_final_with_subtitles.mp4` | Landscape version (16:9) |
| `edited_video_final_with_subtitles_3x4.mp4` | Portrait version (3:4) |

**Example output:**
```
βœ… All done!
πŸ“ Output: data/edited_video_final_with_subtitles.mp4
πŸ“Š Size: 16.0MB
🎬 Duration: 20.04 seconds
```

---

## Workflow

```
1. Merge videos β†’ Compress to target duration
2. Generate subtitles β†’ Allocate timeline based on audio duration
3. Generate BGM β†’ Piano chords + fade in/out
4. Mix audio β†’ Voiceover + background music
5. Burn subtitles β†’ Landscape + Portrait versions
```

**Total processing time:** ~2-3 minutes (depends on video count and duration)

---

## Self-Learning

Built-in preference learning system automatically records your editing habits:

- πŸ“ Saves configuration after each edit
- πŸ“Š Keeps last 20 adjustment records
- πŸ”„ Auto-applies preferences on next run
- πŸŽ›οΈ Modify anytime via `manage_preferences.py`

**View learning history:**
```bash
python3 scripts/manage_preferences.py show
```

---

## Examples

### Example 1: Quick Edit
```bash
# Place 5 video clips in data/m1/
# Place voiceover audio at ~/Desktop/ζ–°ε½•ιŸ³ 74.m4a
cd ~/.openclaw/workspace/skills/arch-video-cut
python3 scripts/full_workflow.py
```

### Example 2: Adjust Font Size
```bash
# Interactive modification
python3 scripts/manage_preferences.py set
# Input: horizontal font size 18px

# Re-edit with new font automatically applied
python3 scripts/full_workflow.py
```

### Example 3: Create 30-Second Version
```bash
# Modify preference
python3 scripts/manage_preferences.py set
# Input: target duration 30 seconds

# Edit
python3 scripts/full_workflow.py
```

---

## Troubleshooting

### ❌ ffmpeg-full not found
```bash
brew install ffmpeg-full  # Required for libass subtitle support
```

### ❌ Subtitles not showing
Check if `ffmpeg-full` is installed (system ffmpeg doesn't support libass)

### ❌ Transcription failed
```bash
pip3 install faster-whisper
# Or skip transcription and edit subtitle text directly in script
```

### ❌ Wrong video aspect ratio
Modify `vertical_format` in `config/user_preferences.json`

---

## Files

```
arch-video-cut/
β”œβ”€β”€ SKILL.md                    # This file
β”œβ”€β”€ SELF_LEARNING_GUIDE.md      # Self-learning detailed guide
β”œβ”€β”€ README.md                   # Quick start guide
β”œβ”€β”€ config/
β”‚   └── user_preferences.json   # User preferences
β”œβ”€β”€ scripts/
β”‚   β”œβ”€β”€ full_workflow.py        # Main editing script
β”‚   β”œβ”€β”€ preference_learner.py   # Preference learner
β”‚   └── manage_preferences.py   # Preference manager
└── data/
    β”œβ”€β”€ m1/                     # Input video folder
    β”œβ”€β”€ temp_edit/              # Temporary files
    └── *.mp4                   # Output videos
```

---

## Version

**v1.0.0** - 2026-03-18

- βœ… Multi-video merge + duration compression
- βœ… Custom subtitle text
- βœ… Background music generation + mixing
- βœ… Landscape + Portrait dual output
- βœ… Self-evolving preference system

---

## Author

**WildUrban Architect - Linwangming**

**Website:** http://www.ual-studio.com/

---

_Make tools adapt to you, not you to tools._ 🧠

Files in this skill

  • .clawdhub/origin.json146 B
  • README.md877 B
  • SELF_LEARNING_GUIDE.md4.4 KB
  • SKILL.md6.1 KB
  • _meta.json133 B
  • scripts/full_workflow.py10.3 KB
  • scripts/manage_preferences.py2.4 KB
  • scripts/preference_learner.py5.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.