Repository navigation
Expand file tree
/
Copy pathapplication.example.yml
More file actions
167 lines (167 loc) · 9.18 KB
/
Copy pathapplication.example.yml
File metadata and controls
167 lines (167 loc) · 9.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
lavalink:
plugins:
- dependency: com.github.topi314.lavasrc:lavasrc-plugin:4.1.1
- dependency: com.github.topi314.sponsorblock:sponsorblock-plugin:3.0.0
- dependency: com.dunctebot:skybot-lavalink-plugin:1.7.0
- dependency: com.github.topi314.lavasearch:lavasearch-plugin:1.0.0
- dependency: com.github.topi314.lavalyrics:lavalyrics-plugin:1.0.0
- dependency: dev.lavalink.youtube:youtube-plugin:1.4.0
- dependency: me.rohank05:lavalink-filter-plugin:0.0.4
repository: https://jitpack.io
- dependency: net.esmbot:lava-xm-plugin:0.2.5
repository: https://repo.projectlounge.pw/maven/releases
server:
password: youshallnotpass
bufferDurationMs: 400 # The duration of the NAS buffer. Higher values fare better against longer GC pauses. Duration <= 0 to disable JDA-NAS. Minimum of 40ms, lower values may introduce pauses.
frameBufferDurationMs: 1000 # How many milliseconds of audio to keep buffered
opusEncodingQuality: 10 # Opus encoder quality. Valid values range from 0 to 10, where 10 is best quality but is the most expensive on the CPU.
playerUpdateInterval: 5 # How frequently to send player updates to clients, in seconds
resamplingQuality: MEDIUM # Quality of resampling operations. Valid values are LOW, MEDIUM and HIGH, where HIGH uses the most CPU.
trackStuckThresholdMs: 10000 # The threshold for how long a track can be stuck. A track is stuck if does not return any audio data.
useSeekGhosting: true # Seek ghosting is the effect where whilst a seek is in progress, the audio buffer is read from until empty, or until seek is ready.
youtubePlaylistLoadLimit: 6 # Number of pages at 100 each
youtubeSearchEnabled: true # Whether to enable youtube search
soundcloudSearchEnabled: true # Whether to enable soundcloud search
gc-warnings: true
sources:
bandcamp: true
http: true
local: true
soundcloud: true
twitch: true
vimeo: true
youtube: false # Deprecated
filters: # All filters are enabled by default
volume: true
equalizer: true
karaoke: true
timescale: true
tremolo: true
vibrato: true
distortion: true
rotation: true
channelMix: true
lowPass: true
echo: true # From lavalink-filter-plugin
reverb: true # From lavalink-filter-plugin
# ratelimit:
# ipBlocks: [1.0.0.0/8, '...'] # list of ip blocks
# excludedIps: ['...', '...'] # ips which should be explicit excluded from usage by lavalink
# strategy: RotateOnBan # RotateOnBan | LoadBalance | NanoSwitch | RotatingNanoSwitch
# searchTriggersFail: true # Whether a search 429 should trigger marking the ip as failing
# retryLimit: -1 # -1 = use default lavaplayer value | 0 = infinity | >0 = retry will happen this numbers times
# httpConfig: # Useful for blocking bad-actors from ip-grabbing your music node and attacking it, this way only the http proxy will be attacked
# proxyHost: localhost # Hostname of the proxy, (ip or domain)
# proxyPort: 3128 # Proxy port, 3128 is the default for squidProxy
# proxyUser: '' # Optional user for basic authentication fields, leave blank if you don't use basic auth
# proxyPassword: '' # Password for basic authentication
plugins:
youtube:
enabled: true
clients: [MUSIC, ANDROID, WEB, TVHTML5EMBEDDED, ANDROID_LITE, ANDROID_TESTSUITE, IOS, MEDIA_CONNECT]
allowSearch: true # Whether "ytsearch:" and "ytmsearch:" can be used.
allowDirectVideoIds: false # Whether just video IDs can match. If false, only complete URLs will be loaded.
allowDirectPlaylistIds: false # Whether just playlist IDs can match. If false, only complete URLs will be loaded.
WEB: # names are specified as they are written below under "Available Clients".
# This will disable using the WEB client for video playback.
playback: false
TVHTML5EMBEDDED:
# The below config disables everything except playback for this client.
playlistLoading: false # Disables loading of playlists and mixes for this client.
videoLoading: false # Disables loading of videos for this client (playback is still allowed).
searching: false # Disables the ability to search for videos for this client.
dunctebot:
sources:
getyarn: true # www.getyarn.io
clypit: true # www.clyp.it
tts: true # speak:Words to speak
pornhub: true # should be self-explanatory
reddit: true # should be self-explanatory
ocremix: true # www.ocremix.org
tiktok: true # tiktok.com
mixcloud: true # mixcloud.com
soundgasm: true # soundgasm.net
ttsLanguage: en-US # language of the TTS engine
lavalyrics:
# sources is used to sort the different lyrics sources by priority (from highest to lowest)
sources:
# - spotify # There are issues without spotify lyrics at the moment
- youtube
- deezer
lavasrc:
sources:
spotify: true # Enable Spotify source
applemusic: false # Enable Apple Music source
deezer: true # Enable Deezer source
yandexmusic: false # Enable Yandex Music source
youtube: true
flowerytts: true
providers:
- dzisrc:%ISRC% # Deezer ISRC Search
- ytmsearch:"%ISRC%" # YouTube Music ISRC Search
- ytsearch:"%ISRC%" # YouTube ISRC Search
- dzsearch:%QUERY% # Deezer Search
- ytmsearch:%QUERY% # YouTube Music Search
- ytsearch:%QUERY% # YouTube Search
- scsearch:%QUERY% # SoundCloud Search
applemusic:
countryCode: US # the country code you want to use for filtering the artists top tracks and language. See https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
mediaAPIToken: CHANGE_ME # Can be used to bypass the auto token fetching which is likely to break again in the future
playlistLoadLimit: 6 # The number of pages at 300 tracks each
albumLoadLimit: 6 # The number of pages at 300 tracks each
spotify:
clientId: CHANGE_ME
clientSecret: CHANGE_ME
spDc: your sp dc cookie # the sp dc cookie used for accessing the spotify lyrics api
countryCode: US # the country code you want to use for filtering the artists top tracks. See https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
playlistLoadLimit: 6 # The number of pages at 100 tracks each
albumLoadLimit: 6 # The number of pages at 50 tracks each
deezer:
masterDecryptionKey: CHANGE_ME # the master key used for decrypting the deezer tracks. (yes this is not here you need to get it from somewhere else)
# P.S IT IS NOT id58zow5hmqhdv24zil4znth3ywy8prt9-dizzzrlba8q4h2al0ywmhp2zg-1d5g
# yandexmusic:
# accessToken: CHANGE_ME # the token used for accessing the yandex music api. See https://github.com/topi314/LavaSrc#yandex-music
flowerytts:
voice: Airon # (case-sensitive) get default voice from here https://api.flowery.pw/v1/tts/voices
translate: false # whether to translate the text to the native language of voice
silence: 0 # the silence parameter is in milliseconds. Range is 0 to 10000. The default is 0.
speed: 1.0 # the speed parameter is a float between 0.5 and 10. The default is 1.0. (0.5 is half speed, 2.0 is double speed, etc.)
audioFormat: mp3 # supported formats are: mp3, ogg_opus, ogg_vorbis, aac, wav, and flac. Default format is mp3
youtube:
countryCode: US # the country code you want to use for searching lyrics via ISRC. See https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
server:
address: localhost # Address to bind the server to, Client will connect to this address - 0.0.0.0 means all addresses, if you are using the node on same machine as bot then use localhost
port: 2154 # Port to run the server on, Client will connect to this port
compression:
enabled: false # Whether to enable compression or not; Set this to 'true' if this is a remote node, and you need to conserve outbound traffic
# You will likely want to set this as high as your system can handle without issues if you use localtracks
undertow:
threads:
io: 32 # CPU_COUNT * 2 i.e 32 for 16 core cpu
worker: 128 # CPU_COUNT * 8 i.e 128 for 16 core cpu
spring:
mvc:
async:
request-timeout: -1 # Disable timeout
metrics:
prometheus:
enabled: false
endpoint: /metrics
logging:
file:
path: ./logs/
level:
lavalink: INFO
root: INFO
request:
enabled: true
includeClientInfo: true
includeHeaders: false
includeQueryString: true
includePayload: true
maxPayloadLength: 10000
logback:
rollingpolicy:
max-file-size: 25MB
max-history: 7
total-size-cap: 1GB