Commit Graph

275 Commits

Author SHA1 Message Date
Lars Immisch
a34bdd7a02 Debugging underruns, needs cleanup 2025-12-01 22:33:30 +00:00
Lars Immisch
5a4111dd8c Small cleanup 2025-12-01 22:33:30 +00:00
Lars Immisch
2a8f2a6699 Cleanup 2025-12-01 22:33:30 +00:00
Lars Immisch
a4168d7525 The capture device does not need to be reopened; better logging/comments 2025-12-01 22:33:30 +00:00
Lars Immisch
ac97e641bc Restarting the capture device looks ok 2025-12-01 22:33:30 +00:00
Lars Immisch
caafa8ae21 Make commands optional 2025-12-01 22:33:30 +00:00
Lars Immisch
2fae2c0ed7 Experment with state machine 2025-12-01 22:33:29 +00:00
Lars Immisch
acc6f152a3 Adressing TODO in release.yml
Initial test with test.pypi.org was successful
2025-12-01 23:26:37 +01:00
Matteo Bernardini
0d6e0e7bb4 chore: use makefile for reference on building sdist and wheels 2025-12-01 23:26:37 +01:00
Matteo Bernardini
4f3c299e53 fix: drop py2 trove classifier 2025-12-01 23:26:37 +01:00
Matteo Bernardini
e78c145d9e ci: deploy on tags only 2025-12-01 23:26:37 +01:00
Matteo Bernardini
6acae81487 ci: fix permissions 2025-12-01 23:26:37 +01:00
Matteo Bernardini
5eed8adfe5 ci: install ALSA headers 2025-12-01 23:26:37 +01:00
Matteo Bernardini
e3e51cc34d ci: install uv 2025-12-01 23:26:37 +01:00
Matteo Bernardini
f6f53ce92a ci: automatically build docs 2025-12-01 23:26:37 +01:00
Matteo Bernardini
38d0882379 chore: split dependency groups 2025-12-01 23:26:37 +01:00
Matteo Bernardini
6822cffcc8 ci: remove unsupported setting 2025-12-01 23:26:37 +01:00
Matteo Bernardini
8c1e370e04 ci: auto-detect package manager to use 2025-12-01 23:26:37 +01:00
Matteo Bernardini
6d17bc92b7 ci: use legacy license definition to allow building on py3.9 2025-12-01 23:26:37 +01:00
Matteo Bernardini
3e41a9eb97 ci: enforce setuptools version 2025-12-01 23:26:37 +01:00
Matteo Bernardini
df8886dde1 ci: ensure alsa headers are installed 2025-12-01 23:26:37 +01:00
Matteo Bernardini
aac2843f73 chore: stub workflow for automatic docs deployment 2025-12-01 23:26:37 +01:00
Matteo Bernardini
7987986ee4 chore: top-level makefile for common dev tasks 2025-12-01 23:26:37 +01:00
Matteo Bernardini
ae93ddc48e ci: workflow to automate releases on tags 2025-12-01 23:26:37 +01:00
Matteo Bernardini
a48389b750 chore: make pyright happy on tests 2025-12-01 23:26:37 +01:00
Matteo Bernardini
0b8db5f46d fix: PCM constructor stubs not coherent with runtime 2025-12-01 23:26:37 +01:00
Matteo Bernardini
6b2c4c22db fix(docs): add sphinx dep, fix version retrieval 2025-12-01 23:26:37 +01:00
Matteo Bernardini
a7896ee069 fix: stub consistency to runtime 2025-12-01 23:26:37 +01:00
Matteo Bernardini
ed83b3e29b chore(deps): add mypy (for stubtest utility) 2025-12-01 23:26:37 +01:00
Matteo Bernardini
e96f550862 fix: use Final for enum constants 2025-12-01 23:26:37 +01:00
Matteo Bernardini
40f4647d8c fix: missing self in type stubs 2025-12-01 23:26:37 +01:00
Matteo Bernardini
3a8c53851d chore(deps): add pyright for type-checking 2025-12-01 23:26:37 +01:00
Matteo Bernardini
f6770e3a42 fix: add ALSAAudioError to type stubs 2025-12-01 23:26:37 +01:00
Matteo Bernardini
0ac28e9eea fix: include doc/ and examples/ in sdist 2025-12-01 23:26:37 +01:00
Matteo Bernardini
fdc5f3782e chore: modernise packaging.
- use pyproject.toml to define project metadata and setuptools-specific configuration, removing the need for a setup.py file
- move sources in conventional src/ directory
- rework stubs so that they're visible downstream. PEP-561 doesn't support top-level .pyi files, so I made a dummy package instead `alsaaudio-stubs`
2025-12-01 23:26:37 +01:00
Matteo Bernardini
6efef83429 chore: move unit tests to conventional directory 2025-12-01 23:26:37 +01:00
Matteo Bernardini
df5c2f4685 chore: move examples to dedicated directory 2025-12-01 23:26:37 +01:00
Lars Immisch
0b3f1f41c7 Prepare 0.11.0
Bump version and update changelog.
0.11.0
2024-05-30 23:15:27 +02:00
Lars Immisch
3e360b1bb7 Update MANIFEST.in for type hints 2024-05-14 20:56:51 +01:00
Lars Immisch
44ccbf839d Fix sphinx warning 2024-05-07 19:07:47 +02:00
Lars Immisch
2c2e43d3d1 Add type hints & docs 2024-05-07 19:07:47 +02:00
Lars Immisch
a142b70033 Reorder for consistency between alsapcm_methods and code
getchannels/setchannels should be together IMO
2024-05-07 19:07:47 +02:00
Lars Immisch
26ba938e04 Make commands optional 2024-04-19 18:32:38 +01:00
Lars Immisch
f5e9d52c74 Add missing attribute 2024-04-19 13:10:39 +01:00
Ville Viinikka
436c31f9fd Add nominal_bits and physical_bits info
Adds the information discussed in pull request #144
2024-03-13 10:59:11 +01:00
Ville Viinikka
eda913b203 Use correct sample bit width
snd_pcm_hw_params_get_sbits gives the number of significant bits, not
the actual number of bits stored. Change to snd_pcm_format_physical_width.

This fixes a bug where, for example on my hardware:
format = 'S32_LE'
significant bits = 24
physical bits = 32

the program will segfault because the allocated buffer is too small.
2024-02-20 18:31:00 +01:00
Lars Immisch
0aba948277 Whitespace cleanup.
I ended up using Visual Studio Code and did a global regex replace
` +\n` -> `\n` (StackOverflow)
2024-02-20 18:08:09 +01:00
Oswald Buddenhagen
9b7b767594 fix docu typo 2024-02-06 00:39:15 +01:00
Oswald Buddenhagen
db87f2ced5 document new avail() and polldescriptors_revents() PCM functions
amends 43a94b3 and 5221311.
2024-02-06 00:39:15 +01:00
Oswald Buddenhagen
f179db2d9b de-duplicate PCM.info() documentation
... and move the dumpinfo() docu.

amends 4e098da - clearly, i'm blind.
2024-02-06 00:39:15 +01:00