Comments (2)
I'm not too sure about the usefulness of making this a separate crate -- the only useful stuff to expose directly from cpal is the configuration structs, and it would make sense to expose (or abstract) those in bevy_audio
directly. Other use-cases can be handled within Kira's model, or need to use cpal directly anyway (ie. using audio inputs or additional outputs).
The question is, do we abstract cpal away from the user in an ECS-forward way, should we, and in either case, why should we do it in another crate?
To me, the "cpal
is the winit
of audio" is kind of true, but irrelevant, as using bevy_winit
has immediate benefits (ie. event handling, window management, etc.), but a bevy_cpal
would give you nothing more than being able to query for avilable configurations. This means to me that this crate would be very light, and not provide any convenience, as audio processing would need to happen off the ECS any way, and so you'd be forced to work directly with cpal
directly anyway.
For these reasons I'm going to give my thumbs down on this; audio configuration is something to consider for Bevy Audio v2, but I don't think we should spread ourselves thin over several crates, when this could easily be a (small) extra module on the main audio crate anyway. Besides, I don't think this should be part of the initial scope, as it can easily be added later without breaking changes.
from bevy.
Closing in favor of letting the audio team doing their thing. It sounds like features related to audio input won't be upstreamed in kira
for a while though. We'll just do our own thing in Nannou.
from bevy.
Related Issues (20)
- Phantom key presses on window focus change (alt+tab, etc)
- The vector obtained by multiplying the quaternion by the normalized vector may not be normalized HOT 1
- Winit panics in AppState::clear_callback HOT 1
- Add a standardized way to track simulation time for interoperability HOT 2
- Bevy Preferences API HOT 4
- There should be some kind of error for spawning a scene handle without a `SceneBundle`. HOT 3
- game_menu example took 93% of cpu HOT 6
- 9-Slices don't update when using RenderAssetUsages::RENDER_WORLD
- Lights with radius overlapping with mesh result in sharp specular cutoff HOT 1
- KHR_lights_punctual spot light range not interpeted correctly
- 2d shapes demo Annulus not found HOT 4
- Specular from area lights is disproportionately bright HOT 2
- Can't compile bevy_dylib HOT 2
- Implement `WorldQuery` and `QueryData` for `Mut` HOT 3
- bevy mobile example crashes on Android HOT 1
- `RegularPolygon` should allow `circumradius` to be 0.0 HOT 1
- updated mesh with custom pipeline is not rendered until next frame
- Enable wayland support in examples.
- The `Maximum call stack size exceeded` error will be thrown in a web worker.
- Bevy game occasionally crashes VS Code after being closed if it was launched from VS Code integrated terminal HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bevy.