aboutsummaryrefslogtreecommitdiff
path: root/src/voice/streamer.rs
Commit message (Collapse)AuthorAgeFilesLines
* Fix ffmpeg_optioned doctestZeyla Hellyer2018-07-091-0/+2
|
* Add voice::streamer::ffmpeg_optionedZeyla Hellyer2018-07-091-3/+38
| | | | | | Add a method for specifying custom ffmpeg arguments. Closes #266.
* Monomorphize all functionsZeyla Hellyer2018-07-041-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit monomorphizes all functions, turning functions like: ```rust fn foo<T: Into<Bar>>(baz: T) { baz = baz.into(); // function here } ``` Into functions like: ```rust fn foo<T: Into<Bar>>(baz: T) { _foo(baz.into()) } fn _foo(baz: Bar) { // function here } ``` This avoids binary bloat and improves build times, by reducing the amount of code duplication.
* Remove extraneous spaces at the end of linesZeyla Hellyer2018-06-171-9/+9
|
* Fix voice hang on `.stop()`Kyle Simpson2018-04-251-1/+1
| | | | Turns out `wait` was a little *too* cooperative. Holdover until we change to real ffmpeg bindings.
* Refactor imports/exports to use nested groups and better formattingacdenisSK2018-03-291-6/+23
|
* Change the way ids and some enums are made (#295)Leah2018-03-231-2/+2
| | | | | This makes them easier to be found by tools like rls. Also update struct inits to use the shorthand version for `x: x`.
* Backport parts of 7d162b9Kyle Simpson2018-03-051-1/+6
| | | | | | | | | | | | | | | | | * Backport parts of 7d162b9. * Silent frame fixes. * Read-only playback position. * Opus Softclip for audio mixing. * Documentation for Audio structs. Not included (for now): * Bitrate control * Gutting/rework of Voice OpCodes, Heartbeats * Opus stream mixing * Minor adjustments due to manual edits.
* Drop implementation for ffmpeg containerKyle Simpson2018-02-201-0/+8
|
* Reduce number of clones in the libraryZeyla Hellyer2018-01-271-1/+1
|
* Re-order use statements alphabeticallyZeyla Hellyer2017-11-111-4/+3
|
* Apply rustfmtZeyla Hellyer2017-09-181-14/+10
|
* Prevent malformed opus data from crashing the bot process (#149)Maiddog2017-08-271-0/+5
|
* Add ability to play DCA and Opus files. (#148)Maiddog2017-08-271-15/+105
|
* Revamp `RwLock` usage in the libacdenisSK2017-08-241-8/+6
| | | | Also not quite sure if they goofed rustfmt or something, but its changes it did were a bit bizarre.
* Apply rustfmtZeyla Hellyer2017-08-181-6/+8
|
* Change the config a bit, and a few nitpicksacdenisSK2017-07-271-5/+3
|
* rustfmtacdenisSK2017-07-271-34/+24
|
* Restructure modulesZeyla Hellyer2017-05-221-0/+152
Modules are now separated into a fashion where the library can be used for most use cases, without needing to compile the rest. The core of serenity, with no features enabled, contains only the struct (model) definitions, constants, and prelude. Models do not have most functions compiled in, as that is separated into the `model` feature. The `client` module has been split into 3 modules: `client`, `gateway`, and `http`. `http` contains functions to interact with the REST API. `gateway` contains the Shard to interact with the gateway, requiring `http` for retrieving the gateway URL. `client` requires both of the other features and acts as an abstracted interface over both the gateway and REST APIs, handling the event loop. The `builder` module has been separated from `utils`, and can now be optionally compiled in. It and the `http` feature are required by the `model` feature due to a large number of methods requiring access to them. `utils` now contains a number of utilities, such as the Colour struct, the `MessageBuilder`, and mention parsing functions. Each of the original `ext` modules are still featured, with `cache` not requiring any feature to be enabled, `framework` requiring the `client`, `model`, and `utils`, and `voice` requiring `gateway`. In total the features and their requirements are: - `builder`: none - `cache`: none - `client`: `gateway`, `http` - `framework`: `client`, `model`, `utils` - `gateway`: `http` - `http`: none - `model`: `builder`, `http` - `utils`: none - `voice`: `gateway` The default features are `builder`, `cache`, `client`, `framework`, `gateway`, `model`, `http`, and `utils`. To help with forwards compatibility, modules have been re-exported from their original locations.