Media Management#

Naming, file management and root folder configuration.

radarr:
  settings:
    media_management:
      rename_movies: true
      replace_illegal_characters: true
      colon_replacement: space-dash-space
      standard_movie_format: "\
        {Movie CleanTitle} - \
        {Edition Tags }\
        {[Custom Formats] }\
        {[Quality Full] }\
        {[MediaInfo 3D] }\
        {[MediaInfo VideoDynamicRangeType] }\
        [{Mediainfo AudioCodec}{ Mediainfo AudioChannels}]\
        { [Mediainfo VideoCodec]}\
        { [Release Group]} - \
        Default"
      movie_folder_format: '{Movie CleanTitle} ({Release Year}) [imdbid-{ImdbId}]'
      create_missing_movie_folders: false
      delete_empty_folders: false
      skip_free_space_check: false
      minimum_free_space: 100  # MB
      use_hardlinks: true
      import_using_script: false
      import_script_path: null
      import_extra_files: false
      unmonitor_deleted_movies: false
      propers_and_repacks: do-not-prefer
      analyze_video_files: true
      rescan_folder_after_refresh: always
      change_file_date: none
      recycling_bin: null
      recycling_bin_cleanup: 28  # days
      set_permissions: false
      chmod_folder: drwxr-xr-x
      chown_group: null
      root_folders:
        delete_unmanaged: true
        definitions:
          - /path/to/movies

For more information on how to configure these options correctly, refer to these guides from WikiArr and TRaSH-Guides.

Settings#

rename_movies: bool = False class-attribute instance-attribute #

Rename imported files to the defined standard format.

Radarr will use the existing file name if renaming is disabled.

replace_illegal_characters: bool = True class-attribute instance-attribute #

Replace illegal characters within the file name.

If set to false, Radarr will remove them instead.

colon_replacement: ColonReplacement = ColonReplacement.delete class-attribute instance-attribute #

Replace or delete full colons (:) in release titles with alternative characters when saving files.

Values:

  • delete - Delete without replacement (e.g. One:TwoOneTwo) (default)
  • dash - Replace with a dash (e.g. One:TwoOne-Two)
  • dash-space - Replace with a dash and a space (e.g. One:TwoOne- Two)
  • space-dash-space - Replace with a space-separated dash (e.g. One:TwoOne - Two)
standard_movie_format: NonEmptyStr = '{Movie Title} ({Release Year}) {Quality Full}' class-attribute instance-attribute #

File renaming format for a standard movie file.

movie_folder_format: NonEmptyStr = '{Movie Title} ({Release Year})' class-attribute instance-attribute #

Renaming format for a movie folder.

create_missing_movie_folders: bool = False class-attribute instance-attribute #

Create missing movie folders during disk scan.

delete_empty_folders: bool = False class-attribute instance-attribute #

Delete empty media folders during disk scan and when episode files are deleted.

skip_free_space_check: bool = False class-attribute instance-attribute #

Skip the free space check for the movie root folder.

Only enable when Radarr is unable to detect free space from your series root folder.

minimum_free_space: int = Field(100, ge=100) class-attribute instance-attribute #

Prevent import if it would leave less than the specified amount of disk space available (in megabytes).

Minimum value is 100 MB.

Use hard links when trying to copy downloaded media files from torrents that are still being seeded.

Using hard links saves a large amount of disk space due to having only one physical copy of the data accessible from multiple locations.

However, using hard links requires that the following conditions are met in your setup:

  • Torrent folders and root folders are on the same physical filesystem.
  • When using containers, both containers use the same directory tree structure for all folders (e.g. /path/to/torrents and /path/to/movies must be located at the same paths according to both containers).

Note

Occasionally, file locks may prevent renaming files that are being seeded. You may temporarily disable seeding and use Radarr's rename function as a work around.

import_using_script: bool = False class-attribute instance-attribute #

Copy files for importing using a script (e.g. for transcoding).

import_script_path: Optional[str] = None class-attribute instance-attribute #

The path to the script for use for importing.

Required when import_using_script is set to true.

import_extra_files: bool = False class-attribute instance-attribute #

Import matching extra files (subtitles, .nfo file, etc) after importing an episode file.

unmonitor_deleted_movies: bool = False class-attribute instance-attribute #

When set to true, movies deleted from disk are automatically unmonitored in Radarr.

propers_and_repacks: PropersAndRepacks = PropersAndRepacks.prefer_and_upgrade class-attribute instance-attribute #

Whether or not to automatically upgrade to Propers/Repacks.

Values:

  • prefer-and-upgrade - Automatically upgrade to propers/repacks
  • do-not-upgrade-automatically - Prefer propers/repacks, but do not upgrade to them automatically
  • do-not-prefer - Sort by custom format score over propers/repacks
analyze_video_files: bool = True class-attribute instance-attribute #

Extract video information such as resolution, runtime and codec information from files.

This requires Radarr to read parts of the file, which may cause high disk or network activity during scans.

rescan_folder_after_refresh: RescanFolderAfterRefresh = RescanFolderAfterRefresh.always class-attribute instance-attribute #

Rescan the movie folder after refreshing the series.

Values:

  • always
  • after-manual-refresh
  • never

Warning

Radarr will not automatically detect changes to files unless this attribute is set to always.

change_file_date: ChangeFileDate = ChangeFileDate.none class-attribute instance-attribute #

Change file date on import/rescan.

Values:

  • none
  • in-cinemas-date
  • physical-release-date
recycling_bin: Optional[NonEmptyStr] = None class-attribute instance-attribute #

Episode files will go here when deleted instead of being permanently deleted.

recycling_bin_cleanup: int = Field(7, ge=0) class-attribute instance-attribute #

Files in the recycle bin older than the selected number of days will be cleaned up automatically.

Set to 0 to disable automatic cleanup.

set_permissions: bool = False class-attribute instance-attribute #

Set whether or not chmod should run when files are imported/renamed.

If you're unsure what this and the chmod/chown series of attributes do, do not alter them.

chmod_folder: ChmodFolder = ChmodFolder.drwxr_xr_x class-attribute instance-attribute #

Permissions to set on media folders and files during import/rename. File permissions are set without execute bits.

This only works if the user running Radarr is the owner of the file. Ideally, the download client should already set these permissions appropriately.

Values:

  • drwxr-xr-x/755
  • drwxrwxr-x/775
  • drwxrwx---/770
  • drwxr-x---/750
  • drwxrwxrwx/777
chown_group: Optional[str] = None class-attribute instance-attribute #

Group name or GID. Use GID for remote file systems.

This only works if the user running Radarr is the owner of the file. Ideally, the download client should be using the same group as Radarr.

Root Folders#

Root folders are paths used by Radarr as either a target folder for newly downloaded releases, or a source folder for Radarr to scan existing media.

Root folders are assigned to releases when they are submitted for monitoring in Radarr.

radarr:
  settings:
    media_management:
      root_folders:
        delete_unmanaged: false
        definitions:
          - /path/to/movies
delete_unmanaged: bool = False class-attribute instance-attribute #

Delete root folders from the remote Radarr instance if they are not explicitly defined in Buildarr.

Before enabling this option, ensure all the root folders you want Radarr to scan are defined in Buildarr, as Radarr might remove imported media from its database when root folder definitions are deleted.

If unsure, leave set to the default of false.

definitions: Set[NonEmptyStr] = set() class-attribute instance-attribute #

Define root folder paths to add to Radarr here.