Comments (3)
Sounds great! Yeah I was just being lazy :D I think using a time.Duration, renaming the function to NewBuffer, and rounding to the nearest frame count would be a great improvement!
Feel free to PR, or I can do it if you're busy.
from alsa.
I was looking into it and it's not entirely clear to me how the frames per buffer is specified. I looked into the ALSA docs, but their not as clear as they could be, so if you can point me to something that explains this, I'll be happy to take it on. Otherwise I'll bow out in your favour.
from alsa.
If I understand it right, a frame in ALSA means a single sample for every channel. So to make a buffer that will (hopefully) fit a time, you take your negotated rate (hz), sample size (bytes), and channel count, and multiply them all together. device.BytesPerFrame() is a little helper I made for that.
from alsa.
Related Issues (11)
- Color import HOT 1
- Continuous recording? HOT 1
- Support arm64 HOT 1
- Open() blocking forever HOT 2
- Q: "beep" example is not working
- beep example: bad file descriptor HOT 1
- Write ioctl is not guaranteed to write requested number of frames HOT 1
- Examples are broken HOT 1
- Some ioctls are invalid on arm HOT 4
- Minor cleanup in swparams.go
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 alsa.