Giter Site home page Giter Site logo

defsub / takeout Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 0.0 997 KB

Take your personal media collection with you, on your own terms, and enjoy with free and open source software.

Home Page: https://defsub.github.io

License: GNU Affero General Public License v3.0

Go 88.61% HTML 6.55% CSS 1.13% JavaScript 2.92% Dockerfile 0.32% Makefile 0.46%
golang media music movie copyleft bleve sqlite musicbrainz themoviedb lastfm server s3 google-assistant flac xspf jsonpatch

takeout's Introduction

Takeout

Takeout is a copyleft media service that indexes organized media files in S3 buckets using MusicBrainz, Last.fm, Fanart.tv, and The Movie Database to make media available for streaming using a mobile app, TV app, web interface and VLC. Media is browsed using the Takeout server and streamed directly from S3 using pre-signed time-based URLs.

Takeout is primarily a music player that also supports radio, movies and podcasts. It's not intended to be a replacement for more feature-rich systems like Plex, Jellyfin and Kodi. Instead, Takeout takes inspiration from these systems and attempts to be a small yet capable system designed around media being stored in the cloud. You can take your personal media collection with you, on your own terms, create your own personal streaming service, and enjoy your media with free and open source software.

Features

  • Music metadata from MusicBrainz and Last.fm
  • Album covers from the Cover Art Archive
  • Artist artwork from Fanart.tv
  • Powerful search and playlists. See search.md
  • Movie metadata and artwork from The Movie Database (TMDb)
  • Podcasts with series and episode metadata using RSS 2.0
  • Internet radio stations (pls)
  • Support for Google Assistant until June 13, 2023. See actions.md for more details.
  • Media streaming directly from S3 using pre-signed time-based URLs
  • User-based access control using cookies, tokens and scrypt
  • Server-based playlist API (using jsonpatch)
  • Web and JSON views
  • Web playback using HTML5 audio - Chrome, Safari & Firefox tested on desktop & mobile
  • Flutter app available for Android (and iOS)
  • XSPF ("spiff") and JSPF playlists
  • Written in Go, with SQLite3 and Bleve
  • Supports caching of metadata API data for faster (re)syncing
  • REST APIs are available to build custom interfaces
  • Free and open source with AGPLv3 license

The privacy policy, setup documentation, and more details on how to manage media in the S3 bucket, can be found in the doc directory.

Please see how you can contribute to Takeout and related projects and services.

takeout's People

Contributors

defsub avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

takeout's Issues

Regex issue with some song titles that start with number dash (5-Piece Chicken Dinner)

These tracks appear to be multi-disc tracks:

Music/Beastie Boys/Paul's Boutique/9-5‐Piece Chicken Dinner.flac

Looks like a completely valid disc 9, track 5, title Piece Chicken Dinner. Another example on same album is 3-Minute Rule. There's already a 99% fix for tracks like 4-36-22-36.flac or 11-19-2000.flac - assume these single disc. Need another fix for this one.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.