mkv-set-default-track
Set which audio or subtitle track plays by default in a Matroska container using mkvpropedit.
Skill by danielrosehill
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/danielrosehill-mkv-set-default-track
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/mkv-set-default-track
Tools it pre-approves 10
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Bash(test*),Bash(whichBash(mkvpropeditBash(mkvmergeBash(cpBash(rmBash(lsRead,Write
What's inside
- Skill name
mkv-set-default-track- Description
- Set which audio or subtitle track plays by default in a Matroska container using mkvpropedit. Use when the user says "set the default audio", "make this subtitle track default", "this audio language should play first", "change the default track". Idempotent, no re-encode.
- License
- MIT
- Allowed tools
- Bash(test, *),, Bash(which, *),, Bash(mkvpropedit, *),, Bash(mkvmerge, *),, Bash(cp, *),, Bash(rm, *),, Bash(ls, *),, Read,, Write
- Instructions
- 73 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves some shell commands
Files (1)
- SKILL.md
SKILL.md (first lines)
# MKV Set Default Track
Change which audio or subtitle track is marked as default in a Matroska container. Does not re-encode or mux; only updates metadata flags.
## When to use
- User wants a different audio or subtitle track to play by default
- After acquiring a multi-language rip, set the preferred language as default
- Unset defaults from other tracks in the same type (e.g., only one audio track should be default)
## Inputs to gather
- **File** — path to MKV file (required)
- **Track index** — the track number to set as default (required; from `mkv-track-list`)
- **Unset others** — boolean flag; if true, unset default flags on all other tracks of the same type (optional, default: false)
## Procedure
### 1. Check mkvtoolnix is installed
```bash
if ! command -v mkvpropedit >/dev/null; then
echo "mkvtoolnix not installed. Install: apt install mkvtoolnix"
exit 1
fi
```
### 2. Validate track index
Query the file to confirm the track exists:
```bash
mkvmerge -i "$FILE" | grep "^Track ID $TRACK_INDEX:" || {
echo "Track $TRACK_INDEX not found in $FILE"
exit 1
}
```
### 3. Set default flag on target track
```bash
mkvpropedit "$FILE" --edit "track:$TRACK_INDEX" --set "flag-default=1"
```
### 4. Optionally unset default on other tracks of the same type
If `--unset-others` was requested:
1. Detect the type of the target track (video/audio/subs) from `mkvmerge -i` output.
2. For each other track of the same type, run:
```bash
mkvpropedit "$FILE" --edit "track:$OTHER_TRACK_INDEX" --set "flag-default=0"
```
### 5. Verify
Re-run `mkvmerge -i` and show the user the updated flags for tracks of the target type.
## Output / side effects
- Modifies the target MKV file in-place (metadata only, no re-encode).
- Prints the updated track flags before/after.
- Original is unrecoverable; no backup created (this is an explicit design choice: the operation is idempotent and non-destructive).
## Notes
- mkvpropedit operates in-place. For extra safety, offer the user a one-line backup suggestion before committing: `cp file.mkv file.mkv.bak`.
- Setting a track as default is idempotent — running the command twice has the same effect as running it once.
- Only one audio and one subtitle track can be default within an MKV. If the user's player ignores the flag, check that no other track of the same type is also flagged.
- Some players (VLC, mpv) respect default flags; others (older hardware players) may ignore them. No way to enforce player behavior from this skill.From danielrosehill/Claude-Video-Editor-Plugin, MIT.
More from danielrosehill/Claude-Video-Editor-Plugin
- 0.418score
mkv-strip-tracks
danielrosehill
Remove unwanted tracks (audio, subtitle, video) from a Matroska container and save a new, smaller file.
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
agentic-edit
danielrosehill
Run an agentic / LLM-driven cut-down on a long video — "make a 60-second highlight reel of this hour-long stream", "cut the boring parts from this lecture"…
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
audio-analysis
danielrosehill
Extract audio from a video (or analyze a standalone audio file) and report loudness — integrated LUFS, true peak (dBTP), loudness range — against a target…
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
audio-to-music-video
danielrosehill
Turn an audio file into a music video by compositing a waveform / spectrum / circular-CQT animation over cover art or a background.
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
auto-cut-silences
danielrosehill
Remove silent / dead-air segments from a video or audio file using auto-editor.
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
burn-graphics
danielrosehill
Overlay graphics onto a video — lower thirds, watermarks/logos, image overlays, or text titles — at specified timestamps.
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
burn-subtitles
danielrosehill
Generate subtitles (whisper.cpp / faster-whisper) for a video and either save the SRT alongside or burn them into the picture.
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
clean-transcription
danielrosehill
Clean up a raw whisper transcript (SRT or TXT) — strip filler words, fix recurring mistranscriptions via a per-project glossary, and (optionally) re-flow line…
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
create-render-profile
danielrosehill
Build a named, reusable render profile (codec + resolution + bitrate/QP + container) by iterating on a 30-second test clip until file size and quality are…
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
cut-segment
danielrosehill
Extract one or more time-range segments from a video.
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
dedupe-clips
danielrosehill
Find duplicate or near-duplicate clips in a folder.
SkillCFreshness: C★ 6Claude Code +9 - 0.418score
delete-render-profile
danielrosehill
Delete a saved render profile by name.
SkillCFreshness: C★ 6Claude Code +9
Signals
- Stars
- 6
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- May 3, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from danielrosehill
- 0.470score
plugin-data-storage
danielrosehill
Canonical reference for where Claude Code plugins should persist user data.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
save-plan
danielrosehill
Save a Claude Code plan (from ExitPlanMode, design discussion, or multi-step task) to persistent storage.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
onboard
danielrosehill
First-run onboarding for the adb-ops plugin.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
context-gate
danielrosehill
One-shot context-checkpoint workflow — when the current session is getting cluttered, write a structured handover plan capturing what's done and what's…
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
context-workflow-reference
danielrosehill
Reference and worked example for the CONTEXT.md / CLAUDE.md two-file workflow.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
scaffold-planning
danielrosehill
Create a lightweight `planning/` folder in the current repo with leftover-tasks.md, blockers.md, session-logs/, and handovers/.
SkillAFreshness: A★ 2Claude Code +9
Cite this page
mkv-set-default-track skill. Agent Mart. https://agentmart.dev/skills/danielrosehill-mkv-set-default-track (last updated 2026-10-24)