~aleteoryx/muditaos

ref: fbb820c284d8aad7dcbc343def8aeea9a151d33d muditaos/module-audio d---------
6fe90d4b — DariuszSabala 4 years ago
[BH-461] Move TPLIB minimp3 to separate dir

Moved minimp3 to third-party directory,
added our CMakeLists.txt with interface
library defined and upgraded include paths
93c4675d — Alek Rudnik 4 years ago
[EGD-6701] System time usage fixes

Fixed all calls to stdlib time.
Removed all redundant calls to Timestamp treated as time source.
ece6a51e — Marcin Smoczyński 4 years ago
[EGD-6800] Enable voice transcoding

Add voice transcoding during phone call with two basic transforms:
 - sample rate downscaling by a factor of 2 with a decimator
 - sample rate upscaling by a factor of 2 with an interpolator (no
low-pass filter)

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
f6dd452c — Marcin Smoczyński 4 years ago
[EGD-6799] Cleanup audio device interface

This refactoring removes invalid interface dependencies of the original
AudioDevice implementation:
 - move things characteristic to RT1051AudioCodec to audio::codec
 - remove dead methods
 - make start/stop optional and codec configuration independent
 - add more convenient way to get supported formats

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
a3e512a8 — Marcin Smoczyński 4 years ago
[EGD-6674] Change negotiation of audio block size

Replace faulty implementation which produced ambiguous results with one
which is suited for both phone calls and music playback requirements,
including A2DP and HSP Bluetooth profiles.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
00a9d5d0 — Jakub Pyszczak 4 years ago
[EGD-6438] Loudspeaker headset fix

Fixed enabling loudspeaker during phone call with headphones plugged.
6c52780f — Marcin Smoczyński 4 years ago
[EGD-6496] Add basic sample rate transcoding

Add basic interpolator and decimator to change sample rates by a factor
of a prime number. Interpolator repeats samples forming a stair signal,
while decimator drops excessive samples.

Templates have been used to utilize fast integer operations contrary to
byte-by-byte operations for number of bit width vs channel count
combinations.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
a2a1c532 — Marcin Smoczyński 5 years ago
[EGD-6612] Remove debug flags in audio

Debug flags introduced accidentally with EGD-6497.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
9cf397d1 — Marcin Smoczyński 5 years ago
[EGD-6497] Add audio transcoding framework

Add a mechanism to apply a data transform on the stream's input. An
example mono to stereo transform is provided.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
49c132c6 — Jakub Pyszczak 5 years ago
[EGD-6513] Volume control feedback

Added volume control feedback during music playback over Bluetooth.
Changed volume buttons handler logic in service audio to use actions
instead of messages.
8f8a1b3c — Maciej Gibowicz 5 years ago
[EGD-6499] Fix audio initialization

Now the peripherals and the audio clocks will be turned on
only when the user is using the audio, which will save energy.
fd935f41 — Alek Rudnik 5 years ago
[EGD-6093] Audio settings API

Refactored Audio settings API.
Moved phone modes logic from serivce audio to service clients level.
Removed redundant API.
Seprated API for vibration and sound enable/disable.
Fixed issues with vibrations logic.
332aed93 — Marcin Smoczyński 5 years ago
[EGD-6507] Enable per-module testing

Add per-module:
 - test build
 - test execution
 - coverage reporting (xml/html).

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
8b21df13 — Marcin Smoczyński 5 years ago
[EGD-5742] Add audio format checking

Check if decoder's file format is supported by the sink audio device
before playing the sound. Add list of supported formats to each of audio
devices.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
95ce7181 — Jakub Pyszczak 5 years ago
[EGD-6281] Fix microphone mute

Fix microphone mute during the phone call.
Previously phone would unmute on:
- connecting/disconnecting a jack
- turning loudspeaker on/off
- switching to the bt device.
3408fafa — Przemyslaw Brudny 5 years ago
[EGD-6066] Removed Message default constructor

Forced each message to have declared type as parts of Bus logic
depends on it and previously we encountered undefined
behaviours. Added tests and messages validators.
77178548 — Marcin Smoczyński 5 years ago
[EGD-5260] Mono to stereo software conversion

Add workaround for Bluetooth audio to *always* convert mono PCM to
stereo.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
b890bcd6 — Marcin Smoczyński 5 years ago
[EGD-5260] Add A2DP playback to audio

Add basic playback capability using Bluetooth A2DP profile.
Only stereo/44100/16bit files are supported at the moment

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
863d805d — Jakub Pyszczak 5 years ago
[EGD-6304] Popup overall fixes

Removed duplicated mode observer from application
that was introduced during the rebase in this commit
1860bf210f5f128ee8cf780c0cb332abc918dbd1.
Fixed mute logic according to the design.
Fixed switching back to the meditation window.
cf75cfc0 — Marcin Smoczyński 5 years ago
[EGD-5973] Reduce audio stack usage

Verify stack usage of:
 - ServiceAudio
 - application music player
 - decoder worker
Change if possible to a realistic value keeping a 30% margin.
Stack usage reduction is limited due to an extensive stack usage of
every call to the filesystem, which uses around 2 kB of stack.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
Next