binhex-trimarr
binhex-trimarr
Docker app from Binhex's Repository
Overview
Requirements
Media directory
You must map at least one media directory (/media or custom path) containing your .mkv files.
Language configuration
The TRIMARR_LANGUAGE variable must be set to one or more ISO 639-2 language codes (comma-separated), e.g. 'eng' for English only or 'eng,fre' for English and French.
First run
On first run, trimarr downloads the mkvmerge binary automatically. Subsequent runs check for updates unless TRIMARR_NO_UPDATE_CHECK is set to 'yes'.
Schedule (optional)
Set TRIMARR_SCHEDULE to a cron expression to run repeatedly (e.g. '0 2 * * *' for daily at 2am). Omit for one-shot mode (container exits after processing).
Runtime arguments
- Network
bridge- Shell
bash- Privileged
- false
- Extra Params
--restart=unless-stopped
Template configuration
Container path for configuration files, database (trimarr.db), and logs.
- Target
- /config
- Default
- /mnt/user/appdata/trimarr
Container path to your media files (e.g. movies, tv). Matches the default TRIMARR_MEDIA_PATH.
- Target
- /media
- Default
- /mnt/user
(Required) ISO 639-2 language code(s) for tracks to keep. Comma-separate multiple codes, e.g. 'eng' or 'eng,fre'. See https://en.wikipedia.org/wiki/List_of_ISO_639-2_codes
- Target
- TRIMARR_LANGUAGE
Directories containing media files to process. Use pipe (|) as separator for multiple paths, e.g. /media/Movies|/media/TV
- Target
- TRIMARR_MEDIA_PATH
- Default
- /media
Cron schedule for repeated runs, e.g. '0 2 * * *' (daily at 2am), '@daily', '*/30 * * * *'. Omit for one-shot mode (container exits after processing).
- Target
- TRIMARR_SCHEDULE
If set to 'yes', each file's title metadata is updated to match its filename.
- Target
- TRIMARR_EDIT_METADATA_TITLE
- Default
- no|yes
If set to 'yes', title metadata is deleted from files. Mutually exclusive with TRIMARR_EDIT_METADATA_TITLE.
- Target
- TRIMARR_DELETE_METADATA_TITLE
- Default
- no|yes
If set to 'yes', all subtitle tracks are kept regardless of language.
- Target
- TRIMARR_KEEP_SUBTITLES
- Default
- no|yes
If set to 'yes', all audio tracks are kept regardless of language.
- Target
- TRIMARR_KEEP_AUDIO
- Default
- no|yes
If set to 'yes', audio tracks matching the film's original language (detected via IMDb/TMDb) are kept even if they don't match TRIMARR_LANGUAGE. Useful for dubbed films.
- Target
- TRIMARR_KEEP_NATIVE_AUDIO
- Default
- no|yes
If set to 'yes', original files are deleted instead of renamed to .bak after successful processing.
- Target
- TRIMARR_NO_BACKUP
- Default
- no|yes
If set to 'yes', performs a dry run without modifying any files. Defaults to 'yes' for safety — set to 'no' to allow actual processing.
- Target
- TRIMARR_DRY_RUN
- Default
- yes|no
If set to 'yes', audio tracks with channel count below the maximum surviving track are removed (e.g. drops 2ch if 8ch exists).
- Target
- TRIMARR_STRIP_LOWER_CHANNELS
- Default
- no|yes
If set to 'yes', audio and subtitle tracks whose name contains 'commentary' (case-insensitive) are removed.
- Target
- TRIMARR_STRIP_COMMENTARY
- Default
- no|yes
Python regex pattern. Any subtitle track whose name matches is removed after language filtering, regardless of language. Uses Python re syntax. Example: '(?i)songs.*signs'
- Target
- TRIMARR_STRIP_SUBTITLE_REGEX
If set to 'yes', fires one run immediately on startup before the first scheduled cron fire. Requires TRIMARR_SCHEDULE to be set.
- Target
- TRIMARR_RUN_ON_START
- Default
- no|yes
Optional TMDb API key. Used as a fallback when IMDb identification fails. Get a free key at https://www.themoviedb.org/settings/api
- Target
- TRIMARR_TMDB_API_KEY
Optional TVDB API key. Used as a fallback when IMDb and TMDb identification fails. Useful for TV shows whose NFO files contain only a TVDB ID. Get a free key at https://thetvdb.com/api
- Target
- TRIMARR_TVDB_API_KEY
If set to 'yes', audio tracks with an undefined language code ('und') are kept rather than dropped by the language filter. Useful when source files have missing or incorrect language tags.
- Target
- TRIMARR_KEEP_UNDEFINED_AUDIO
- Default
- no|yes
Logging level. Dropdown shows valid choices; INFO is default.
- Target
- TRIMARR_LOG_LEVEL
- Default
- INFO|DEBUG|SUCCESS|WARNING|ERROR
Path to SQLite database for tracking processed files.
- Target
- TRIMARR_DATABASE_PATH
- Default
- /config/trimarr/db/trimarr.db
Path to log file for tracking application events.
- Target
- TRIMARR_LOG_PATH
- Default
- /config/trimarr/logs/trimarr.log
Path to mkvmerge executable. When omitted, trimarr manages its own binary (auto-downloaded and updated).
- Target
- TRIMARR_MKVMERGE_PATH
Shell command to run before processing a directory. Use {leaf} for basename, {dir} for full path. Example: 'no_ransom.sh --unlock yes {leaf}'
- Target
- TRIMARR_PRE_PROCESS
Shell command to run after processing a directory. Use {leaf} for basename, {dir} for full path. Example: 'no_ransom.sh --unlock no {leaf}'
- Target
- TRIMARR_POST_PROCESS
Timeout in minutes for each pre/post process command. Set to 0 to disable timeout.
- Target
- TRIMARR_COMMAND_TIMEOUT_MINS
- Default
- 5
If set to 'yes', skips the automatic check for a newer mkvmerge version.
- Target
- TRIMARR_NO_UPDATE_CHECK
- Default
- no|yes
If set to 'yes', bypasses the 50% output size guard. Use when legitimate remuxes produce significantly smaller files.
- Target
- TRIMARR_SKIP_SIZE_CHECK
- Default
- no|yes
Specify whether to run startup scripts to install and/or configure additional applications.
- Target
- ENABLE_STARTUP_SCRIPTS
- Default
- no|yes
Enable or disable healthchecks.
- Target
- ENABLE_HEALTHCHECK
- Default
- yes|no
The command or script to execute, if not specified then the script healthcheck.sh will be used (process, dns and https checking).
- Target
- HEALTHCHECK_COMMAND
The action to execute if the healthcheck command returns a non zero exit code, if not specified the action will be 'exit 1', if you want the container to exit on failure then set the action to 'kill 1'.
- Target
- HEALTHCHECK_ACTION
The hostname used when performing HTTPS and DNS healthchecking.
- Target
- HEALTHCHECK_HOSTNAME
- Default
- google.com
User ID for the running container
- Target
- PUID
- Default
- 99
Group ID for the running container
- Target
- PGID
- Default
- 100
UMASK for the running container
- Target
- UMASK
- Default
- 000
Categories
Download Statistics
Details
ghcr.io/binhex/arch-trimarrRun binhex-trimarr on Unraid.
binhex-trimarr is listed in Community Apps for Unraid OS. Explore Unraid to build a flexible home server, NAS, or homelab.