summaryrefslogtreecommitdiffstats
path: root/plugins/audio/audio-api.c
AgeCommit message (Collapse)AuthorFilesLines
2016-05-23Improve the Audio ALSA backendManuel Bachmann1-21/+49
Guard the ALSA backend against some undefined values, error codes, and remove a memory leak. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-05-18improves the build systemJosé Bollo1-1/+1
Change-Id: Idad84e88cd8c21d111ce7ed44340f6d2b0fccb37 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-05-17improves plugin interfaceJosé Bollo1-6/+8
This commit improves the names and the organisation of the plugin interface for the developpers. Change-Id: Iaf191efbf8fd5d248884304b648258f0770ec5f5 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-05-17provides developper filesJosé Bollo1-2/+2
Change-Id: I0e41a0db778c69b5f5ce71115d495b2bb8b4cffe Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-05-13cleaning copyrightsJosé Bollo1-1/+1
Change-Id: I4ff7349b1a87f92a7d9f378c715054061f06df57 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-05-11Update Radio plugin, Media pluginManuel Bachmann1-8/+4
Radio and Media plugins are now ported to the new API and build again. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-05-11Update Audio plugin, re-enable ALSA/Pulse linkingManuel Bachmann1-36/+51
Audio plugin is now ported to new API and builds again. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-04-18changing the license to apache 2José Bollo1-10/+9
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-04-05Audio plugin: re-enable PulseAudio backend buildManuel Bachmann1-0/+3
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-04-05Audio plugin: adapt to new API, re-enable buildManuel Bachmann1-59/+62
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-02-23Fix horrendously wrong Volume check in Audio pluginManuel Bachmann1-1/+1
Volume bound check was always false. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-02-17Audio plugin: choose between Pulse/ALSA at runtimeManuel Bachmann1-3/+11
If the AFB_AUDIO_OUTPUT environment variable is defined to "Pulse/Alsa", it will try to initialize the given backend (still falling back to Alsa for now). Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-11Audio Plugin: add PulseAudio supportManuel Bachmann1-16/+97
If PulseAudio development libraries are present, Audio plugin will now support it. It may still fall back to ALSA if a PulseAudio server is not found at runtime. PulseAudio backend supports multiple clients using one audio adapter. (+ various fixes and style improvements) Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-06Fix Audio/Radio reinitialization issueManuel Bachmann1-1/+2
Audio and Radio plugins init() functions were re-creating a new client context each time, but it is actually unwanted as afb-radio <TokenRefresh> widgets uses this function to initialize AND refresh the context. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-29Switch to unique token modelFulup Ar Foll1-2/+2
Token/Session Plugin is now able to issue a globally-valid token (re-useable with all Plugins, so that an application using multiple plugins is not forced to manage multiple tokens anymore). Adapt Audio & Radio Plugins to this model (init functions do not create a token anymore, check for a prior existing one). Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh> Author: Fulup Ar Foll <fulup@iot.bzh> Author: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-28Fix Audio plugin loading, mute on Porter/KoelschManuel Bachmann1-2/+1
Audio plugin was crashing due to new client context model misuse. Muting/demuting sound did fail on Porter/Koelsch boards, because their audio cards do not obey standards found on desktop systems. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-23Add plugin handle into request, pass it to free callbackManuel Bachmann1-1/+1
We need the global handle in requests, and in the free function. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-22New Session Model [compile but not tested]Fulup Ar Foll1-23/+10
2015-12-22Audio API: manage multiple-channel volumeManuel Bachmann1-10/+35
You can now set the volume for multiple channels independantly by using the "value=<1>,<2>..." syntax. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-21Switch to a plugin modelManuel Bachmann1-1/+1
Each API now compiles to a ".so" file, which gets searched for in the "${libdir}/afb" directory at startup. We can now load an arbitrary number of plugins (> 10). Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-21Untie Radio and Audio APIsManuel Bachmann1-38/+72
Radio and Audio API functions do not cross-call themselves directly anymore ; this is necessary to have independent plugin binaries (.so) in the near future. (PS : audio buffer securization is WIP) Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-18Fix bugs in Radio sequence, parameters, add ping/refreshManuel Bachmann1-3/+10
Fixed the following : - in some cases, powering off a playing radio would block ; - Radio API "mode" should be "AM/FM", not "true/false". Radio and Audio APIs now have dedicated functions to ping status and refresh a session token. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-17Final modifications for Radio-Audio API communicationManuel Bachmann1-32/+32
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-17Fix Audio API runtimeManuel Bachmann1-1/+1
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-17Finalize Audio pluginManuel Bachmann1-7/+119
Signed-off-by: Manuel Bachmann <mbc@iot.bzh>
2015-12-16Initial Audio pluginManuel Bachmann1-18/+50
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-16New tree organization, update CMake req. to 2.8.8.Manuel Bachmann1-0/+51
Use CMake-2.8.8-specific feature to allow building the daemon from various source directories. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>