Age | Commit message (Collapse) | Author |
|
Since the variables are snd_pcm_uframes_t and snd_pcm_uframes_t is
unsigned long, using unsigned int causes problem when running on a
64-bit binary.
Also fix the branch name of googletest.
|
|
fix strncpy potential bug
|
|
|
|
fix strncpy warnings
|
|
|
|
mixer: fix index underflow when index=0
|
|
In mixer_get_ctl_by_name_and_index(), the post-fix decrement
means that the index will be decremented after the comparison, but
before the return, leading to an unsigned integer underflow.
This causes a crash on platforms with -fsanitize=integer enabled.
Fix this by avoiding decrementing index until after the return.
Change-Id: I25a17ced4185bdebd500285bd30b342b16b4ac12
|
|
meson: add attributes.h and plugin.h public headers
|
|
|
|
update NOTICE file and format license header
|
|
|
|
fix the remaining bytes bug (#209) and refactoring tinyplay
|
|
fix the zero fd closing problem
|
|
The pcm_hw_close refused to close the zero fd. Add "equal to"
condition and modify the type of fd to int to close the zero fd.
|
|
|
|
tinyalsa: Add sample pcm/mixer plugin and sample sndcardparser
|
|
|
|
|
|
|
|
force pcm_open to open device with the non-blocking flag
|
|
When a client opens a PCM device whose substreams are all occupied
without the non-blocking flag, the open function would be blocked in
the kernel until the previous opened ones are closed. This would
cause deadlock if they try to hold the same lock. Most of the ALSA
PCM drivers on embedded systems are implemented with the ALSA SOC
framework. Each PCM device has only one substream. This problem would
happen frequently. To force pcm_open to open PCM devices with
non-blocking flag is beneficial to resolve this problem. It returns
the control to clients to try again later.
The reason why we don't call pcm_open with PCM_NONBLOCK is that the
PCM_NONBLOCK also affects the read and write behaviors.
I also add a test case to test whether the pcm_open would be blocked.
|
|
Fix compatible issue and refine null parameters checking
|
|
There are some drivers assigning wrong ranges of mixer control's values.
Let ALSA drivers to check whether values are in ranges.
|
|
|
|
|
|
fix a variable name in tests
|
|
|
|
floating-point PCM support
|
|
This change also fixes overwriting the appl_ptr and avail_min when calling
the pcm_state function.
|
|
|
|
|
|
Sync AOSP: [LSC] Add LOCAL_LICENSE_KINDS to external/tinyalsa_new
|
|
https://android.googlesource.com/platform/external/tinyalsa_new/+/535e6ea3edcb6e119d465073facc3b2a338bdcb1
[LSC] Add LOCAL_LICENSE_KINDS to external/tinyalsa_new
Added SPDX-license-identifier-BSD SPDX-license-identifier-Unlicense to:
Android.bp
Bug: 68860345
Bug: 151177513
Bug: 151953481
Test: m all
Exempt-From-Owner-Approval: janitorial work
Change-Id: I21fe326f57f35b252901cf1423c4af149694fb51
|
|
fix bugs
|
|
|
|
|
|
The pcm_readi and pcm_writei also can deal with the mmap read/write.
Also mark the pcm_mmap_read/write functions as deprecated functions and
update the test case.
Add mmap playback support to tinyplay
|
|
|
|
add LICENSE file and rename modules in Android.bp
|
|
|
|
|
|
For the dynamic pcm device, it is valid to specify the backend after
opening it. However, it is invalid to call prepare on a dynamic pcm
device without connecting any backend device. We should not do
pcm_prepare in pcm_open.
See also: Issue #197
|
|
1. sync hw ptr before calculating the avail
2. return zero when reading or writing successfully
|
|
1. Align the document and the code.
2. Copy error messages to bad_pcm object for client to get more info
when opening failed.
|
|
Fix tinymix bugs and support setting negative values
|
|
|
|
|
|
|
|
|
|
|