<%inherit file="base.html"/> <%! import headphones import string %> <%def name="headerIncludes()">
<%def name="body()">

# Settings

- Web Interface
- Download settings
- Search providers
- Quality & Post Processing
- Notifications
- Advanced Settings

Basic
HTTP Host Use 0.0.0.0 to allow outside connections
HTTP Port
HTTP Username
HTTP Password
Launch Browser on Startup
Enable HTTPS
HTTPS Cert
HTTPS Key

API
Enable API
API key Current API key: ${config['api_key']}
Interval An interval of 0 will disable a task.
Search Interval mins minimum is 360 minutes
Download Scan Interval mins
Library Scan Interval hours
MusicBrainz Update Interval hours
Ignore Album Updates days
Ignore Undated Releases

Web Interface changes require a restart to take effect. Saving settings will restart intervals if changed.

Usenet Sabnzbd NZBget Black Hole
SABnzbd Host usually http://localhost:8080
SABnzbd Username
SABnzbd Password
SABnzbd API key
SABnzbd Category
NZBget Host usually http://localhost:6789
NZBget Username
NZBget Password
NZBget Category
<% if config['nzbget_priority'] == -100: prio_verylow = 'selected="selected"' prio_low = '' prio_normal = '' prio_high = '' prio_veryhigh = '' prio_force = '' elif config['nzbget_priority'] == -50: prio_verylow = '' prio_low = 'selected="selected"' prio_normal = '' prio_high = '' prio_veryhigh = '' prio_force = '' elif config['nzbget_priority'] == 0: prio_verylow = '' prio_low = '' prio_normal = 'selected="selected"' prio_high = '' prio_veryhigh = '' prio_force = '' elif config['nzbget_priority'] == 50: prio_verylow = '' prio_low = '' prio_normal = '' prio_high = 'selected="selected"' prio_veryhigh = '' prio_force = '' elif config['nzbget_priority'] == 100: prio_verylow = '' prio_low = '' prio_normal = '' prio_high = '' prio_veryhigh = 'selected="selected"' prio_force = '' elif config['nzbget_priority'] == 900: prio_verylow = '' prio_low = '' prio_normal = '' prio_high = '' prio_veryhigh = '' prio_force = 'selected="selected"' else: prio_verylow = '' prio_low = '' prio_normal = 'selected="selected"' prio_high = '' prio_veryhigh = '' prio_force = '' %>
NZBget Priority
Black Hole Directory Folder your Download program watches for NZBs
Music Download Directory: Full path where SAB or NZBget downloads your music, e.g. /Users/name/Downloads/music
Usenet Retention

Torrents Black Hole Transmission uTorrent (Beta) Deluge (Beta) QBitTorrent
Black Hole Directory Folder your Download program watches for Torrents
Magnet links Ignore Open Convert Embed
Note: Opening magnet URLs is not suitable for headless/console/terminal servers.
Embed only works for rTorrent.
Transmission Host usually http://localhost:9091
Transmission Username
Transmission Password
Note: With Transmission, you can specify a different download directory for downloads sent from Headphones. Set it in the Music Download Directory below
Note: uTorrent may keep files read only when completed. Check 'Preferences -> Advanced -> bt.read_only_on_complete' in case of problems.
uTorrent Host usually http://localhost:9091
uTorrent Username
uTorrent Password
uTorrent Label
Note: Works with WebAPI Rev 11 and later (QBitTorrent 3.4.0 and later)
QBitTorrent Host usually http://localhost:8081
QBitTorrent Username
QBitTorrent Password
QBitTorrent Label
Deluge WebUI Host and Port Usually http://localhost:8112 (requires WebUI plugin)
Deluge SSL Certificate Path to the certificate file. Make sure to use a valid certificate ("Issued To" field must match hostname) which is not the case with the default certificate. Path is usually %appdata%\deluge\ssl on Windows, ~/.config/deluge/ssl/ on Linux. Leave this blank if you are using a self-signed certificate.
Deluge Password
Note: With Deluge, you can specify a different download directory for downloads sent from Headphones. Set it in the Music Download Directory below
Deluge Label Labels shouldn't contain spaces (requires Label plugin)
Move When Completed Directory where Deluge should move completed downloads
Add Torrent Paused
Minimum seeders Number of minimum seeders a torrent must have to be accepted
Music Download Directory Full path where your torrent client downloads your music e.g. /Users/name/Downloads/music.
Keep Files for Seeding
Prefer NZBs Torrents No Preference

NZBs
Headphones Indexer
Username Headphones VIP Server username & password
Password
Don't have an account? Sign up!
Custom Newznab Providers
Newznab Host e.g. http://nzb.su
Newznab API
Enabled
<% newznab_number = 2 %> %for newznab in config['extra_newznabs']: <% if newznab[2] == '1' or newznab[2] == 1: newznab_enabled = "checked" else: newznab_enabled = "" %>
Newznab Host
Newznab API
Enabled
<% newznab_number += 1 %> %endfor
NZBs.org
NZBs.org API Key
omgwtfnzbs
omgwtfnzbs UID
omgwtfnzbs API Key

Torrents
The Pirate Bay
Proxy URL Optional. Leave empty for default.
Seed Ratio
Waffles.ch
UID Number
Passkey
Seed Ratio
rutracker.org
Userame
Password
Seed Ratio
Session Cookie (Optional - Advanced)
Orpheus.network
Username
Password
URL
Seed Ratio
Redacted
Username
Password
Seed Ratio
Use freeleech tokens when available
Jackett / Torznab Providers
Torznab Host e.g. http://localhost:9117/api/v2.0/indexers/demonoid/results/torznab/
Torznab API
Torznab Seed Ratio
Enabled
<% torznab_number = 2 %> %for torznab in config['extra_torznabs']: <% if torznab[3] == '1' or torznab[3] == 1: torznab_enabled = "checked" else: torznab_enabled = "" %>
Torznab Host
Torznab API
Torznab Seed Ratio
Enabled
<% torznab_number += 1 %> %endfor
Old Pirate Bay
URL
Seed Ratio

Quality
Highest Quality excluding Lossless
Highest Quality including Lossless
Lossless Only
Reject if target size is not in bitrate range: to\ kbps
Preferred Bitrate
Target bitrate: kbps
Reject if less than % or more than % of the target size (leave blank for no limit)
Allow lossless if no good lossy match found
Auto-Detect Preferred Bitrate
Search Words Separate words with a comma, e.g. "word1,word2,word3".
Ignored Words Results with any of these words in the title will be filtered out
Preferred Words Results with these words in the title will be preferred over results without them (search provider names can also be entered)
Required Words Results without these words in the title will be filtered out. You can use OR: 'flac OR lossless OR alac, vinyl'
Ignore clean/censored releases

Post-Processing
Move downloads to Destination Folder
Replace existing folders?
Keep original folder (i.e. copy)?
Rename files
Correct metadata
Split single file albums into multiple tracks
Delete leftover files (.m3u, .nfo, .sfv, .nzb, etc.)
Keep original nfo (extension changed to .orig.nfo)
Embed lyrics
Embed album art in each file
Add album art jpeg to album folder
as .jpg
Use $Artist/$artist, $Album/$album, $Year/$year, put optional variables in curly braces, use single-quote marks to escape curly braces literally ('{', '}').
Album art min width \ Album art max width
Destination Directory: The directory where Headphones will move file to after post processing, e.g. /Volumes/share/music.
Lossless Destination Directory: Optional. Set this if you have a separate directory for lossless music.

Boxcar 2
Access Token
Notify on snatch?
Email
From
To
SMTP Server
SMTP User
SMTP Password
SMTP Port
SSL
TLS
Notify on snatch?
Growl
Growl Host:Port
Growl Password
Notify on snatch?
Kodi / XBMC
Host(s) e.g. http://localhost:8080. Separate hosts with commas
Username
Password
Update Library
Send Notifications
Logitech Media Server
LMS Host:Port e.g. http://localhost:9000. Seperate hosts with commas
MPC
NotifyMyAndroid
Notify on snatch?
API Key Separate multiple api keys with commas
Priority
OS X
Register Notify App
Enter the path/application name to be registered with the Notification Center, default is /Applications/Headphones
Notify on snatch?

Plex
Plex Server Host:Port Host running Plex Media Server (eg. http://192.168.1.100:32400)
Plex Client Host:Port Host running Plex Client (eg. http://192.168.1.100:3005)
Plex Username Username of your Plex client API (blank for none)
Plex Password Password of your Plex client API (blank for none)
Plex Token Plex Token (for use with Plex Home)
Update Plex Library
Send Notifications to Plex
Prowl
API key
Notify on snatch?
Priority (-2,-1,0,1 or 2)
Pushalot
Notify on snatch?
Pushalot API Key Separate multiple api keys with commas
Pushbullet
Access Token
Device IDLeave blank to send to all devices
Notify on snatch?
Pushover
User Key
Notify on snatch?
Priority (-1,0, or 1)
API Token (leave blank to use Headphones default)
Subsonic
Subsonic URL
Subsonic Username
Subsonic Password
Synology NAS
Slack
Slack Webhook
Channel
Emoji
Notify on snatch?
Telegram
Bot TokenContact @BotFather to create a bot and get its token
User IDContact @myidbot to get your user ID
Notify on snatch?
Join
Join API Key
Device ID(s)Comma separated list. Leave blank to send to all devices
Notify on snatch?

Renaming options
Folder Format Use: $Artist/$artist, $SortArtist/$sortartist, $Album/$album, $Year/$year, $Type/$type (release type) and $First/$first (first letter in artist name), $OriginalFolder/$originalfolder (downloaded directory name). Put optional variables in curly braces, use single-quote marks to escape curly braces literally ('{', '}').
E.g.: $Type/$First/$artist/$album{ '['$year']'} = Album/G/girl talk/all day [2010]
File Format Use: $Disc/$disc (disc #), $Track/$track (track #), $Title/$title, $Artist/$artist, $Album/$album and $Year/$year. Put optional variables in curly braces, use single-quote marks to escape curly braces literally ('{', '}').
Use underscores instead of spaces
Re-Encoding Options Note: this option requires the lame, ffmpeg or xld encoder
Re-encode downloads during postprocessing
Only re-encode lossless files (.flac)
Delete original lossless files after encoding
<% if config['encoder'] == 'lame': lameselect = 'selected="selected"' ffmpegselect = '' xldselect = '' libavselect = '' elif config['encoder'] == 'ffmpeg': lameselect = '' ffmpegselect = 'selected="selected"' xldselect = '' libavselect = '' elif config['encoder'] == 'libav': lameselect = '' ffmpegselect = '' xldselect = '' libavselect = 'selected="selected"' else: lameselect = '' ffmpegselect = '' xldselect = 'selected="selected"' libavselect = '' %>
Encoder
Enable multi-core
Multi-core count Set equal to the number of cores, or 0 for auto
Audio Properties
Format
VBR/CBR
Quality
Bitrate
<% if config["samplingfrequency"] == 44100: freq44100 = 'selected="selected"' freq48000 = '' else: freq44100 = '' freq48000 = 'selected="selected"' %>
Sampling
Advanced Encoding Options
Arguments Ignores all of the above options

XLD Profile
Extension If different from format selected above
Path to Encoder
Miscellaneous
Automatically include extras when adding an artist
<% which_extras_selected = "" for extra in config['extras']: if config['extras'][extra] == "checked": which_extras_selected += string.capwords(extra) + ', ' # Chop off the last comma & space if which_extras_selected: which_extras_selected = which_extras_selected[:-2] else: which_extras_selected = "None" %> Currently Selected: ${which_extras_selected} (Change)
%for extra in config['extras']: ${string.capwords(extra)}
%endfor
%for extra in config['extras']: ${string.capwords(extra)}
%endfor
Only include 'official' extras (i.e. no bootlegs, promos, etc.)
Automatically mark upcoming albums as wanted
Automatically mark all albums as wanted
Automatically mark manually added albums as wanted
Wait until an album's release date before searching
Don't add new artists when post-processing albums
Stop post-processing if no good metadata match found
Tag using ID3v2.3 instead of ID3v2.4
Folder Permissions
File Permissions
Cache Size (in MB)
Directories
Log Directory
Cache Directory
Post Processing Temporary Directory
Songkick
Show concert info
API Key
Filter by Metro Area
Metro Area ID Find Area ID
Musicbrainz
Musicbrainz Mirror
Host
Port
Requires Authentication
Username
Password
Sleep Interval
Username
Password
Get an Account!
<%def name="javascriptIncludes()">