Media management
Root folders, how films are named, hardlinks or copies, permissions, the recycle bin, tags, and how highsea keeps up with the disk.
Written for highsea 0.1.0.
Settings › Media management decides where films live on disk, what they're called, and how a finished download becomes a file in your library. The Owner and Admins can change it.
Changes to Naming and Importing wait in a bar at the bottom of the page until you choose Save or Discard. Root folders and tags save as soon as you change them.
Root folders
A root folder is a folder your films are filed under, such as /data/media/movies. Each film gets a folder of its own inside one. Setup adds your first; most servers need only one.
Each root folder shows its free space, how many films are filed under it, and Can't be read now when the disk isn't there.
Add a root folder
Type the folder's full path under Add a root folder and choose Add folder. The path is a folder on the server, as highsea sees it inside its container, not on the device you're browsing from. highsea checks that:
- the path is a full one, starting with
/; - the folder exists;
- highsea can write to it;
- it isn't a root folder already, or inside or around one.
Put it on the same disk as your downloads, so imports can use hardlinks. Folders and hardlinks explains why.
Subtitle languages for films added here
Each root folder has a Subtitle languages for movies added here setting. Films added to that folder start with the languages you pick, from the language profiles on Subtitles. None means films added there get no subtitles until you choose some.
Import what's already here
Import what's already here opens the library import in Activity for that folder. highsea reads each folder inside it as one film, by its name: Title (Year), or with a {tmdb-…} or {imdb-…} ID in the name. It matches each on TMDB, so it needs a TMDB key (see General).
You choose a quality profile, and whether to Rename to my format, which names folders and files with the formats below; otherwise nothing is moved or renamed. A folder with no match on TMDB says so: add {tmdb-…} with the film's TMDB ID to the folder's name and look again. Activity has more on importing.
Remove a root folder
Remove stops highsea using the folder for new films. Nothing on disk changes, and you can add it again later. A folder with films filed under it can't be removed: move them to another folder first.
Naming
How highsea names what it imports.
| Setting | What it does | Default |
|---|---|---|
| Rename movies | Off, files keep the names they came with, and the formats below are greyed out. | On |
| Folder | The format for each film's folder. | {Movie Title} ({Release Year}) |
| File | The format for each film's file, without the extension. | {Movie Title} ({Release Year}) {Quality Full} |
| Colons | What happens to a colon in a title, since a file name can't carry one. | Smart |
Under each format, Becomes shows what the open film Sintel would be called, so you see the result as you type. Subtitles keep the film's file name and add their language, such as .en.srt.
Tokens
A format is text with tokens in braces. The page lists the common ones: {Movie Title}, {Release Year}, {Quality Full}, {Movie CleanTitle} and {Edition Tags}. highsea uses the same tokens as Radarr, so formats you used there work here.
| Token | Becomes | Folder | File |
|---|---|---|---|
{Movie Title} | The title | Yes | Yes |
{Movie CleanTitle} | The title without punctuation, & as "and" | Yes | Yes |
{Movie TitleThe} | The title with "The" moved to the end | Yes | Yes |
{Movie OriginalTitle}, {Movie CleanOriginalTitle} | The title in its original language | Yes | Yes |
{Movie Collection} | The collection the film belongs to | Yes | Yes |
{Release Year} | The year | Yes | Yes |
{ImdbId}, {TmdbId} | The film's IMDb or TMDB ID | Yes | Yes |
{Quality Full} | The quality, with Proper or REAL when the release is one | No | Yes |
{Quality Title} | The quality alone, such as Bluray-1080p | No | Yes |
{Release Group} | The group that made the release | No | Yes |
{Edition Tags} | The edition, such as Director's Cut or IMAX | No | Yes |
{Custom Formats} | The custom formats the release matches | No | Yes |
{MediaInfo VideoCodec}, {MediaInfo AudioCodec}, {MediaInfo AudioChannels} | Read from the file itself | No | Yes |
{MediaInfo VideoDynamicRange}, {MediaInfo VideoDynamicRangeType} | HDR, and its kind, read from the file | No | Yes |
A few rules:
- The case of a token sets the case of its value:
{movie title}is lower case,{MOVIE TITLE}upper. - A token that has nothing to say, such as
{Edition Tags}on a film with no edition, is left out. - A
/in the file format makes a subfolder. - The file format must include the title, so files can be told apart.
- A folder can't use a token that describes a file, such as
{Quality Full}.
highsea refuses to save a format with a token it doesn't know, and says which.
Colons
| Choice | Dune: Part Two | 3:10 to Yuma |
|---|---|---|
| Delete them | Dune Part Two | 310 to Yuma |
| Replace with a dash | Dune- Part Two | 3-10 to Yuma |
| Replace with a space and a dash | Dune - Part Two | 3 -10 to Yuma |
| Replace with a dash between spaces | Dune - Part Two | 3 - 10 to Yuma |
| Smart: a dash, with spaces where the title has them | Dune - Part Two | 3-10 to Yuma |
Smart suits most libraries.
Importing
What happens when a download finishes, or a file is replaced or deleted.
| Setting | What it does | Default |
|---|---|---|
| Use hardlinks | A finished download appears in the library as a hardlink: it takes no extra space and the torrent keeps seeding. Off, every import is a copy. | On |
| Write NFO files | Writes an .nfo file beside each film, with poster.jpg and fanart.jpg in its folder, for other media players reading the same folders. | Off |
| Stop monitoring movies whose files I delete | When a film's file disappears from disk outside highsea, the film stops being monitored. Otherwise highsea downloads it again. | On |
| Set folder permissions | Applies Folder permissions to folders highsea makes, and to the files it imports. Off, they get what the server's user gives them. | Off |
| Folder permissions | The mode, as three digits like chmod takes: 755, 775. Files get the same, without the execute bits. | 755 |
| Recycle bin | A folder that replaced and deleted files go to first, as a full path. Empty, they're deleted straight away. | Empty |
| Keep deleted files for | Days a file stays in the recycle bin before highsea deletes it, up to 3650. 0 keeps them until you empty the bin yourself. | 7 |
Hardlinks and copies
A hardlink only works when the download and the library are on the same disk or share. When they aren't, or the share refuses hardlinks, highsea copies the file instead, even with Use hardlinks on. A copy takes the space twice while the torrent seeds, except on filesystems that can make copy-on-write copies, where highsea uses one.
highsea writes each file under a temporary name and renames it into place, so a crash never leaves half a file in your library.
Permissions
Leave Set folder permissions off unless something else that reads your library, such as another media player running as a different user, can't open what highsea writes. Then 775 lets everyone in your group write too. The user highsea runs as comes from PUID and PGID in your compose file; see Install with Docker.
Archives
Some releases come as RAR, 7z or zip archives. highsea extracts them on its own, imports the film, then removes the extracted copy. The archives stay, so the torrent keeps seeding. Password-protected archives can't be imported. highsea's Docker image includes the tool it uses; if you run highsea another way and it's missing, System's health list says so.
Keeping up with the disk
highsea notices changes you make to the library yourself:
- The library scan walks every root folder every 12 hours, and a film's folder again after each import. A file you add to a film's folder is read and recorded; a changed file is read again; a missing file is cleared from its film.
- Watching sees changes under a root folder as they happen, and asks for a scan of that film's folder a few seconds later.
Watching doesn't work reliably on network shares (SMB and NFS), and Linux limits how many folders can be watched. When a root folder can't be watched, System shows a note, and the 12-hourly scan still finds every change. You can run the scan yourself from System's tasks; see System.
A root folder that can't be read at all, such as an unmounted disk, is skipped whole, so a missing disk is never taken as every file deleted.
Tags
Tags tie films to the indexers, lists and connections that should serve them, and are managed in their own group on this page.
- An indexer or connection with tags works only for films that share one of them. With no tags, it works for every film.
- A list's tags go on every film it adds.
Add a tag with New tag, then Add tag. Each tag shows how many films, indexers, lists and connections use it. Rename changes its label everywhere. Remove takes it off everything that has it, after you confirm; an indexer or connection left with no tags works for every film again.
Tags are given to films in each film's edit dialog. See Movies, Indexers, Lists and Notifications.