Convert Figma logo to code with AI

Lidarr logoLidarr

Looks and smells like Sonarr but made for music.

3,643
245
3,643
739

Top Related Projects

Open Source Spotify client library

12,827

music library manager and MusicBrainz tagger

1,590

music streaming server / free-software subsonic server API implementation

11,657

๐ŸŽงโ˜๏ธ Modern Music Server and Streamer compatible with Subsonic/Airsonic

:satellite: :cloud: :notes:Airsonic, a Free and Open Source community driven media server (fork of Subsonic and Libresonic)

Quick Overview

Lidarr is an open-source music collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new tracks from your favorite artists and will grab, sort, and rename them. Lidarr is designed to work with NZB and Torrent files, integrating with various download clients and indexers.

Pros

  • Automated music library management with support for various file formats
  • Integration with multiple download clients and indexers
  • Customizable quality profiles and release preferences
  • Clean, modern web interface with mobile support

Cons

  • Requires some technical knowledge to set up and configure properly
  • Limited support for streaming services compared to local files
  • Can be resource-intensive for large music libraries
  • Occasional issues with metadata accuracy and album matching

Getting Started

To get started with Lidarr:

  1. Download the latest release for your operating system from the Lidarr GitHub releases page.
  2. Install the application following the instructions for your OS.
  3. Access the web interface (default: http://localhost:8686).
  4. Configure your music library, download clients, and indexers in the settings.
  5. Add artists to your library and set quality profiles.
  6. Let Lidarr manage your music collection automatically.

For detailed installation and configuration instructions, refer to the Lidarr Wiki.

Competitor Comparisons

Open Source Spotify client library

Pros of librespot

  • Focused specifically on Spotify integration, providing a more specialized solution
  • Lightweight and efficient, suitable for embedded systems and low-resource environments
  • Supports a wide range of audio output backends

Cons of librespot

  • Limited to Spotify, not a comprehensive music management solution
  • Requires more technical knowledge to set up and configure
  • Less user-friendly interface compared to Lidarr's web-based UI

Code Comparison

librespot (Rust):

let session = Session::connect(config, credentials, cache, player_event_channel).await?;
let (player, _) = Player::new(config, session, None, move |_| {});
player.load(track_id, true, 0);
player.play();

Lidarr (C#):

var artist = _artistService.GetArtistByMetadataId(metadataId);
var albums = _albumService.GetAlbumsByArtist(artist.Id);
var tracks = _trackService.GetTracksByAlbum(albums.Select(a => a.Id).ToList());
_downloadService.ProcessDecisions(tracks);

While librespot focuses on Spotify playback, Lidarr provides broader music management functionality. librespot's code is more low-level, dealing directly with audio playback, while Lidarr's code demonstrates higher-level operations for managing music libraries and downloads.

12,827

music library manager and MusicBrainz tagger

Pros of beets

  • Lightweight and flexible command-line tool for music library management
  • Extensive plugin system for customization and additional features
  • Strong focus on metadata management and automatic tagging

Cons of beets

  • Requires more manual configuration and command-line usage
  • Less user-friendly for those unfamiliar with CLI interfaces
  • Limited built-in music player integration

Code comparison

beets (Python):

from beets.plugins import BeetsPlugin

class MyPlugin(BeetsPlugin):
    def commands(self):
        return [MyCommand()]

Lidarr (C#):

public class MyService : IMyService
{
    public void DoSomething()
    {
        // Implementation
    }
}

Summary

beets is a powerful, flexible command-line tool for music library management with a focus on metadata and tagging. It offers extensive customization through plugins but requires more manual configuration. Lidarr, on the other hand, provides a user-friendly web interface for automated music collection management, including integration with various indexers and download clients. While beets excels in metadata management, Lidarr offers a more comprehensive solution for automated music library organization and acquisition.

1,590

music streaming server / free-software subsonic server API implementation

Pros of gonic

  • Lightweight and efficient, focusing specifically on music streaming
  • Supports the Subsonic API, making it compatible with various Subsonic clients
  • Simple setup and configuration process

Cons of gonic

  • Limited feature set compared to Lidarr's comprehensive music management capabilities
  • Lacks advanced music organization and metadata management features
  • Smaller community and less frequent updates

Code Comparison

gonic (Go):

func (c *Controller) ServeArtwork(w http.ResponseWriter, r *http.Request) {
    artID, err := strconv.Atoi(chi.URLParam(r, "id"))
    if err != nil {
        http.Error(w, fmt.Sprintf("invalid art id: %s", err), 400)
        return
    }
    // ... (artwork serving logic)
}

Lidarr (C#):

[HttpGet]
public object GetArtistInfo(int artistId)
{
    var artist = _artistService.GetArtist(artistId);
    return artist.ToResource();
}

While both projects handle music-related tasks, gonic focuses on streaming with Subsonic API support, whereas Lidarr offers a more comprehensive music management solution with advanced features for organizing and maintaining a music library. gonic may be preferable for users seeking a lightweight streaming server, while Lidarr is better suited for those requiring extensive music collection management capabilities.

11,657

๐ŸŽงโ˜๏ธ Modern Music Server and Streamer compatible with Subsonic/Airsonic

Pros of Navidrome

  • Lightweight and efficient, suitable for low-powered devices
  • Built-in music player with transcoding capabilities
  • Supports multiple users with customizable permissions

Cons of Navidrome

  • Lacks advanced music management features like automatic organization
  • Limited integration with external services for metadata and lyrics

Code Comparison

Navidrome (Go):

func (s *Scanner) processAudioFiles(dir string, files []string) error {
    for _, f := range files {
        err := s.processAudioFile(dir, f)
        if err != nil {
            log.Error("Error processing audio file", "file", f, err)
        }
    }
    return nil
}

Lidarr (C#):

private List<string> ProcessAudioFiles(string path)
{
    var audioFiles = _diskProvider.GetFiles(path, SearchOption.AllDirectories)
                                   .Where(f => MediaFileExtensions.AudioExtensions.Contains(Path.GetExtension(f).ToLower()))
                                   .ToList();

    return audioFiles;
}

Both projects handle audio file processing, but Navidrome's implementation is more focused on individual file processing, while Lidarr's approach involves gathering all audio files in a directory and its subdirectories.

:satellite: :cloud: :notes:Airsonic, a Free and Open Source community driven media server (fork of Subsonic and Libresonic)

Pros of Airsonic

  • Web-based streaming server with support for various audio formats
  • Includes features like playlists, podcasts, and internet radio stations
  • Offers a more comprehensive media server experience

Cons of Airsonic

  • Less focused on music library management and organization
  • May have a steeper learning curve for users primarily interested in music collection management
  • Not specifically designed for automated music downloads or metadata management

Code Comparison

Airsonic (Java):

public class MediaScannerService {
    private void scanFile(File file) {
        String path = file.getPath();
        String suffix = FilenameUtils.getExtension(path).toLowerCase();
        MediaFile existingFile = mediaFileDao.getMediaFile(path);
        // ... (scanning logic)
    }
}

Lidarr (C#):

public class ImportDecisionMaker
{
    public List<ImportDecision<LocalTrack>> GetImportDecisions(List<LocalTrack> localTracks, Artist artist, DownloadClientItem downloadClientItem = null)
    {
        var decisions = new List<ImportDecision<LocalTrack>>();
        // ... (decision-making logic)
    }
}

The code snippets highlight the different approaches: Airsonic focuses on scanning and managing media files, while Lidarr emphasizes import decisions for music tracks, reflecting their distinct purposes as a general media server and a music collection manager, respectively.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Lidarr

Build Status Translation status Docker Pulls Github Downloads Backers on Open Collective Sponsors on Open Collective

Lidarr is a music collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new tracks from your favorite artists and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.

Major Features Include:

  • Support for major platforms: Windows, Linux, macOS, Raspberry Pi, etc.
  • Automatically detects new tracks.
  • Can scan your existing library and download any missing tracks.
  • Can watch for better quality of the tracks you already have and do an automatic upgrade.
  • Automatic failed download handling will try another release if one fails
  • Manual search so you can pick any release or to see why a release was not downloaded automatically
  • Fully configurable track renaming
  • Full integration with SABnzbd and NZBGet
  • Full integration with Kodi, Plex (notification, library update, metadata)
  • Full support for specials and multi-album releases
  • And a beautiful UI

Support

Note: GitHub Issues are for Bugs and Feature Requests Only

Discord GitHub - Bugs and Feature Requests Only Wiki

Contributors

This project exists thanks to all the people who contribute. Contribute.

Backers

Thank you to all our backers! รฐยŸย™ย Become a backer

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. Become a sponsor

Mega Sponsors

JetBrains

Thank you to JetBrains JetBrains for providing us with free licenses to their great tools.

DigitalOcean

This project is also supported by DigitalOcean

License