Version 0.0.1a5
Released December 19th, 2025
Added
Resultreturned from allAudioPlayermethods, making it easy to implement further functionality.- New
is_playingproperty inAudioPlayer. - Further global type checking to ensure proper data is being passed.
- New
VoiceClient.movemethod to move channels easily. FileAudioSourceraisesFileNotFoundErrorif the provided filepath doesn't exist.
Changed
- Refactored file locations for further readability and organization.
Fixed
- Made
VoiceGatewayandVoiceServerconnection methods idempotent, just in case they are re-called. - Added guards on many methods to ensure object states are consistent and compliant.
FFmpegencoder/decoder is now localized to eachVoiceConnection/AudioPlayer, allowing multiple voice connections with playback.
Removed
- Convenience methods under
VoiceConnectionlikeplay,pause, etc. in favor of clarity withplayeraccess.
Version 0.0.1a4
Released December 19th, 2025
Added
- New
AudioSources:BufferAudioSource: Allowsbytes-like objects to be encoded directly.URLAudioSource: Allows the encoding of audio hosted at an endpoint on the web.
__slots__to all objects for memory efficiency.- Implemented Discord's Audio/Video End-to-End Encryption protocol (
DAVE) opcodes and miscelleanous logic to prepare for transition - required byMarch 1st, 2026. - Support for
aead_aes256_gcm_rtpsizeencryption - automatically searches for best encryption mode supported.
Changed
AudioSourceimplementations no longer requirereadorstreammethods.- Subsequently,
FileAudioSourceno longer requiresaiofilesas a dependency; removed from project. - Network objects (
VoiceServer,VoiceGateway) moved tonetworkingsubfolder.
Fixed
FileAudioSourceusing incorrect, publicfilepathfor internal checks rather than private attribute.VoiceGatewayinternal gateway latency calculation not returning due to reference bug.
Removed
VoiceConnectionadd_queue_file,remove_queue_file, andplay_fileremoved in favor of genericadd_queue,remove_queue, andplay.
Version 0.0.1a3
Released December 17th, 2025
Added
AudioPlayer.shuffle()method to shuffle the queue, as well as a correspondingVoiceConnection.shuffle()for convenience.
Changes
- Clamped dependency versions for compatibility (Thanks @vicky5124 for reporting this issue).
- Switched audio dependency from
opuslibto be fullyFFmpeg-dependent; minor lag improvement (Thanks @vicky5124 for recommending). - Refactored internal client cache for slightly better lookup performance and readability.
Fixed
VoiceReconnectEventconstructor docstring return type fixed fromVoicePopulatedEvent.MemberJoinVoiceEvent,MemberLeaveVoiceEvent,MemberLeaveVoiceEvent,MemberDeafEvent, andMemberMuteEventnow dispatch regardless if the bot is in the channel with them.
Removed
VoiceActiveEvent,VoiceInactiveEvent,VoicePopulatedEventandVoiceEmptyEventas they were redundant of logic from other events.
Version 0.0.1a2
Released December 17th, 2025
Added
VoiceConnection.playmethod for completeness.- New
AudioBeginEventandAudioEndEvent. - New audio queue system:
Player:previous,nextto scan forward and backward in the queue/history.add_queueto add sources to the queue.remove_queue,clear_queueto remove/clear sources from the queue.queueproperty to view the queue,historyproperty to view history.
VoiceConnection(for convenience):- Corresponding
previous,next. - Corresponding
add_queueand additionaladd_queue_file. - Corresponding
remove_queue,clear_queueand additionalremove_queue_file.
- Corresponding
Fixed
- Made all object attributes private, with public attributes made as properties.
Version 0.0.1a1
Released December 16th, 2025
Original alpha release.