feat(guide): Update naming scheme and add tvdb/tmdb (#1965)

* feat(guide): Update naming scheme and add tvdb/tmdb

* added: inline notation to ignore specific violations

* changed: result text to reflect what's seen in Radarr GUI

* Updated: Sonarrr Recommended naming scheme

* fixed: typo

* removed: un-needed info

* Apply suggestions from code review

Co-authored-by: bakerboy448 <55419169+bakerboy448@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: zakary <zak@ary.dev>

* fix: MD009

* moved renaming-description-faq to the starr folder because it's used by both

* added: to single placeholder to prevent multiple places to edit the same content

* fix: file location

---------

Co-authored-by: bakerboy448 <55419169+bakerboy448@users.noreply.github.com>
Co-authored-by: zakary <zak@ary.dev>
pull/1970/head
TRaSH 6 months ago committed by GitHub
parent 8053a05761
commit 9735770255
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -1,15 +1,6 @@
# Recommended naming scheme
On the [Radarr Discord](https://radarr.video/discord){:target="\_blank" rel="noopener noreferrer"} people often ask, "What's the recommended/best way to
name your files?" First off, it's personal preference, but it's often recommended to add non-recoverable info.
Why?
If, for what ever reason, you ever need to do a re-install or re-import in
the Starr Apps or Plex/Emby/Jellyfin it's nice to have all that info in the filename so
it gets imported correctly and isn't incorrectly matched as HDTV or WEB-DL etc.
The Tokens not available in the release won't be used/shown.
--8<-- "includes/starr/renaming-description-faq.md"
---
@ -29,75 +20,133 @@ Finally, enable `Rename Movies` to reveal the movie renaming options.
## Standard Movie Format
This naming scheme is made to be compatible with the [New Plex Agent](https://forums.plex.tv/t/new-plex-media-server-movie-scanner-and-agent-preview/593269/517){:target="\_blank" rel="noopener noreferrer"} that now supports IMDb and TMDb IDs in filenames, if you don't need it or want it just remove `{imdb-{ImdbId}}`
--8<-- "includes/radarr/imdb-vs-tmdb.md"
=== "Standard"
```none
{{ radarr['naming']['radarr-naming']['file']['standard'] }}
```
<sub><sup>**Movie**: `The Movie Title (2010) {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`</sup></sub>
!!! warning "Starting from v4.2.2.6489, Radarr now supports Plex Multiple Edition tags in naming."
=== "Plex"
If you're using a lower version or don't need it replace:
This naming scheme is made to be used with the [New Plex Agent](https://forums.plex.tv/t/new-plex-media-server-movie-scanner-and-agent-preview/593269/517){:target="\_blank" rel="noopener noreferrer"},
`{edition-{Edition Tags}}` with `{Edition Tags}`
!!! danger "If you use the `{edition-{Edition Tags}}` part of the recommended file name, then Plex will recognize the edition of the movie and add it the the Plex UI - e.g., Directors Cut.<br><br>However, this means that if you have two copies of a movie with different editions in a single merged library - for example, a 1080p Directors Cut and a 2160p Theatrical Edition - then these will show as two separate items in Plex.<br><br>If you only want a movie to appear once per library, where you keep more than one copy of a movie, then replace: `{edition-{Edition Tags}}` with `{Edition Tags}`."
!!! danger "Only use `{edition-{Edition Tags}}` if you are prepared to have movies separated by edition<br>when using a merged Plex library - e.g., you keep both 1080p and 2160p versions of one movie.<br><br>For example if you have the `Directors Cut` and the `Extended Cut` for one movie, those will show up as two separate movies in your library.<br><br>Note that not using `{edition-{Edition Tags}}` will prevent Plex from recognizing the edition."
=== "Plex (IMDb)"
### Plex
--8<-- "includes/radarr/tmdb-imdb-info.md"
```bash
{{ radarr['naming']['radarr-naming']['file']['default'] }}
{{ radarr['naming']['radarr-naming']['file']['plex-imdb'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Movie**: `The Movie Title (2010) {imdb-tt0066921} {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`</sup></sub>
=== "Plex (TMDb)"
```none
{{ radarr['naming']['radarr-naming']['file']['plex-tmdb'] }}
```
<sub><sup>**Movie**: `The Movie Title (2010) {tmdb-345691} {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`</sup></sub>
=== "Plex Anime (IMDb)"
--8<-- "includes/radarr/tmdb-imdb-info.md"
`The Movie Title (2010) {imdb-tt0066921} {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`
```bash
{{ radarr['naming']['radarr-naming']['file']['plex-anime-imdb'] }}
```
#### Plex Anime
<sub><sup>**Movie**: `The Movie Title (2010) {imdb-tt0066921} {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`</sup></sub>
=== "Plex Anime (TMDb)"
```bash
{{ radarr['naming']['radarr-naming']['file']['anime'] }}
{{ radarr['naming']['radarr-naming']['file']['plex-anime-tmdb'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Movie**: `The Movie Title (2010) {tmdb-345691} {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`</sup></sub>
=== "Emby"
Source: [Emby Wiki/Docs](https://emby.media/support/articles/Movie-Naming.html#id-tags-in-folder--file-names){:target="\_blank" rel="noopener noreferrer"}
=== "Emby (IMDb)"
--8<-- "includes/radarr/tmdb-imdb-info.md"
`The Movie Title (2010) {imdb-tt0066921} {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`
```bash
{{ radarr['naming']['radarr-naming']['file']['emby-imdb'] }}
```
### Emby
<sub><sup>**Movie**: `The Movie Title (2010) [imdbid-tt0066921] - {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`</sup></sub>
=== "Emby (TMDb)"
```bash
{{ radarr['naming']['radarr-naming']['file']['emby'] }}
{{ radarr['naming']['radarr-naming']['file']['emby-tmdb'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Movie**: `The Movie Title (2010) [tmdbid-tt0066921] - {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`</sup></sub>
=== "Emby Anime (IMDb)"
--8<-- "includes/radarr/tmdb-imdb-info.md"
```bash
{{ radarr['naming']['radarr-naming']['file']['emby-anime-imdb'] }}
```
`The Movie Title (2010) [imdbid-tt0066921] - {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`
<sub><sup>**Movie**: `The Movie Title (2010) [imdbid-tt0066921] - {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`</sup></sub>
#### Emby Anime
=== "Emby Anime (TMDb)"
```bash
{{ radarr['naming']['radarr-naming']['file']['anime-emby'] }}
{{ radarr['naming']['radarr-naming']['file']['emby-anime-tmdb'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Movie**: `The Movie Title (2010) [tmdbid-tt0066921] - {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`</sup></sub>
=== "Jellyfin"
`The Movie Title (2010) [imdbid-tt0066921] - {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`
Source: [Jellyfin Wiki/Docs](https://jellyfin.org/docs/general/server/media/movies){:target="\_blank" rel="noopener noreferrer"}
### Jellyfin
=== "Jellyfin (IMDb)"
```bash
{{ radarr['naming']['radarr-naming']['file']['jellyfin'] }}
{{ radarr['naming']['radarr-naming']['file']['jellyfin-imdb'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Movie**: `The Movie Title (2010) [imdbid-tt0106145] - {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`</sup></sub>
`The Movie Title (2010) [imdbid-tt0066921] - {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`
=== "Jellyfin (TMDb)"
#### Jellyfin Anime
```bash
{{ radarr['naming']['radarr-naming']['file']['jellyfin-tmdb'] }}
```
<sub><sup>**Movie**: `The Movie Title (2010) [tmdbid-65567] - {edition-Ultimate Extended Edition} [IMAX HYBRID][Bluray-1080p Proper][3D][DV HDR10][DTS 5.1][x264]-EVOLVE`</sup></sub>
=== "Jellyfin Anime (IMDb)"
```bash
{{ radarr['naming']['radarr-naming']['file']['anime-jellyfin'] }}
{{ radarr['naming']['radarr-naming']['file']['jellyfin-anime-imdb'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Movie**: `The Movie Title (2010) [imdbid-tt0106145] - {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`</sup></sub>
=== "Jellyfin Anime (TMDb)"
`The Movie Title (2010) [imdbid-tt0066921] - {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`
```bash
{{ radarr['naming']['radarr-naming']['file']['jellyfin-anime-tmdb'] }}
```
<sub><sup>**Movie**: `The Movie Title (2010) [tmdbid-65567] - {edition-Ultimate Extended Edition} [Surround Sound x264][Bluray-1080p Proper][3D][DTS 5.1][DE][10bit][AVC]-EVOLVE`</sup></sub>
---
@ -121,70 +170,86 @@ The filename can be Obscured where the Release naming isn't, especially when you
## Movie Folder Format
!!! danger ""
**Please note that folder names are created (in the database) whenever the movie is added to Radarr, and it may be missing or incorrect at that time and your folder would have a blank ID!!!**
--8<-- "includes/radarr/imdb-vs-tmdb.md"
If you instead add it in the filename, the IMDb ID will be freshly pulled for any download or upgrade.
!!! warning "Please note that folder names are created in the database whenever the movie is added to Radarr and it may be missing or incorrect at that time, resulting in your folder having a blank ID.:bangbang:<br><br>If you instead add it to the filename, the IMDb/TMDb ID will be freshly pulled for any download or upgrade."
Another potential negative of using it in the folder is that folder renames are complex, lengthy, and potentially destructive in Radarr compared to file renames.
=== "Standard Folder"
### Minimal needed and recommended
Minimum needed and recommended
```bash
{{ radarr['naming']['radarr-naming']['folder']['default'] }}
```
<small>RESULT:</small> `The Movie Title (2010)`
<sub><sup>**Example**: `The Movie Title (2010)`</sup></sub>
---
=== "Optional Plex"
--8<-- "includes/radarr/radarr-folder-name-after-year-info.md"
=== "Plex Folder IMDb"
!!! note
--8<-- "includes/radarr/tmdb-imdb-info.md"
Keep in mind adding anything more after the release year could give issues during a fresh import in to Radarr, but it helps for movies that have the same release name and year.
```bash
{{ radarr['naming']['radarr-naming']['folder']['plex-imdb'] }}
```
**Radarr supports IMDb ID and TMDb ID in the folder name.**
<sub><sup>**Example**: `The Movie Title (2010) {imdb-tt1520211}`</sup></sub>
!!! quote "Quote from a developer"
=== "Plex Folder TMDb"
TMDb is usually better as it guarantees a match, IMDb only gets matched if the TMDb entry has the correct IMDb ID association. We don't actually talk to IMDb.
```bash
{{ radarr['naming']['radarr-naming']['folder']['plex-tmdb'] }}
```
#### Optional Movies Folder Format
<sub><sup>**Example**: `The Movie Title (2010) {tmdb-1520211}`</sup></sub>
This naming scheme is made to be compatible with the new [Plex TV Series Scanner](https://forums.plex.tv/t/beta-new-plex-tv-series-scanner/696242){:target="\_blank" rel="noopener noreferrer"} that now support IMDB and TVDB IDs in file names.
=== "Optional Emby"
##### Optional Plex
--8<-- "includes/radarr/radarr-folder-name-after-year-info.md"
=== "Emby Folder IMDb"
--8<-- "includes/radarr/tmdb-imdb-info.md"
```bash
{{ radarr['naming']['radarr-naming']['folder']['plex'] }}
{{ radarr['naming']['radarr-naming']['folder']['emby-imdb'] }}
```
<small>RESULT:</small> `The Movie Title (2010) {imdb-tt1520211}`
<sub><sup>**Example**: `The Movie Title (2010) [imdb-tt1520211]`</sup></sub>
##### Optional Emby
=== "Emby Folder TMDb"
```bash
{{ radarr['naming']['radarr-naming']['folder']['emby'] }}
{{ radarr['naming']['radarr-naming']['folder']['emby-tmdb'] }}
```
<small>RESULT:</small> `The Movie Title (2010)`
<sub><sup>**Example**: `The Movie Title (2010) [tmdb-1520211]`</sup></sub>
=== "Optional Jellyfin"
##### Optional Jellyfin
--8<-- "includes/radarr/radarr-folder-name-after-year-info.md"
=== "Jellyfin Folder IMDb"
--8<-- "includes/radarr/tmdb-imdb-info.md"
```bash
{{ radarr['naming']['radarr-naming']['folder']['jellyfin'] }}
{{ radarr['naming']['radarr-naming']['folder']['jellyfin-imdb'] }}
```
<small>RESULT:</small> `The Movie Title (2010) [imdbid-tt1520211]`
<sub><sup>**Example**: `The Movie Title (2010) [imdbid-tt1520211]`</sup></sub>
!!! tip
=== "Jellyfin Folder TMDb"
IMDb IDs are going to be very accurate and rarely change, TVDB/TMDB IDs, on the other hand, do change or are removed more frequently.
---
```bash
{{ radarr['naming']['radarr-naming']['folder']['jellyfin-tmdb'] }}
```
Thanks:
<sub><sup>**Example**: `The Movie Title (2010) [tmdbid-1520211]`</sup></sub>
A big Thanks to [fryfrog](https://github.com/fryfrog) and [rg9400](https://github.com/rg9400) for the suggestions.
---
--8<-- "includes/support.md"

@ -1,15 +1,6 @@
# Recommended naming scheme
On the [Sonarr Discord](https://discord.gg/M6BvZn5){:target="\_blank" rel="noopener noreferrer"} people often ask, "What's the recommended/best way to
name your files?" First off, it's personal preference, but it's often recommended to add non-recoverable info.
Why?
If, for what ever reason, you ever need to do a re-install or re-import in
the Starr Apps or Plex/Emby/Jellyfin it's nice to have all that info in the filename so
it gets imported correctly and isn't incorrectly matched as HDTV or WEB-DL etc.
!!! info "The Tokens not available in the release won't be used/shown."
--8<-- "includes/starr/renaming-description-faq.md"
---
@ -27,97 +18,113 @@ Finally, enable `Rename Episodes` to reveal the episode renaming options.
![Enable Rename Episodes](images/sonarr-enable-rename.png)
## Standard Episode Format
---
## Episode Format
=== "Standard"
```bash
{{ sonarr['naming']['sonarr-naming']['episodes']['standard']['default:4'] }}
{{ sonarr['naming']['sonarr-naming']['episodes']['standard']['default'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Single Episode**: `The Series Title! (2010) - S01E01 - Episode Title 1 [AMZN WEBDL-1080p Proper][DV HDR10][DTS 5.1][x264]-RlsGrp`</sup></sub>
Single Episode:
<sub><sup>**Multi Episode**: `The Series Title! (2010) - S01E01-E03 - Episode Title [AMZN WEBDL-1080p Proper][DV HDR10][DTS 5.1][x264]-RlsGrp`</sup></sub>
`The Series Title! (2010) - S01E01 - Episode Title 1 [AMZN WEBDL-1080p Proper][DV HDR10][DTS 5.1][x264]-RlsGrp`
=== "Daily"
Multi Episode:
`The Series Title! (2010) - S01E01-E03 - Episode Title [AMZN WEBDL-1080p Proper][DV HDR10][DTS 5.1][x264]-RlsGrp`
```bash
{{ sonarr['naming']['sonarr-naming']['episodes']['daily']['default'] }}
```
---
<sub><sup>**Example**: `The Series Title! (2010) - 2013-10-30 - Episode Title 1 [AMZN WEBDL-1080p Proper][DV HDR10][DTS 5.1][x264]-RlsGrp`</sup></sub>
## Daily Episode Format
=== "Anime"
```bash
{{ sonarr['naming']['sonarr-naming']['episodes']['daily']['default:4'] }}
{{ sonarr['naming']['sonarr-naming']['episodes']['anime']['default'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Single Episode**: `The Series Title! (2010) - S01E01 - 001 - Episode Title 1 [iNTERNAL HDTV-720p v2][HDR10][10bit][x264][DTS 5.1][JA]-RlsGrp`</sup></sub>
`The Series Title! (2010) - 2013-10-30 - Episode Title 1 [AMZN WEBDL-1080p Proper][DV HDR10][DTS 5.1][x264]-RlsGrp`
<sub><sup>**Multi Episode**: `The Series Title! (2010) - S01E01-E03 - 001-003 - Episode Title [iNTERNAL HDTV-720p v2][HDR10][10bit][x264][DTS 5.1][JA]-RlsGrp`</sup></sub>
---
## Anime Episode Format
## Series Folder Format
--8<-- "includes/sonarr/imdb-vs-tvdb.md"
=== "Standard Folder"
```bash
{{ sonarr['naming']['sonarr-naming']['episodes']['anime']['default:4'] }}
{{ sonarr['naming']['sonarr-naming']['series']['default'] }}
```
??? abstract "RESULTS: - [Click to show/hide]"
<sub><sup>**Example**: `The Series Title! (2010)`</sup></sub>
Single Episode:
=== "Optional Plex"
`The Series Title! (2010) - S01E01 - 001 - Episode Title 1 [iNTERNAL HDTV-720p v2][HDR10][10bit][x264][DTS 5.1][JA]-RlsGrp`
This naming scheme is made to be used with the [New Plex TV Series Scanner](https://forums.plex.tv/t/beta-new-plex-tv-series-scanner/696242){:target="\_blank" rel="noopener noreferrer"}
Multi Episode:
=== "Plex Folder IMDb"
`The Series Title! (2010) - S01E01-E03 - 001-003 - Episode Title [iNTERNAL HDTV-720p v2][HDR10][10bit][x264][DTS 5.1][JA]-RlsGrp`
--8<-- "includes/sonarr/tvdb-imdb-info.md"
---
```bash
{{ sonarr['naming']['sonarr-naming']['series']['plex-imdb'] }}
```
<sub><sup>**Example**: `The Series Title! (2010) {imdb-tt1520211}`</sup></sub>
### Series Folder Format
=== "Plex Folder TVDb"
```bash
{{ sonarr['naming']['sonarr-naming']['series']['default'] }}
{{ sonarr['naming']['sonarr-naming']['series']['plex-tvdb'] }}
```
<small>RESULT:</small> `The Series Title! (2010)`
<sub><sup>**Example**: `The Series Title! (2010) {tvdb-1520211}`</sup></sub>
=== "Optional Emby"
#### Optional Series Folder Format
Source: [Emby Wiki/Docs](https://emby.media/support/articles/TV-Naming.html#id-tags-in-folder--file-names){:target="\_blank" rel="noopener noreferrer"}
This naming scheme is made to be compatible with the new [Plex TV Series Scanner](https://forums.plex.tv/t/beta-new-plex-tv-series-scanner/696242){:target="\_blank" rel="noopener noreferrer"} that now support IMDB and TVDB IDs in file names.
=== "Emby Folder IMDb"
##### Optional Plex
--8<-- "includes/sonarr/tvdb-imdb-info.md"
```bash
{{ sonarr['naming']['sonarr-naming']['series']['plex'] }}
{{ sonarr['naming']['sonarr-naming']['series']['emby-imdb'] }}
```
<small>RESULT:</small> `The Series Title! (2010) {imdb-tt1520211}`
<sub><sup>**Example**: `The Series Title! (2010) [imdb-tt1520211]`</sup></sub>
##### Optional Emby
=== "Emby Folder TVDb"
```bash
{{ sonarr['naming']['sonarr-naming']['series']['emby'] }}
{{ sonarr['naming']['sonarr-naming']['series']['emby-tvdb'] }}
```
<small>RESULT:</small> `The Series Title! (2010)`
<sub><sup>**Example**: `The Series Title! (2010) [tvdb-1520211]`</sup></sub>
##### Optional Jellyfin
=== "Optional Jellyfin"
```bash
{{ sonarr['naming']['sonarr-naming']['series']['jellyfin'] }}
```
Source: [Jellyfin Wiki/Docs](https://jellyfin.org/docs/general/server/media/shows/){:target="\_blank" rel="noopener noreferrer"}
!!! warning "Jellyfin doesn't support IMDb ID's for shows"
<small>RESULT:</small> `The Series Title! (2010) [tvdbid-tt1520211]`
=== "Jellyfin Folder TVDb"
!!! tip
```bash
{{ sonarr['naming']['sonarr-naming']['series']['jellyfin-tvdb'] }}
```
IMDb IDs are going to be very accurate and rarely change, TVDB/TMDB IDs, on the other hand, do change or are removed more frequently.
<sub><sup>**Example**: `The Series Title! (2010) [tvdbid-1520211]`</sup></sub>
---
### Season Folder Format
## Season Folder Format
For this there's only one real option to use in my opinion.
@ -125,17 +132,17 @@ For this there's only one real option to use in my opinion.
Season {season:00}
```
RESULT: `Season 01`
<sub><sup>**Example**: `Season 01`</sup></sub>
---
### Multi-Episode Style
## Multi-Episode Style
```bash
Prefixed Range
```
RESULTS:
<sub><sup>**Example**:</sup></sub>
![results](images/results.png)
@ -159,8 +166,4 @@ The filename can be Obscured where the Release naming isn't, especially when you
---
Thanks:
A big Thanks to [fryfrog](https://github.com/fryfrog), [rg9400](https://github.com/rg9400) and [bakerboy448](https://github.com/bakerboy448) for the suggestions.
--8<-- "includes/support.md"

@ -1,17 +1,36 @@
{
"folder": {
"default": "{Movie CleanTitle} ({Release Year})",
"plex-imdb": "{Movie CleanTitle} ({Release Year}) {imdb-{ImdbId}}",
"plex-tmdb": "{Movie CleanTitle} ({Release Year}) {tmdb-{TmdbId}}",
"emby-imdb": "{Movie CleanTitle} ({Release Year}) [imdb-{ImdbId}]",
"emby-tmdb": "{Movie CleanTitle} ({Release Year}) [tmdb-{TmdbId}]",
"jellyfin-imdb": "{Movie CleanTitle} ({Release Year}) [imdbid-{ImdbId}]",
"jellyfin-tmdb": "{Movie CleanTitle} ({Release Year}) [tmdbid-{TmdbId}]",
"plex": "{Movie CleanTitle} ({Release Year}) {imdb-{ImdbId}}",
"emby": "{Movie CleanTitle} ({Release Year}) [imdbid-{ImdbId}]",
"jellyfin": "{Movie CleanTitle} ({Release Year}) [imdbid-{ImdbId}]"
},
"file": {
"standard": "{Movie CleanTitle} {(Release Year)} - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"plex-imdb": "{Movie CleanTitle} {(Release Year)} {imdb-{ImdbId}} {edition-{Edition Tags}} {[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"plex-tmdb": "{Movie CleanTitle} {(Release Year)} {tmdb-{TmdbId}} {edition-{Edition Tags}} {[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"plex-anime-imdb": "{Movie CleanTitle} {(Release Year)} {imdb-{ImdbId}} {edition-{Edition Tags}} {[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"plex-anime-tmdb": "{Movie CleanTitle} {(Release Year)} {tmdb-{TmdbId}} {edition-{Edition Tags}} {[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"emby-imdb": "{Movie CleanTitle} {(Release Year)} [imdb-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"emby-tmdb": "{Movie CleanTitle} {(Release Year)} [tmdb-{TmdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"emby-anime-imdb": "{Movie CleanTitle} {(Release Year)} [imdb-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"emby-anime-tmdb": "{Movie CleanTitle} {(Release Year)} [tmdb-{TmdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"jellyfin-imdb": "{Movie CleanTitle} {(Release Year)} [imdbid-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"jellyfin-tmdb": "{Movie CleanTitle} {(Release Year)} [tmdbid-{TmdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"jellyfin-anime-imdb": "{Movie CleanTitle} {(Release Year)} [imdbid-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"jellyfin-anime-tmdb": "{Movie CleanTitle} {(Release Year)} [tmdbid-{TmdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"original": "{Original Title}",
"default": "{Movie CleanTitle} {(Release Year)} {imdb-{ImdbId}} {edition-{Edition Tags}} {[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"emby": "{Movie CleanTitle} {(Release Year)} [imdbid-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"jellyfin": "{Movie CleanTitle} {(Release Year)} [imdbid-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[Mediainfo VideoCodec]}{-Release Group}",
"anime": "{Movie CleanTitle} {(Release Year)} {imdb-{ImdbId}} {edition-{Edition Tags}} {[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"anime-emby": "{Movie CleanTitle} {(Release Year)} - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"anime-jellyfin": "{Movie CleanTitle} {(Release Year)} [imdbid-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}",
"original": "{Original Title}"
"anime-jellyfin": "{Movie CleanTitle} {(Release Year)} [imdbid-{ImdbId}] - {Edition Tags }{[Custom Formats]}{[Quality Full]}{[MediaInfo 3D]}{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{MediaInfo AudioLanguages}[{MediaInfo VideoBitDepth}bit]{[Mediainfo VideoCodec]}{-Release Group}"
}
}

@ -4,24 +4,26 @@
},
"series": {
"default": "{Series TitleYear}",
"plex-imdb": "{Series TitleYear} {imdb-{ImdbId}}",
"plex-tvdb": "{Series TitleYear} {tvdb-{TvdbId}}",
"emby-imdb": "{Series TitleYear} [imdb-{ImdbId}]",
"emby-tvdb": "{Series TitleYear} [tvdb-{TvdbId}]",
"jellyfin-tvdb": "{Series TitleYear} [tvdbid-{TvdbId}]",
"plex": "{Series TitleYear} {imdb-{ImdbId}}",
"emby": "{Series TitleYear} [imdbid-{ImdbId}]",
"jellyfin": "{Series TitleYear} [tvdbid-{TvdbId}]"
},
"episodes": {
"standard": {
"default:3": "{Series TitleYear} - S{season:00}E{episode:00} - {Episode CleanTitle} [{Preferred Words }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[MediaInfo VideoCodec]}{-Release Group}",
"default:4": "{Series TitleYear} - S{season:00}E{episode:00} - {Episode CleanTitle} [{Custom Formats }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[MediaInfo VideoCodec]}{-Release Group}",
"default": "{Series TitleYear} - S{season:00}E{episode:00} - {Episode CleanTitle} [{Custom Formats }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[MediaInfo VideoCodec]}{-Release Group}",
"original": "{Original Title}"
},
"daily": {
"default:3": "{Series TitleYear} - {Air-Date} - {Episode CleanTitle} [{Preferred Words }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[MediaInfo VideoCodec]}{-Release Group}",
"default:4": "{Series TitleYear} - {Air-Date} - {Episode CleanTitle} [{Custom Formats }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[MediaInfo VideoCodec]}{-Release Group}",
"default": "{Series TitleYear} - {Air-Date} - {Episode CleanTitle} [{Custom Formats }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}{[Mediainfo AudioCodec}{ Mediainfo AudioChannels]}{[MediaInfo VideoCodec]}{-Release Group}",
"original": "{Original Title}"
},
"anime": {
"default:3": "{Series TitleYear} - S{season:00}E{episode:00} - {absolute:000} - {Episode CleanTitle} [{Preferred Words }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}[{MediaInfo VideoBitDepth}bit]{[MediaInfo VideoCodec]}[{Mediainfo AudioCodec} { Mediainfo AudioChannels}]{MediaInfo AudioLanguages}{-Release Group}",
"default:4": "{Series TitleYear} - S{season:00}E{episode:00} - {absolute:000} - {Episode CleanTitle} [{Custom Formats }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}[{MediaInfo VideoBitDepth}bit]{[MediaInfo VideoCodec]}[{Mediainfo AudioCodec} { Mediainfo AudioChannels}]{MediaInfo AudioLanguages}{-Release Group}"
"default": "{Series TitleYear} - S{season:00}E{episode:00} - {absolute:000} - {Episode CleanTitle} [{Custom Formats }{Quality Full}]{[MediaInfo VideoDynamicRangeType]}[{MediaInfo VideoBitDepth}bit]{[MediaInfo VideoCodec]}[{Mediainfo AudioCodec} { Mediainfo AudioChannels}]{MediaInfo AudioLanguages}{-Release Group}"
}
}
}

@ -0,0 +1,3 @@
<!-- markdownlint-disable MD041-->
While both IMDb and TMDb IDs are unique, TMDb can occasionally remove IDs entirely, sometimes only to be re-added with a new ID later. However, due to using TMDb as its metadata source, they can be seen as "more aligned" with Radarr. IMDb IDs on the other hand, once present, are very accurate and rarely ever change.
<!-- markdownlint-enable MD041-->

@ -0,0 +1,3 @@
<!-- markdownlint-disable MD041-->
!!! note "Keep in mind adding anything additional after the release year could give issues during a fresh import into Radarr, but it can help for movies that have the same release name and year"
<!-- markdownlint-enable MD041-->

@ -0,0 +1,3 @@
<!-- markdownlint-disable MD041-->
!!! info "TMDb is usually better as it guarantees a match, IMDb only gets matched if the TMDb entry has the correct IMDb ID association."
<!-- markdownlint-enable MD041-->

@ -0,0 +1,3 @@
<!-- markdownlint-disable MD041-->
While both IMDb and TVDb IDs are unique, TVDb can occasionally remove IDs entirely, sometimes only to be re-added with a new ID later. However, due to using TVDb as its metadata source, they can be seen as "more aligned" with Sonarr. IMDb IDs on the other hand, once present, are very accurate and rarely ever change.
<!-- markdownlint-enable MD041-->

@ -0,0 +1,3 @@
<!-- markdownlint-disable MD041-->
!!! info "TVDb is usually better as it guarantees a match, IMDb only gets matched if the TVDb entry has the correct IMDb ID association."
<!-- markdownlint-enable MD041-->

@ -0,0 +1,42 @@
<!-- markdownlint-disable MD041-->
On the Radarr/Sonarr Discord people often ask,
- “What's the recommended/best way to name your files or folders?”
- “Why is my naming scheme bad?”
Even though it is a personal preference, it is still recommended to add non-recoverable information for several reasons.
## FAQ
??? question "Why?"
- If, for whatever reason, you ever need to do a re-install or a full re-import in the Starr Apps or Plex/Emby/Jellyfin, it's nice to have all that info in the filename so it gets imported correctly and isn't incorrectly matched as HDTV or WEB-DL etc.
- Prevent download loops.
??? question "What's non-recoverable information?"
- Quality Source (HDTV, WEBDL, Bluray, Remux, etc..)
- Release group
- Edition version
- Repack/Proper
??? question "Why is the non-recoverable information important/needed?"
- **Prevent download loops**.
- **Quality Source (HDTV, WEBDL, Bluray, Remux, etc..)**: Can you tell from the following info: `movie (year).ext`, which quality source the file is from? Probably not, and there is no real way to determine it if it's lost after import. Why would you care? Mainly if you ever want to upgrade or downgrade your media file and to prevent re-downloads of the same file.
- **Release group**: With the knowledge of which release group your release belongs to, you can determine if the file has any issues related to that specific release. It can also help find extra information if it's a hybrid release or which sources are used.
- **Edition version**: To determine if the release is an directors cut, theatrical, unrated, etc.
- **Repack/Proper**: To determine if the release was a repack or a proper, so you know if you have the correct version and not the broken one with playback issues or other issues with the media file.
??? question "But Plex, Emby and Jellyfin work fine with just `movie (year).ext`/`tv showname SxxExx.ext`"
- True, but they don't care about the quality of your media file you're using, their main purpose is just to provide you with your media library and play the media files.
??? question "Why is the file naming so long?"
- To make sure your filename contains all the info needed to prevent download loops after import.
- The so-called "naming tokens" not used in your media file won't be used/shown.
- Any proper media server (Plex, Emby, or Jellyfin) won't display the actual filename outright anyway, so why worry about how the file's naming looks when it has all the needed info included?
The naming scheme provided here is made with the help of the Sonarr/Radarr (Support) Team and information provided by the community.
<!-- markdownlint-enable MD041-->

@ -53,6 +53,9 @@ markdown_extensions:
- pymdownx.superfences
- pymdownx.tabbed:
alternate_style: true
slugify: !!python/object/apply:pymdownx.slugs.slugify
kwds:
case: lower
- toc:
permalink: ""
# toc_depth: 5

Loading…
Cancel
Save