Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Logo

videotagger.fish

Smart Video Tagger and Renamer.

Contributors Forks Stargazers Issues License

Table of Contents

About

If you run a media server (Plex, Radarr, Sonarr, etc), you know how important it is to keep your library clean and consistent.

But when downloading video files manually, filenames often come messy, inconsistent, and break automation β€” or just clutter your collection.

videotagger helps fix that.

It intelligently analyzes your video files (using ffprobe) and generates new, standardized filenames that reflect each file's resolution, codec, audio layout, and subtitles β€” all without requiring any manual tagging.

It's built for speed, flexibility, and everyday use.

(back to top)

Features

  • πŸ“Ί Detects and tags resolution (e.g. 720p, 1080p)
  • πŸŽ₯ Detects video codec (H264, HEVC, etc.)
  • πŸ”Š Tags audio tracks by codec, channel layout and language (AAC2.0 (ENG))
  • πŸ’¬ Includes subtitle info (e.g. MSubs, ENGSub)
  • πŸ“ Renames files using a consistent scene-style format
  • πŸ“¦ Pre-processes filenames to avoid duplicate tags
  • 🈳 Fallback to UND for undefined language streams
  • 🚫 Skips files with missing resolution or invalid metadata
  • πŸ§ͺ Dry-run mode for safe previews
  • πŸ” Undo feature with log tracking
  • πŸ“ Recursive support for batch folders
  • 🐚 Native Fish Shell script β€” no external dependencies (besides ffmpeg)

(back to top)

Requirements

You can install ffmpeg via:

brew install ffmpeg      # macOS (Homebrew)
sudo apt install ffmpeg  # Debian/Ubuntu

(back to top)

Installation

Install with Fisher:

fisher install demartini/videotagger.fish

(back to top)

Usage

Command Description
videotagger Preview all videos in current folder
videotagger -d, --dry-run Show only files that would be renamed
videotagger -r, --rename Rename files and save a log
videotagger -u, --undo Undo last renaming
videotagger -R, --recursive Recursively scan subfolders
videotagger -v, --version Show version
videotagger -h, --help Display help message

πŸ’‘ Tip: You can also use vt as a shortcut alias for videotagger.

Example output

🎬 File:        Some.Movie.2023.mp4
πŸ“Ί Resolution:  1080p
πŸŽ₯ Video:       H264
πŸ”Š Audio:       AAC2.0 (ENG)
πŸ’¬ Subtitle:    Multiple languages (2)
πŸ“ New name:    Some.Movie.2023.1080p.WEB-DL.ENG-AAC2.0.H264.MSubs.mp4

(back to top)

Contributing

If you are interested in helping contribute, please take a look at our contribution guidelines and open an issue or pull request.

(back to top)

Changelog

See CHANGELOG for a human-readable history of changes.

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

About

Smart Video Tagger and Renamer.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Sponsor this project

Used by

Contributors

Languages