discord-player 7.1.1-dev.0 → 7.2.0-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +126 -5
- package/dist/index.js +558 -49
- package/dist/index.mjs +4 -0
- package/package.json +3 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as discord_js from 'discord.js';
|
|
2
2
|
import { Client, User, UserResolvable, GuildVoiceChannelResolvable, VoiceChannel, StageChannel, Guild, VoiceState, VoiceBasedChannel, GuildResolvable, Snowflake } from 'discord.js';
|
|
3
3
|
import Eris from 'eris';
|
|
4
|
+
import Oceanic from 'oceanic.js';
|
|
4
5
|
import { ListenerSignature, DefaultListener, EventEmitter, Collection, Queue, QueueStrategy } from '@discord-player/utils';
|
|
5
6
|
import { Readable, Duplex } from 'stream';
|
|
6
7
|
import * as _discord_player_equalizer from '@discord-player/equalizer';
|
|
7
|
-
import { EqualizerBand, BiquadFilters, PCMFilters, FiltersChain } from '@discord-player/equalizer';
|
|
8
|
+
import { SeekEvent, EqualizerBand, BiquadFilters, PCMFilters, CommonResamplerFilterPreset, ResampleParameters, CompressorParameters, ReverbParameters, SeekerParameters, FiltersChain } from '@discord-player/equalizer';
|
|
8
9
|
export { AF_NIGHTCORE_RATE, AF_VAPORWAVE_RATE, BASS_EQ_BANDS, FilterType as BiquadFilterType, BiquadFilters, FiltersChain, AudioFilters as PCMAudioFilters, PCMFilters, Q_BUTTERWORTH, VolumeTransformer } from '@discord-player/equalizer';
|
|
9
10
|
import { AudioResource, StreamType, AudioPlayerError, VoiceConnection, AudioPlayer, AudioPlayerStatus } from 'discord-voip';
|
|
10
11
|
export { AudioPlayer, CreateAudioPlayerOptions, JoinConfig, JoinVoiceChannelOptions, StreamType, createAudioPlayer, createAudioResource, getVoiceConnection, getVoiceConnections, joinVoiceChannel } from 'discord-voip';
|
|
@@ -13,7 +14,6 @@ import { RequestOptions } from 'http';
|
|
|
13
14
|
import { FFmpegLib } from '@discord-player/ffmpeg';
|
|
14
15
|
export * from '@discord-player/ffmpeg';
|
|
15
16
|
|
|
16
|
-
declare function isErisProxy(client: any): client is Eris.Client;
|
|
17
17
|
/**
|
|
18
18
|
* Allows Eris clients to be used with discord-player. When this method is called, discord-player creates a proxy object that intercepts certain methods and properties to make it compatible with discord-player.
|
|
19
19
|
* @param client The Eris client to be used.
|
|
@@ -21,6 +21,16 @@ declare function isErisProxy(client: any): client is Eris.Client;
|
|
|
21
21
|
*/
|
|
22
22
|
declare function createErisCompat(client: Eris.Client): Client;
|
|
23
23
|
|
|
24
|
+
/**
|
|
25
|
+
* Allows Oceanic.js clients to be used with discord-player. When this method is called, discord-player creates a proxy object that intercepts certain methods and properties to make it compatible with discord-player.
|
|
26
|
+
* @param client The Oceanic.js client to be used.
|
|
27
|
+
* @returns The Oceanic.js client with discord-player compatibility.
|
|
28
|
+
*/
|
|
29
|
+
declare function createOceanicCompat(client: Oceanic.Client): Client;
|
|
30
|
+
|
|
31
|
+
declare function isErisProxy(client: any): boolean;
|
|
32
|
+
declare function isOceanicProxy(client: any): boolean;
|
|
33
|
+
|
|
24
34
|
declare class PlayerEventsEmitter<L extends ListenerSignature<L> = DefaultListener> extends EventEmitter<L> {
|
|
25
35
|
#private;
|
|
26
36
|
requiredEvents: Array<keyof L>;
|
|
@@ -492,6 +502,20 @@ declare class Track<T = unknown> {
|
|
|
492
502
|
* @param data Track data
|
|
493
503
|
*/
|
|
494
504
|
constructor(player: Player, data: Partial<WithMetadata<RawTrackData, T>>);
|
|
505
|
+
/**
|
|
506
|
+
* Whether this track can be seeked
|
|
507
|
+
*/
|
|
508
|
+
get seekable(): boolean;
|
|
509
|
+
/**
|
|
510
|
+
* Set the onSeek event
|
|
511
|
+
* @param fn The onSeek event
|
|
512
|
+
*/
|
|
513
|
+
handleSeek(fn: (event: SeekEvent) => Awaited<void>): void;
|
|
514
|
+
/**
|
|
515
|
+
* Request seek
|
|
516
|
+
* @param event The seek event
|
|
517
|
+
*/
|
|
518
|
+
seek(event: SeekEvent): Promise<void>;
|
|
495
519
|
/**
|
|
496
520
|
* Sets audio resource for this track. This is not useful outside of the library.
|
|
497
521
|
* @param resource Audio resource
|
|
@@ -589,14 +613,36 @@ interface CreateStreamOps {
|
|
|
589
613
|
disableVolume?: boolean;
|
|
590
614
|
disableEqualizer?: boolean;
|
|
591
615
|
disableBiquad?: boolean;
|
|
616
|
+
disableCompressor?: boolean;
|
|
617
|
+
disableResampler?: boolean;
|
|
618
|
+
disableReverb?: boolean;
|
|
619
|
+
disableSeeker?: boolean;
|
|
592
620
|
eq?: EqualizerBand[];
|
|
593
621
|
biquadFilter?: BiquadFilters;
|
|
594
622
|
disableFilters?: boolean;
|
|
595
623
|
defaultFilters?: PCMFilters[];
|
|
596
624
|
volume?: number;
|
|
597
|
-
disableResampler?: boolean;
|
|
598
625
|
sampleRate?: number;
|
|
626
|
+
sampleRateFilters?: CommonResamplerFilterPreset;
|
|
599
627
|
skipFFmpeg?: boolean;
|
|
628
|
+
compressor?: {
|
|
629
|
+
threshold: number;
|
|
630
|
+
ratio: number;
|
|
631
|
+
attack: number;
|
|
632
|
+
release: number;
|
|
633
|
+
makeupGain: number;
|
|
634
|
+
kneeWidth: number;
|
|
635
|
+
};
|
|
636
|
+
reverb?: {
|
|
637
|
+
roomSize: number;
|
|
638
|
+
damping: number;
|
|
639
|
+
wetLevel: number;
|
|
640
|
+
dryLevel: number;
|
|
641
|
+
};
|
|
642
|
+
seeker?: {
|
|
643
|
+
seekTarget: number | null;
|
|
644
|
+
totalDuration: number;
|
|
645
|
+
};
|
|
600
646
|
}
|
|
601
647
|
interface VoiceEvents {
|
|
602
648
|
error: (error: AudioPlayerError) => any;
|
|
@@ -605,8 +651,11 @@ interface VoiceEvents {
|
|
|
605
651
|
finish: (resource: AudioResource<Track>) => any;
|
|
606
652
|
dsp: (filters: PCMFilters[]) => any;
|
|
607
653
|
eqBands: (filters: EqualizerBand[]) => any;
|
|
608
|
-
sampleRate: (filters:
|
|
654
|
+
sampleRate: (filters: ResampleParameters) => any;
|
|
609
655
|
biquad: (filters: BiquadFilters) => any;
|
|
656
|
+
compressor: (filters: CompressorParameters) => any;
|
|
657
|
+
reverb: (filters: ReverbParameters) => any;
|
|
658
|
+
seeker: (filters: SeekerParameters) => any;
|
|
610
659
|
volume: (volume: number) => any;
|
|
611
660
|
destroyed: () => any;
|
|
612
661
|
}
|
|
@@ -678,6 +727,9 @@ declare class StreamDispatcher extends EventEmitter<VoiceEvents> {
|
|
|
678
727
|
get filters(): _discord_player_equalizer.AudioFilter | null;
|
|
679
728
|
get biquad(): _discord_player_equalizer.BiquadStream | null;
|
|
680
729
|
get equalizer(): _discord_player_equalizer.EqualizerStream | null;
|
|
730
|
+
get compressor(): _discord_player_equalizer.CompressorTransformer | null;
|
|
731
|
+
get reverb(): _discord_player_equalizer.ReverbTransformer | null;
|
|
732
|
+
get seeker(): _discord_player_equalizer.PCMSeekerTransformer | null;
|
|
681
733
|
/**
|
|
682
734
|
* The player status
|
|
683
735
|
* @type {AudioPlayerStatus}
|
|
@@ -1061,6 +1113,11 @@ declare class GuildQueuePlayerNode<Meta = any> {
|
|
|
1061
1113
|
* @param force Whether or not to forcefully stop the playback
|
|
1062
1114
|
*/
|
|
1063
1115
|
stop(force?: boolean): boolean;
|
|
1116
|
+
/**
|
|
1117
|
+
* Request the source to seek
|
|
1118
|
+
* @param data The seek parameters
|
|
1119
|
+
*/
|
|
1120
|
+
requestSeek(data: SeekEvent): Promise<boolean | void>;
|
|
1064
1121
|
/**
|
|
1065
1122
|
* Play the given track
|
|
1066
1123
|
* @param res The track to play
|
|
@@ -1199,6 +1256,9 @@ interface GuildQueueAFiltersCache {
|
|
|
1199
1256
|
filters: PCMFilters[];
|
|
1200
1257
|
volume: number;
|
|
1201
1258
|
sampleRate: number;
|
|
1259
|
+
sampleRateFilter: StreamConfig['dispatcherConfig']['sampleRateFilters'] | null;
|
|
1260
|
+
compressor: StreamConfig['dispatcherConfig']['compressor'] | null;
|
|
1261
|
+
reverb: StreamConfig['dispatcherConfig']['reverb'] | null;
|
|
1202
1262
|
}
|
|
1203
1263
|
declare class GuildQueueAudioFilters<Meta = any> {
|
|
1204
1264
|
queue: GuildQueue<Meta>;
|
|
@@ -1227,6 +1287,18 @@ declare class GuildQueueAudioFilters<Meta = any> {
|
|
|
1227
1287
|
* Audio resampler
|
|
1228
1288
|
*/
|
|
1229
1289
|
get resampler(): _discord_player_equalizer.PCMResampler | null;
|
|
1290
|
+
/**
|
|
1291
|
+
* Compressor transformer
|
|
1292
|
+
*/
|
|
1293
|
+
get compressor(): _discord_player_equalizer.CompressorTransformer | null;
|
|
1294
|
+
/**
|
|
1295
|
+
* Reverb transformer
|
|
1296
|
+
*/
|
|
1297
|
+
get reverb(): _discord_player_equalizer.ReverbTransformer | null;
|
|
1298
|
+
/**
|
|
1299
|
+
* PCM Seeker transformer
|
|
1300
|
+
*/
|
|
1301
|
+
get seeker(): _discord_player_equalizer.PCMSeekerTransformer | null;
|
|
1230
1302
|
/**
|
|
1231
1303
|
* Replay current track in transition mode
|
|
1232
1304
|
* @param seek The duration to seek to
|
|
@@ -1506,6 +1578,9 @@ interface GuildNodeInit<Meta = any> {
|
|
|
1506
1578
|
disableFilterer: boolean;
|
|
1507
1579
|
disableBiquad: boolean;
|
|
1508
1580
|
disableResampler: boolean;
|
|
1581
|
+
disableCompressor: boolean;
|
|
1582
|
+
disableReverb: boolean;
|
|
1583
|
+
disableSeeker: boolean;
|
|
1509
1584
|
disableFallbackStream: boolean;
|
|
1510
1585
|
enableStreamInterceptor: boolean;
|
|
1511
1586
|
verifyFallbackStream: boolean;
|
|
@@ -1644,6 +1719,22 @@ declare const GuildQueueEvent: {
|
|
|
1644
1719
|
* Emitted when sample rate is updated
|
|
1645
1720
|
*/
|
|
1646
1721
|
readonly SampleRateUpdate: "sampleRateUpdate";
|
|
1722
|
+
/**
|
|
1723
|
+
* Emitted when a named sample rate filter is updated
|
|
1724
|
+
*/
|
|
1725
|
+
readonly SampleRateFilterUpdate: "sampleRateFilterUpdate";
|
|
1726
|
+
/**
|
|
1727
|
+
* Emitted when reverb filter is updated
|
|
1728
|
+
*/
|
|
1729
|
+
readonly ReverbUpdate: "reverbUpdate";
|
|
1730
|
+
/**
|
|
1731
|
+
* Emitted when compressor filter is updated
|
|
1732
|
+
*/
|
|
1733
|
+
readonly CompressorUpdate: "compressorUpdate";
|
|
1734
|
+
/**
|
|
1735
|
+
* Emitted when seek is performed
|
|
1736
|
+
*/
|
|
1737
|
+
readonly PlayerSeek: "playerSeek";
|
|
1647
1738
|
};
|
|
1648
1739
|
type GuildQueueEvent = (typeof GuildQueueEvent)[keyof typeof GuildQueueEvent];
|
|
1649
1740
|
declare enum TrackSkipReason {
|
|
@@ -1839,6 +1930,33 @@ interface GuildQueueEvents<Meta = any> {
|
|
|
1839
1930
|
* @param newRate The new sample rate
|
|
1840
1931
|
*/
|
|
1841
1932
|
[GuildQueueEvent.SampleRateUpdate]: (queue: GuildQueue<Meta>, oldRate: number, newRate: number) => unknown;
|
|
1933
|
+
/**
|
|
1934
|
+
* Emitted when a named sample rate filter is updated
|
|
1935
|
+
* @param queue The queue where this event occurred
|
|
1936
|
+
* @param oldRate The old sample rate filter
|
|
1937
|
+
* @param newRate The new sample rate filter
|
|
1938
|
+
*/
|
|
1939
|
+
[GuildQueueEvent.SampleRateFilterUpdate]: (queue: GuildQueue<Meta>, oldFilter: CommonResamplerFilterPreset | null, newFilter: CommonResamplerFilterPreset | null) => unknown;
|
|
1940
|
+
/**
|
|
1941
|
+
* Emitted when reverb filter is updated
|
|
1942
|
+
* @param queue The queue where this event occurred
|
|
1943
|
+
* @param oldFilter The old reverb filter
|
|
1944
|
+
* @param newFilter The new reverb filter
|
|
1945
|
+
*/
|
|
1946
|
+
[GuildQueueEvent.ReverbUpdate]: (queue: GuildQueue<Meta>, oldFilter: ReverbParameters | null, newFilter: ReverbParameters | null) => unknown;
|
|
1947
|
+
/**
|
|
1948
|
+
* Emitted when compressor filter is updated
|
|
1949
|
+
* @param queue The queue where this event occurred
|
|
1950
|
+
* @param oldFilter The old compressor filter
|
|
1951
|
+
* @param newFilter The new compressor filter
|
|
1952
|
+
*/
|
|
1953
|
+
[GuildQueueEvent.CompressorUpdate]: (queue: GuildQueue<Meta>, oldFilter: CompressorParameters | null, newFilter: CompressorParameters | null) => unknown;
|
|
1954
|
+
/**
|
|
1955
|
+
* Emitted when seek is performed
|
|
1956
|
+
* @param queue The queue where this event occurred
|
|
1957
|
+
* @param position The seek position
|
|
1958
|
+
*/
|
|
1959
|
+
[GuildQueueEvent.PlayerSeek]: (queue: GuildQueue<Meta>, parameters: SeekerParameters) => unknown;
|
|
1842
1960
|
}
|
|
1843
1961
|
/**
|
|
1844
1962
|
* The queue repeat mode. This can be one of:
|
|
@@ -2168,6 +2286,9 @@ interface GuildNodeCreateOptions<T = any> {
|
|
|
2168
2286
|
disableFilterer?: boolean;
|
|
2169
2287
|
disableBiquad?: boolean;
|
|
2170
2288
|
disableResampler?: boolean;
|
|
2289
|
+
disableCompressor?: boolean;
|
|
2290
|
+
disableSeeker?: boolean;
|
|
2291
|
+
disableReverb?: boolean;
|
|
2171
2292
|
disableFallbackStream?: boolean;
|
|
2172
2293
|
enableStreamInterceptor?: boolean;
|
|
2173
2294
|
verifyFallbackStream?: boolean;
|
|
@@ -3440,4 +3561,4 @@ declare const DependencyReportGenerator: {
|
|
|
3440
3561
|
|
|
3441
3562
|
declare const version: string;
|
|
3442
3563
|
|
|
3443
|
-
export { AFilterGraph, AsyncQueue, type AsyncQueueAcquisitionOptions, AsyncQueueEntry, type AsyncQueueExceptionHandler, AudioFilters, BaseExtractor, Context, type ContextReceiver, type CreateStreamOps, type DependenciesReport, DependencyReportGenerator, DiscordPlayerQueryResultCache, type Encodable, EqualizerConfigurationPreset, ExtractorExecutionContext, type ExtractorExecutionEvents, type ExtractorExecutionFN, type ExtractorExecutionResult, type ExtractorInfo, type ExtractorResolvable, type ExtractorSearchContext, type ExtractorSession, type ExtractorStreamable, FFMPEG_ARGS_PIPED, FFMPEG_ARGS_STRING, FFMPEG_SRATE_REGEX, FFmpegFilterer, type FFmpegReport, type FFmpegStreamOptions, type FilterGraph, type FiltersName, type GuildNodeCreateOptions, type GuildNodeInit, GuildNodeManager, GuildQueue, type GuildQueueAFiltersCache, GuildQueueAudioFilters, GuildQueueEvent, type GuildQueueEvents, GuildQueueHistory, GuildQueuePlayerNode, GuildQueueStatistics, type GuildQueueStatisticsMetadata, type GuildQueueTimeline, InterceptedStream, type LrcGetParams, type LrcGetResult, LrcLib, type LrcSearchParams, type LrcSearchResult, type MaybeNull, type MetadataDispatch, type NextFunction, type NodeResolvable, type OnAfterCreateStreamHandler, type OnBeforeCreateStreamHandler, type OnInterceptedStreamHandler, type PackageJSON, type PlayOptions, Player, PlayerEvent, type PlayerEvents, PlayerEventsEmitter, type PlayerInitOptions, type PlayerNodeInitializationResult, type PlayerNodeInitializerOptions, type PlayerProgressbarOptions, type PlayerSearchResult, PlayerStreamInterceptor, type PlayerStreamInterceptorOptions, type PlayerTimestamp, type PlayerTriggeredReason, Playlist, type PlaylistInitData, type PlaylistJSON, type PostProcessedResult, QueryCache, type QueryCacheOptions, type QueryCacheProvider, type QueryCacheResolverContext, type QueryExtractorSearch, QueryResolver, QueryType, type QueueFilters, QueueRepeatMode, type RawTrackData, type RequestEntity, type ResolvedQuery, type ResourcePlayOptions, type Runtime, type RuntimeType, type SearchOptions, type SearchQueryType, SearchResult, type SearchResultData, SequentialBucket, type SerializedPlaylist, type SerializedTrack, SerializedType, type SetterFN$1 as SetterFN, type ShouldInterceptFunction, type SkipOptions, type StreamConfig, StreamDispatcher, type TimeData, type TimelineDispatcherOptions, Track, type TrackJSON, type TrackLike, type TrackResolvable, TrackSkipReason, type TrackSource, TypeUtil, Util, VALIDATE_QUEUE_CAP, type VoiceConnectConfig, type VoiceEvents, type VoiceStateHandler, VoiceUtils, type WithMetadata, createContext, createErisCompat, createFFmpegStream, decode, deserialize, encode, isErisProxy, onAfterCreateStream, onBeforeCreateStream, serialize, tryIntoThumbnailString, useContext, useHistory, useMainPlayer, useMetadata, usePlayer, useQueue, useTimeline, useVolume, version };
|
|
3564
|
+
export { AFilterGraph, AsyncQueue, type AsyncQueueAcquisitionOptions, AsyncQueueEntry, type AsyncQueueExceptionHandler, AudioFilters, BaseExtractor, Context, type ContextReceiver, type CreateStreamOps, type DependenciesReport, DependencyReportGenerator, DiscordPlayerQueryResultCache, type Encodable, EqualizerConfigurationPreset, ExtractorExecutionContext, type ExtractorExecutionEvents, type ExtractorExecutionFN, type ExtractorExecutionResult, type ExtractorInfo, type ExtractorResolvable, type ExtractorSearchContext, type ExtractorSession, type ExtractorStreamable, FFMPEG_ARGS_PIPED, FFMPEG_ARGS_STRING, FFMPEG_SRATE_REGEX, FFmpegFilterer, type FFmpegReport, type FFmpegStreamOptions, type FilterGraph, type FiltersName, type GuildNodeCreateOptions, type GuildNodeInit, GuildNodeManager, GuildQueue, type GuildQueueAFiltersCache, GuildQueueAudioFilters, GuildQueueEvent, type GuildQueueEvents, GuildQueueHistory, GuildQueuePlayerNode, GuildQueueStatistics, type GuildQueueStatisticsMetadata, type GuildQueueTimeline, InterceptedStream, type LrcGetParams, type LrcGetResult, LrcLib, type LrcSearchParams, type LrcSearchResult, type MaybeNull, type MetadataDispatch, type NextFunction, type NodeResolvable, type OnAfterCreateStreamHandler, type OnBeforeCreateStreamHandler, type OnInterceptedStreamHandler, type PackageJSON, type PlayOptions, Player, PlayerEvent, type PlayerEvents, PlayerEventsEmitter, type PlayerInitOptions, type PlayerNodeInitializationResult, type PlayerNodeInitializerOptions, type PlayerProgressbarOptions, type PlayerSearchResult, PlayerStreamInterceptor, type PlayerStreamInterceptorOptions, type PlayerTimestamp, type PlayerTriggeredReason, Playlist, type PlaylistInitData, type PlaylistJSON, type PostProcessedResult, QueryCache, type QueryCacheOptions, type QueryCacheProvider, type QueryCacheResolverContext, type QueryExtractorSearch, QueryResolver, QueryType, type QueueFilters, QueueRepeatMode, type RawTrackData, type RequestEntity, type ResolvedQuery, type ResourcePlayOptions, type Runtime, type RuntimeType, type SearchOptions, type SearchQueryType, SearchResult, type SearchResultData, SequentialBucket, type SerializedPlaylist, type SerializedTrack, SerializedType, type SetterFN$1 as SetterFN, type ShouldInterceptFunction, type SkipOptions, type StreamConfig, StreamDispatcher, type TimeData, type TimelineDispatcherOptions, Track, type TrackJSON, type TrackLike, type TrackResolvable, TrackSkipReason, type TrackSource, TypeUtil, Util, VALIDATE_QUEUE_CAP, type VoiceConnectConfig, type VoiceEvents, type VoiceStateHandler, VoiceUtils, type WithMetadata, createContext, createErisCompat, createFFmpegStream, createOceanicCompat, decode, deserialize, encode, isErisProxy, isOceanicProxy, onAfterCreateStream, onBeforeCreateStream, serialize, tryIntoThumbnailString, useContext, useHistory, useMainPlayer, useMetadata, usePlayer, useQueue, useTimeline, useVolume, version };
|