🎵 Blissful

Lidarr Music Downloader Microservice

Service: ⏳ Checking...
FFmpeg: ⏳ Checking...
yt-dlp: ⏳ Checking...


Lidarr Configuration

The URL where your Lidarr instance is running
Found in Lidarr Settings → General → Security


Download Settings

Higher quality = larger file size
Adjust volume to consistent levels across tracks
Combine stereo channels into single mono channel (saves space)
Audio sample rate - higher = better quality but larger files
Trim silence from beginning and end of tracks
Professional loudness normalization to -23 LUFS
Channel configuration for output audio
Automatically remove temporary download files after conversion
Include artist, title, album info in file metadata
Include album artwork in audio files (if available)


Drag to reorder • Toggle switch to enable/disable • Sources are searched top-to-bottom until a match is found

Loading searchable sources from yt-dlp...



Path Mapping

Map Lidarr's paths to your local paths if they differ (e.g., Docker containers, network shares).

Path Mapping Example


		# Sample mapping for Docker
		/media/music -> /music
		/media/downloads -> /downloads

		# Sample mapping for network share
		/media/music -> //NAS/Music
		/media/downloads -> //NAS/Downloads
        


Music Request System

Enable users to request new artists to be added to your Lidarr library. Requires authentication via Jellyfin, Emby, or Plex.

Allow users to search for and request new artists
Automatically monitor and search for albums when an artist is requested (recommended: disabled for manual approval)

Request Page Access

📱 Request Page URL:

http://localhost:7373/request

🔵 Jellyfin Configuration

Configure Jellyfin authentication for the request system

The URL where your Jellyfin server is running
Important: Get this from Jellyfin Dashboard → API Keys. This is required for user authentication to work!

🟢 Emby Configuration

Configure Emby authentication for the request system

The URL where your Emby server is running
Important: Get this from Emby Dashboard → API Keys. Required for authentication!

🟡 Plex Configuration

Configure Plex authentication for the request system

Important: Enter your Plex server URL to verify users have access to YOUR server. Users must have access to this server to login.

⚠️ Security Note:

The server URL is used to verify that users have permission to access YOUR specific Plex server, not just any Plex account.

Find your Plex URL: Settings → Network → Server address (e.g., http://192.168.1.100:32400)

Request Behavior

How requested artists should be added to Lidarr
Whether to automatically search for missing albums when an artist is requested

📖 How It Works

  1. Enable the feature: Check "Enable Music Request System" above
  2. Configure authentication: Enable at least one media server (Jellyfin, Emby, or Plex)
  3. Share the URL: Give your users the request page URL (shown above)
  4. Users login: Users authenticate with their media server credentials
  5. Users search & request: Users can search for artists and request them
  6. Artists are added: Requested artists are added to Lidarr (unmonitored by default)
  7. You approve: Review requests in Lidarr and enable monitoring/search as needed

💡 Tips

  • Security: Users authenticate with their own media server accounts
  • Unmonitored by default: Prevents automatic downloading of unwanted content
  • Manual approval: Review requests in Lidarr before enabling monitoring
  • Multiple auth options: Users can login with Jellyfin, Emby, or Plex
  • No API keys exposed: The request page doesn't expose Lidarr API keys to users


🎬 yt-dlp Management

Manage your yt-dlp installation. Keep it updated to ensure compatibility with YouTube and other services.

Checking...
Checking...
Checking...

🎞️ FFmpeg Management

Check your FFmpeg installation. FFmpeg is required for audio conversion.

Checking...
Checking...

Note: FFmpeg must be installed separately and available in your system PATH.

Download from: https://ffmpeg.org/download.html

Windows Users: Download the "essentials" build and extract ffmpeg.exe to a folder in your PATH.

📚 Why Keep Tools Updated?

yt-dlp

  • YouTube Compatibility: YouTube frequently changes their API
  • Bug Fixes: Regular stability improvements
  • New Features: Support for additional services
  • Security: Security patches and updates

FFmpeg

  • Audio Conversion: Convert downloaded files to desired format
  • Quality: Control bitrate and audio quality
  • Metadata: Embed album art and tags
  • Compatibility: Support for all audio formats

🔧 Troubleshooting

yt-dlp: Downloads are failing with "Precondition check failed" errors

This usually means your yt-dlp version is outdated. Click "Upgrade yt-dlp" above to fix this issue.

yt-dlp: Upgrade button is grayed out

The upgrade button is only enabled when a new version is available. Click "Check for Updates" to refresh the version information.

yt-dlp: Upgrade fails or times out

Try running the upgrade command manually in your terminal:

pip install --upgrade --force-reinstall yt-dlp
FFmpeg: "FFmpeg not found" error

FFmpeg is not installed or not in your system PATH. Download FFmpeg from the official website and ensure ffmpeg.exe is accessible from the command line.

FFmpeg: How to add FFmpeg to PATH on Windows

1. Extract ffmpeg.exe to a folder (e.g., C:\ffmpeg\bin)

2. Open System Properties → Environment Variables

3. Edit the "Path" variable and add the ffmpeg folder

4. Restart your terminal/command prompt

Docker: How to update FFmpeg in a container

Method 1: Update Dockerfile

# Add to your Dockerfile RUN apt-get update && apt-get install -y ffmpeg # Or for Alpine Linux RUN apk add --no-cache ffmpeg

Method 2: docker-compose.yml

services: blissful: build: . # Rebuild with: docker-compose build # Restart with: docker-compose up -d

Method 3: Pre-built image with FFmpeg

# Use a base image that includes FFmpeg FROM python:3.12-slim RUN apt-get update && apt-get install -y ffmpeg
Docker: yt-dlp updates in containers

In Docker, yt-dlp can be updated via pip (same as host):

Use the "Upgrade yt-dlp" button - it works in Docker!

⚠️ Note: Updates are lost when container is rebuilt unless you:

  1. Add RUN pip install --upgrade yt-dlp to your Dockerfile
  2. Use a volume to persist Python packages
  3. Update yt-dlp during container build


Userscript Installation

Install the userscript to add download buttons directly to your Lidarr interface.

  1. Install Tampermonkey or Greasemonkey browser extension
  2. Click the button below to install the userscript
  3. The userscript will automatically use this microservice URL
  4. Navigate to Lidarr and look for download buttons on album and wanted pages
📥 Install Userscript


📚 Documentation

Learn how to use Blissful - your Lidarr music downloader