No description
Find a file
2020-03-21 10:46:03 +10:00
app Restructured source code layout, Added rice support for templates and static assets 2020-03-21 09:55:06 +10:00
media Add support for on-demand thumbnail generation via github.com/mutschler/mt 2020-03-21 10:46:03 +10:00
static improve css 2019-07-02 09:39:11 -05:00
templates improve css 2019-07-02 09:39:11 -05:00
tools Migrate to Go111Modules, Add Dockerfile and GoRelaser support 2020-03-21 08:20:16 +10:00
videos import code 2019-06-26 14:02:31 -05:00
.gitignore Migrate to Go111Modules, Add Dockerfile and GoRelaser support 2020-03-21 08:20:16 +10:00
.goreleaser.yml Migrate to Go111Modules, Add Dockerfile and GoRelaser support 2020-03-21 08:20:16 +10:00
.yamllint.yml Migrate to Go111Modules, Add Dockerfile and GoRelaser support 2020-03-21 08:20:16 +10:00
config.json Restructured source code layout, Added rice support for templates and static assets 2020-03-21 09:55:06 +10:00
Dockerfile Migrate to Go111Modules, Add Dockerfile and GoRelaser support 2020-03-21 08:20:16 +10:00
go.mod Restructured source code layout, Added rice support for templates and static assets 2020-03-21 09:55:06 +10:00
go.sum Restructured source code layout, Added rice support for templates and static assets 2020-03-21 09:55:06 +10:00
LICENSE Initial commit 2019-06-26 12:44:04 -05:00
main.go Restructured source code layout, Added rice support for templates and static assets 2020-03-21 09:55:06 +10:00
Makefile Restructured source code layout, Added rice support for templates and static assets 2020-03-21 09:55:06 +10:00
README.md Restructured source code layout, Added rice support for templates and static assets 2020-03-21 09:55:06 +10:00
version.go Migrate to Go111Modules, Add Dockerfile and GoRelaser support 2020-03-21 08:20:16 +10:00

tube GoDoc

This is a Golang project to build a self hosted "tube"-style video player for watching your own video collection over HTTP or hosting your own channel for others to watch.

Some of the key features include:

  • Easy to add videos (just move a file into the folder)
  • No database (video info pulled from file metadata)
  • No JavaScript (the player UI is entirely HTML)
  • Easy to customize CSS and HTML template
  • Automatically generates RSS feed (at /feed.xml)
  • Clean, simple, familiar UI

Currently only supports MP4 video files so you may need to re-encode your media to MP4 using something like ffmpeg.

Since all of the video info comes from metadata it's also useful to have a metadata editor such as EasyTAG (which supports attaching images as thumbnails too).

By default the server is configured to run on 127.0.0.1:0 which will assign a random port every time you run it. This is to avoid conflicting with other applications and to ensure privacy. You can configure this to be any specific host:port by editing config.json before running the server. You can also change the RSS feed details and library path from config.json.

installation

from release

  1. Download release for your platform
  2. Extract zip archive
  3. Run tube executable to start server (this will output the URL for accessing from a browser)
  4. Move videos to videos directory
  5. Open the URL from step 3 and enjoy!

from source

  1. Install Golang if you don't already have it
  2. go get github.com/wybiral/tube
  3. cd $GOPATH/src/github.com/wybiral/tube
  4. go run main.go (this will output the URL for accessing from a browser)
  5. Move videos to $GOPATH/src/github.com/wybiral/tube/videos
  6. Open the URL from step 4 and enjoy!