This post organizes my current Movie & TV viewing and library-import plan. The core goal is not to make every step complicated, but to let resources flow as automatically as possible from discovery, collection, download, organization, scraping, and import, until they appear in Emby as one unified media library.
Overall, the system has three lines:
- official streaming subscriptions: mainly for casual watching and frequently updated new content;
- PT + NAS + 115: for content worth long-term collection, organization, and stable archiving;
- cloud drives + STRM: to reduce local storage pressure while still connecting to the unified media library.
Adult content is isolated separately at the end, so it does not mix with the normal Movie & TV library.
Official Streaming
The streaming part stays simple. I mainly use Disney+ for now.
Its role is not to replace the local media library. It fills gaps that the local setup is not good at handling: shows I suddenly want to watch, newly released films, or content family members open casually. The strength of subscription platforms is that they are ready to watch. The weakness is that removals, regions, subtitles, and organization are all outside my control. So they are better as a daily viewing entry, not a long-term collection entry.
The local media library solves a different set of questions: what I want to keep, how it should be named, whether posters and descriptions are correct, and whether it will still play steadily after I switch devices.
PT + NAS + 115 Workflow
This is the main collection workflow.
The rough flow is:
Discover source
-> MoviePilot monitors and downloads
-> NAS stores original files
-> automatically upload to 115
-> MoviePilot / qMediaSync handles naming and directories
-> qMediaSync generates STRM
-> scheduled scraping
-> Emby imports automatically
MoviePilot handles the first half: monitoring, downloading, uploading, and initial organization. After the download completes, files first land on the NAS. Once they are confirmed, they are uploaded to 115. This way the local NAS is both the download landing point and a short-term buffer, without needing to keep every item on local disks forever.
After upload, naming and directory rules become the focus. The biggest pain in a video library is having the files already, but with inconsistent directory names, filenames, season/episode numbers, years, and version details. If naming is not handled early, scraping fails repeatedly, and Emby can misidentify titles, use the wrong posters, or scatter episodes.
My habit is to let automation tools normalize directories into fixed structures:
Movies/
Movie Title (Year)/
Movie Title (Year).version-info.ext
TV/
Show Title (Year)/
Season 01/
Show Title - S01E01 - Episode Title.ext
Once the directory structure is stable, the later tools become much easier to connect.
Cloud Drive + STRM
The goal of the cloud-drive line is: use less local storage while still showing everything inside Emby.
This mainly relies on qMediaSync to generate STRM files. An STRM is not a video file; it is a text entry pointing to the real media address. After Emby scans an STRM file, it can display it as a media item. During playback, the content is read from the corresponding cloud-drive direct link or proxy address.
The advantages are clear:
- locally, only STRM files and metadata are stored, so space usage is small;
- content in 115 can be mounted into Emby;
- the media library entry is unified, so I do not need to jump between multiple apps;
- when migrating the NAS later, I do not need to move all video files.
The tradeoffs should also be accepted in advance:
- playback stability depends on the cloud drive, network, and direct-link service;
- when links expire, they need to be regenerated or refreshed;
- scraping and renaming should run at fixed times to avoid clashing with upload and sync tasks.
So the cloud-drive library is better for content where I want to keep an entry, but do not necessarily need to store the full video locally long-term. Content that I watch frequently, care about especially, or need to play very reliably is still better kept on the local NAS.
Scraping and Emby Import
After organization, scraping determines how the media library feels.
My flow is to let qMediaSync process renamed folders on a schedule, then use scraping tools to fill posters, descriptions, cast, year, ratings, and other metadata. Once the directory structure and metadata are stable, Emby scans and imports automatically.
A few principles:
- rename first, scrape second, import last;
- keep films and TV shows in separate libraries;
- preserve Chinese title, original title, and year as much as possible;
- for multiple film versions, mark resolution, source, HDR, audio track, and similar details in the filename;
- when scraping fails, check the directory structure first instead of rushing to manually edit the Emby entry.
Emby is best as the final display layer. It is not suitable for doing all the earlier organization work. The cleaner the file structure is before import, the less manual fixing Emby needs.
Isolate Adult Content
Adult content is handled separately and does not mix with the normal Movie & TV library.
The core here is not automation level, but isolation:
- separate directory;
- separate media library;
- separate scraping rules;
- separate access permissions;
- no participation in family-shared homepage recommendations.
Collection entries may come from multiple places, but before entering the media library, they still follow the same rules: download or transfer, generate a playable entry, scrape and organize with tools such as MDCNG, and finally import into an independent Emby library.
The benefit is clear boundaries. The normal film and TV library stays clean, and adult content does not appear in default recommendations, search, or continue-watching sections.
Splitting Automation Tasks
At the end, the tasks can be divided into these groups.
Monitoring and Downloading
MoviePilot handles subscriptions, monitoring, and downloading. It is suitable for TV series, seasonal updates, fixed keywords, and long-term tracked content.
Uploading and Syncing
After downloading, files are automatically uploaded to 115. Upload tasks and local organization tasks should have a clear order, so STRM generation or scraping does not start before files finish uploading.
STRM Generation
qMediaSync generates STRM files and maps cloud-drive content into media entries Emby can recognize.
Renaming and Scraping
Renamed folders then enter scheduled scraping. This is suitable for fixed cron-like tasks, such as running once every night and avoiding download peak times.
Emby Import
Emby is only responsible for scanning and playback. Once directories, STRM files, and metadata are prepared, letting Emby import automatically is much steadier.
Current State
This plan already covers my Movie & TV needs:
- Disney+ handles casual watching;
- PT + NAS handles primary downloading and short-term buffering;
- 115 handles remote storage and cloud-drive playback;
- qMediaSync handles STRM and syncing;
- MoviePilot handles monitoring, downloading, uploading, and renaming;
- MDCNG handles scraping for some special libraries;
- Emby handles unified display and playback.
There are two main areas to improve later. The first is task orchestration, reducing interference among upload, renaming, scraping, and import. The second is error handling: when a link expires, scraping fails, or episode numbering is abnormal, I want to identify which step caused the problem faster.
Once these two parts are stable, the home media library will become a truly maintainable system instead of just a pile of files.

