Filters
Every filter call applies right away, so there’s no .apply(). Calls in the same tick share one request:
// One PATCH to Lavalink, not threeawait Promise.all([ player.filters.bassBoost('high'), player.filters.nightcore(), player.setVolume(90),]);Try the Filter LabToggle filters and see the exact payload Raya sends to Lavalink.
Presets
Section titled “Presets”await player.filters.bassBoost('medium'); // 'off' | 'low' | 'medium' | 'high' | 'extreme' | 0-1await player.filters.nightcore(); // nightcore(false) turns it offawait player.filters.vaporwave();await player.filters.eightD(); // eightD(true, rotationHz)await player.filters.karaoke();await player.filters.soft();await player.filters.tremolo();await player.filters.vibrato();bassBoost only changes equalizer bands 0 to 4, so it combines with an equalizer preset.
Equalizer
Section titled “Equalizer”await player.filters.setEqualizerPreset('rock');// flat, bass, pop, rock, electronic, classical, soft, treble, vocal
await player.filters.setEqualizer([ { band: 0, gain: 0.2 }, // band 0-14, gain -0.25 to 1 (clamped) { band: 1, gain: 0.15 },]);await player.filters.clearEqualizer();Speed, pitch and more
Section titled “Speed, pitch and more”await player.filters.setSpeed(1.25);await player.filters.setPitch(0.9);await player.filters.setRate(1.1);await player.filters.setTimescale({ speed: 1, pitch: 1.2, rate: 1 });await player.filters.setVolume(1.5); // 0-5 multiplier, separate from player volumeawait player.filters.setRotation({ rotationHz: 0.3 });await player.filters.setLowPass({ smoothing: 20 });await player.filters.setKaraoke(null); // null removes a filterAlso available: setTremolo, setVibrato, setDistortion, setChannelMix.
Bulk changes
Section titled “Bulk changes”await player.filters.set({ timescale: { speed: 1.2 }, rotation: { rotationHz: 0.2 } }); // replace allawait player.filters.patch({ rotation: null, lowPass: { smoothing: 15 } }); // mergeawait player.filters.clear();Plugin filters
Section titled “Plugin filters”Filters from Lavalink plugins (for example LavaDSPX) go under pluginFilters:
await player.filters.setPluginFilter('echo', { /* shape defined by the plugin */ });await player.filters.setPluginFilter('echo', null); // removeReading state
Section titled “Reading state”player.filters.active; // ['equalizer', 'timescale']player.filters.value; // the payload sent to Lavalinkplayer.filters.speedMultiplier; // speed × rate