takeout

package module
v0.11.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 5, 2023 License: AGPL-3.0 Imports: 0 Imported by: 0

README

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 full 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.

Documentation

Index

Constants

View Source
const (
	AppName = "Takeout"
	Version = "0.11.1"
	Contact = "@defsub"
)

Variables

This section is empty.

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
cmd
internal
activity
Package activity manages user activity data.
Package activity manages user activity data.
progress
Package progress manages user progress data which contains media offset and duration to allow incremental watch/listen progress to be saved and retrieved to/from the server based on etag.
Package progress manages user progress data which contains media offset and duration to allow incremental watch/listen progress to be saved and retrieved to/from the server based on etag.
server
Package server Takeout API
Package server Takeout API
lib
hub
log
pls
rss
str
tools

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL