sample_move_d32u24_sS() converts into samples like 0x00****** but S32
format expects samples like 0x********. Therefore it will not use the
full volume range when also using sample_move_d32u24_sS() for S32.
Change-Id: I4afe9bd0c3b342975536f5f98fa4dadd2eaee02d
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
Due to inlining and enabled optimization the compiler will not create
machine instructions for the if-clauses and left shift for
sample_move_dS_s32s() and sample_move_dS_s32().
Change-Id: Idd481c62ef987cc80850341adc8d896a77e00e1b
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
Due to the optimization of the compiler this commit does not introduce any
differences in the machine instructions.
Tested with GCC version 6.2.0 on ARM64 and x86_64.
Change-Id: I2cdb003f0627e30c0593395769d4274e71af1393
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
ALSA expects right-aligned samples (0x00******) as mentioned in the
source code for SND_PCM_FORMAT_S24_LE:
Signed 24 bit Little Endian using low three bytes in 32-bit word
See http://git.alsa-project.org/?p=alsa-
lib.git;a=blob;f=include/pcm.h;h=5b0782315585de1d5ab82c9f2036b62c168f5a48;hb=HEAD#l140
Change-Id: I90b779f5f2acbe284d13ba9c8a39695b12011219
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
ALSA expects right-aligned samples (0x00******) as mentioned in the
source code for SND_PCM_FORMAT_S24_LE:
Signed 24 bit Little Endian using low three bytes in 32-bit word
See http://git.alsa-project.org/?p=alsa-
lib.git;a=blob;f=include/pcm.h;h=5b0782315585de1d5ab82c9f2036b62c168f5a48;hb=HEAD#l140
Change-Id: I2d3a90ce740a1f70631e543b8db4cc7b809cd251
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
On failure, currently the jack thread exits without notifying the jackd.
So jackd is just waiting for the signals, unaware of the failure.
With this implementation, on error threads can post an event to jackd
notifying it to to exit.
(cherry picked from adit commit c430be1e33)
Change-Id: Ib484bb1e126f6bff0db76d44e6e036f92f5d8806
Signed-off-by: Laxmi Devi <Laxmi.Devi@in.bosch.com>
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
This would be required so that the polling concept can be used to wait
on signals as well as wait for events from the other threads.
(cherry picked from adit)
Change-Id: Ic7b8d4c816d601d4b5467ec9c2519f3c547ae59f
Signed-off-by: Laxmi Devi <Laxmi.Devi@in.bosch.com>
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>