Youtub3r scans your Channels DVR Server and attempts to find the corresponding info.json files created by Pinchflat and applies the metadata and artwork to the videos in Channels.
Channels expects videos to be grouped into folders. These are calld Video Groups.
You should have all your YouTube videos grouped into their own Video Group directories, with the root directory added as a Video Source in Channels.
For example, if your videos are organized like this:
/YouTube Videos/Concerts
/YouTube Videos/SNL Clips
/YouTube Videos/Music Videos
Then you would add /YouTube Videos as a new Video Source in Channels.
In order for youtub3r to know which Video Groups to update, you must tag your Video Groups with either the label youtube or the genre YouTube.
Ensure Download Metadata is enabled in the Media Profile you are using with Pinchflat. This will create the info.json files that youtub3r needs to read the metadata.
Pinchflat defaults to organizing videos for each Source into their own directory. But the default Media Profile puts each video into its own directory. We suggest against this. Instead, format the output path template to something like this:
/{{ source_custom_name }}/{{ upload_yyyy_mm_dd }}-{{ title }}.{{ ext }}
This will result in a directory structure like this:
/YouTube Videos/Source Name/2024_06_01-Video 1.mp4
/YouTube Videos/Source Name/2024_06_01-Video 1.info.json
/YouTube Videos/Source Name/2024_06_12-Video 2.mp4
/YouTube Videos/Source Name/2024_06_12-Video 2.info.json
This is a required structure for youtub3r to work.
| ENV VAR | Description | Required | Default |
|---|---|---|---|
| SERVER_HOST | host of Channels DVR Server | Yes | |
| WAIT_IN_SECONDS | Number of seconds between scans | No | 60 |
Youtub3r needs access to your YouTube video files and their corresponding info.json files created by Pinchflat.
You must mount your video directory into the container at /youtube_videos.
This directory must be the root directory of your YouTube video groups. This is the same path you added as a Video Source in Channels.
docker run \
--name youtub3r \
-e SERVER_HOST="192.168.1.2:8089"
-v /path/to/videos:/youtube_videos
jonmaddox/youtub3rversion: "3.1"
services:
youtub34:
image: jonmaddox/youtub3r
container_name: youtub3r
environment:
- SERVER_HOST=192.168.1.2:8089
volumes:
- /path/to/videos:/youtube_videos