White Raven Server
White Raven Server is a REST-like API controlled torrent client application to find movies and tv shows from various sources and stream them over http connection. Mainly created for White Raven, which is a torrent player application for Samsung Smart TV E, F, H series.
HTTP API Functions
Command-Line Arguments
- -background run the server in the background
- -cors enable CORS
- -dir
string
specify the directory where files will be downloaded to if storagetype is set to "piecefile" or "file"
- -downrate
int
download speed rate in Kbps (default 4096
)
- -help print this help message
- -host
string
listening server ip
- -log enable log messages
- -maxconn
int
max connections per torrent (default 40
)
- -memorysize
int
specify the storage memory size in MB if storagetype is set to "memory" (minimum 64) (default 64
)
- -nodht disable dht
- -osuseragent
string
set external OpenSubtitles user agent
- -port
int
listening port (default 9000
)
- -storagetype
string
select storage type (must be set to "memory" or "piecefile" or "file") (default "memory"
)
- -tmdbkey
string
set external TMDB API key
- -uprate
int
upload speed rate in Kbps (default 256
)
Build Instructions
Build On Windows
Build for Samsung Smart TV E, F, H ARM series:
set GO111MODULE=on
set GOOS=linux
set GOARCH=arm
set GOARM=7
go build -ldflags="-s -w" -o wrserver
Build for Windows (x32):
set GO111MODULE=on
set GOOS=windows
set GOARCH=386
go build -ldflags="-s -w" -o wrserver.exe
Build for Windows (x64):
set GO111MODULE=on
set GOOS=windows
set GOARCH=amd64
set CGO_ENABLED=0
go build -ldflags="-s -w" -o wrserver.exe
Build for Linux (x32):
set GO111MODULE=on
set GOOS=linux
set GOARCH=386
go build -ldflags="-s -w" -o wrserver
Build for Linux (x64):
set GO111MODULE=on
set GOOS=linux
set GOARCH=amd64
go build -ldflags="-s -w" -o wrserver
Run The Server
Simply run the executable file without parameters to serve torrent data from memory.
wrserver
Run the executable file with the following parameters to serve torrent data from local disk.
wrserver -storagetype="file" -dir="downloads"
Note For Releases
The releases always compressed with the latest version of UPX, an advanced executable file packer to decrease the size of the application. This is important for embedded devices such as Samsung Smart TVs because they have a very limited amount of resources!
License
GNU GENERAL PUBLIC LICENSE Version 3