Module songbird::driver[][src]

Runner for a voice connection.

Songbird's driver is a mixed-sync system, using:

  • Asynchronous connection management, event-handling, and gateway integration.
  • Synchronous audio mixing, packet generation, and encoding.

This splits up work according to its IO/compute bound nature, preventing packet generation from being slowed down past its deadline, or from affecting other asynchronous tasks your bot must handle.

Structs

Config

Configuration for the inner Driver.

Connect

Future for a call to Driver::connect.

Driver

The control object for a Discord voice connection, handling connection, mixing, encoding, en/decryption, and event generation.

Enums

CryptoMode

Variants of the XSalsa20Poly1305 encryption scheme.

DecodeMode

Decode behaviour for received RTP packets within the driver.