~aleteoryx/muditaos

ref: fe79d2d934e34e36af20d6875e74a185bedffc49 muditaos/module-audio/Audio d---------
18f9227f — Hubert Chrzaniuk 5 years ago
[EGD-5716] Change sound priorities

Sound API has been extended with new playback types.
bda18b5b — Marcin Smoczyński 5 years ago
[EGD-5706] Refactor creating audio device

Audio devices are created in the audio subsystem and it is not possible
to send a device to bt service upon creation.

Introduce hookable audio device factory to allow sharing bluetooth
audio device. Move audio devices from bsp to audio allowing removal of
unwanted bsp -> audio dependency.

Remove Bluetooth proxy device which turned out to be a dead end.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
f7a6b720 — Hubert Chrzaniuk 5 years ago
[EGD-4342] Remove audio profile db callback

This callback is not needed.
42879b1c — Hubert Chrzaniuk 5 years ago
[EGD-5580] Fix broken mute during call

The mute button during a call did not cause
any effect.
f1fc9df1 — Marcin Smoczyński 5 years ago
[EGD-4977] Reduce audio lag during voice call

Reduce audio delay by reducing audio buffer size in router operation.
Audio streams are now created directly in the operations, not in the
audio service, which gives more flexibility.

Audio Buffer size is calculated based on endpoints (source, sink) and
operation capabilities. This commit also enables allocations in a
non-cacheable region of OCRAM for endpoints that use DMA for data
transport.

Introduce power-of-two operations that use built-in functions and
possibly dedicated hardware instructions of an MCU. These operations
are required by the audio stream buffer size calculation algorithm.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
e9de840a — Marcin Smoczyński 5 years ago
[EGD-5290] Fix on audio on voice call

Due to an error in the stream's block reservation, when the stream was
full, SAI was trying to read data to an unitialized data span randomly
disabling audio channel.

Fix the problem by overwriting data after the peek position, always
returning valid data span.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
d14e40d3 — Radoslaw Wicik 5 years ago
[EGD-4831] Add license headers to c, h and sql files

Add license headers to `h`, `c` and `sql` files as this files haven't
been checked previously, script now to automatically updates current
year in existing licenses.
92a8a78e — Marcin Smoczyński 5 years ago
Merge branch 'master' into stable
fc5ab3a7 — Hubert Chrzaniuk 5 years ago
[EGD-5325] Remove using namespace directives from headers

"Using namespace" directive should not be added in headers
because this practice pollutes source files.
7d7003d6 — Marcin Smoczyński 5 years ago
Merge branch 'master' into stable
40bf381e — Marcin Smoczyński 5 years ago
[EGD-5086] Fix voice not starting when calling

Due to a race condition between source and sink voice is not always
starting when calling. Introduce audio stream connections to avoid
race condition and improve handling of audio start and stop operations.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
1bdc8295 — Hubert Chrzaniuk 5 years ago
[EGD-5086] Change audio device switching logic

Upon hardware change event, audio profile had been switched multiple
times forcing redundant initializations of all related objects. Logic
has been optimized and prepared for further refactor. Now upon hardware
event objects are initialized exactly once.
10e46cbb — Hubert Chrzaniuk 5 years ago
[EGD-5061] Fix lack of audio during call

Audio might have not work if audio streams
were reused. This was fixed by introducing proper
cleaning procedures.
bb6989c2 — Hubert Chrzaniuk 5 years ago
[EGD-4978] Add Bluetooth virtual audio device

Bluetooth audio device requires different handling than other
audio devices. The commit adds proxy device that does not
handle requests itself but instead sends requests too Bluetooth
service.
6b36d355 — Hubert Chrzaniuk 5 years ago
[EGD-5009] Change messy callback logic in audio module

Refactor audio module to use only one callback for communication
with audio service. This also simplifies the logic and removes
necessity to define defaults for audio values in multiple places.
871b250d — Marcin Smoczyński 5 years ago
[EGD-4534] Change audio data path synchronization

Refactor audio data path to fix several synchronization issues and
excessive copy operations on large memory blocks. Introduce
audio::Stream data structure to allow connecting audio source and sink
with a zero-copy capability.

Introduce system mechanisms:
 - critical section guard lock needed for stream synchronization
 - non-cacheable memory allocator to allocate memory for DMA safe
   buffers

Update the Googletest CMake template to match the capabilities of the
Catch2 template.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
Signed-off-by: Hubert Chrzaniuk <hubert.chrzaniuk@mudita.com>
f6938452 — Hubert Chrzaniuk 5 years ago
[EGD-4332][EGD-4482] Fix playback of mono sound in headphones (#1080)

Addressed problem - when playing files containing only one
audio channel the sound could be heard in only one speaker.
50f28e8f — Bartosz Cichocki 5 years ago
[EGD-4270] updated test API, added sending message case in test harness (#1042)

[EGD-4270] build fix for GCC 10

Co-authored-by: SP2FET <bartosz.cichocki@mudita.com>
70126e07 — jimmorrisson 5 years ago
[EGD-4439] New filesystem handling - module audio. (#1037)

[EGD-4439] Taglib revision update
8d9719e8 — Szymon Mroczek 5 years ago
[EGD-3510] audio codec configuration for headset microphone (#1004)

[EGD-3510] Audio stereo outputs fixed. Microphone bias handling for headset. Headset microphone gain adjusted.

Next