Age | Commit message (Collapse) | Author | Files | Lines |
|
Using Mediaplayer UI it is possible to send multiple play events
before the Pause button is displayed. This seems to cause unexpected
side effects on playback.
Bug-AGL: SPEC-3197
Change-Id: Iad6b0998e8bcc1331cb78d8f45081d0e6185913a
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Allow mode event to switch between AVRCP and local media.
Bug-AGL: SPEC-3047
Change-Id: Id7f697b8608695fd56a57a4f41eafc4c7c31a26d
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Fixes:
- Clear the corked state flag on stop and track changes to keep it in
sync.
- Add changing of pipeline state in response to the GstBus
GST_MESSAGE_REQUEST_STATE message, this is required to have the
second request to switch back to PLAYING state be sent, and hence
properly keeping track of corked state.
Bug-AGL: SPEC-3061, SPEC-3047
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I7a7727e1671b82aaafe816d30481bef720f19037
|
|
Add Previous/Next AVRCP controls to respective events from
signal-composer.
Bug-AGL: SPEC-3047
Change-Id: I3f8d2576508ce03d667273f273202726aea50ceb
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Add hopefully temporary workarounds for current Wireplumber policy
implementation that requires taking gstreamer state to READY or STOPPED
to trigger policy.
Bug-AGL: SPEC-3061
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I9ade3615945b6821ce78c22ffea292b16a4fb93c
|
|
Check if PipeWire is corking the audio stream and if so don't
process signal-composer events till uncorked.
Bug-AGL: SPEC-3023
Change-Id: Ib4d4de1f1627426d69e3f19501d38ff2d3c88a62
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Currently the steering wheel events from the signal-composer binding
aren't handled for AVRCP. Put in AFB_WARNINGs for when events are
triggered.
Bug-AGL: SPEC-3047
Change-Id: I755ef4e89065560bea08b9d0a874746914fe9a14
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Add initial basic support for next/previous events from signal composer,
mapping them to track forward/back. More work will be required to handle
the issues around both mediaplayer and radio both being running and
differentiating which should handle the events.
Bug-AGL: SPEC-3047
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I789181e1921aa55f4a9ec84deffe3f27560289c3
|
|
Report metadata on initial metadata event subsciption, and also
when the playlist changes.
Bug-AGL: SPEC-2774
Change-Id: Ieb68d6d5e53af889ad66c52887023b8c94c40080
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
To reduce blocking api calls, and to avoid race conditions
interactions beween UI and binding on startup, change to
parsing album art from GST_MESSAGE_TAG event.
Bug-AGL: SPEC-2774
Change-Id: I67463824a6966f175bf2c3c423d75d0edd183c4d
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
For allowing of the use of other glib functionality switch to GMutex
wrapper over using pthread mutexes directly.
Bug-AGL: SPEC-2774
Change-Id: I85fa6260e2e2c5b38bf4d94477b1ef1567d91ab6
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
First argument to the gst_util_set_object_arg call should be cast via G_OBJECT macro
afm-mediaplayer-binding.c: In function ‘gstreamer_init’:
afm-mediaplayer-binding.c:883:30: warning: passing argument 1 of ‘gst_util_set_object_arg’ from incompatible pointer type [-Wincompatible-pointer-types]
gst_util_set_object_arg(data.audio_sink, "stream-properties", "p,media.role=Multimedia");
Bug-AGL: SPEC-2774
Change-Id: I5c93e7e6621f2db229a2a154f0c9d09853c78981
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
This native pipewire sink has better performance and allows
1) properly selecting the role of the app
2) proper handling of the situation where another app with
higher priority has taken over the audio stream
Bug-AGL: SPEC-2634
Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
Change-Id: Ib40300ee6a74804c8491451267041d0554215d05
|
|
GStreamer alsasink will redirect the stream to pipewire.
Bug-AGL: SPEC-2473
Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
Change-Id: I696b338e99d28f97f1e0fe3c466e711d2171d1ad
|
|
JSON response that was passed to onevent callback was being
resent in an event without refcount being increased.
Resulting assertion failure:
json_object_put: Assertion `jso->_ref_count > 0' failed.
Bug-AGL: SPEC-2488
Change-Id: I40cf36f0e7e96c5974bd6b6c49b5044bbe199b77
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
When no volume field is passed it caused a null pointer dereference
Bug-AGL: SPEC-2368
Change-Id: Ia11ae28b38455a597d1b31a044a711e21928b0cc
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Calling g_object_unref on gchar* is incorrect since it isn't an
gobject, and thus g_free should be used instead.
Change-Id: I5a982a4f083e2b7de340deaa26be99fb6caf63de
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Allow client to request between playlist and track looping
Bug-AGL: SPEC-2181
Change-Id: I05097426e827a891e14811dad1763944d3f2fd89
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
A2DP connection and events with no local media playlist will result
in segfaults.
Change-Id: I8034d5ae88d2f81ffd74263800c32ded0645d4d8
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
When streams are paused or stopped the mediaplayer role needs to be
released to allow playback from other applications (i.e. radio)
Change-Id: Idd324d0695bfaa35401f05a95380d56df848009e
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
1) local media wasn't stopping playback when a2dp transport was connected
2) when disconnecting a2dp the local media metadata wasn't being displayed
3) pausing wasn't sending an event to the UI subscriber
Bug-AGL: SPEC-1630
Change-Id: I67eee3af44169c8138d03aff591200884f1dd6ae
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Bug-AGL: SPEC-1630
Change-Id: I38fc2c131b3d56a4b5a0a87f3bcd0eb27af5bb66
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
In APIv3 there is a change in the response json from a call to an API.
This prevent multimedia to get the right device to play audio on.
Bug: SPEC-1974
Change-Id: Iea60421e229a3f24633065b9b81ab4b5c574fcc4
Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
|
|
Since no client actually uses the metadata verb, but just the events
this can be removed. Also the verb wouldn't show avrcp metadata.
Bug-AGL: SPEC-1630
Change-Id: Iae7ba5a2e63107cb920566c83507bb2c7365a168
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Proxy avrcp metadata from bluetooth binding to mediaplayer service
subscribers. Also allow transparent access to local and avrcp controls.
Bug-AGL: SPEC-1630
Change-Id: I75cfd71ee62976a9312474b81469b8eb13a06015
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
To allow the mediaplayer application to not care if an media is local or a2dp
stream the reported metadata events should be the same.
Bug-AGL: SPEC-1630
Change-Id: I0fb00aa94d8b44e4babced0c87f3eeb6c3dd15e5
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Change-Id: I8b3ff798f022da30cf6a05b54cfcfdca399dac5b
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Change-Id: I48d54c05bfb8f74f280ac914f13aa30ce79fad00
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Fixes the issue that makes the mediaplayer not playing anything on 4a.
Also added a lot a debugging messages to help to understand what is going
on.
Change-Id: I313da264ecb2bcc7075018c29595df3cdce52557
Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
|
|
Set the opening brace at the beginning of the next
line for each function.
Bug-AGL: SPEC-1515
Change-Id: I8277e52fd2093e0df5ab998e990bed3d5c2ab32c
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
|
|
gst_init and audio sinks weren't always getting setup in time for
a subscriber to get the initial album art.
Solution is to move the setup out of the pthread callback and confirm
they are ran before .init() returns
Bug-AGL: SPEC-1496
Change-Id: I70779bcb1ca539146c98718f5b0edd781f9899b4
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Check playlist for an entry with the current media_path and refuse to add
to the list if it exists
Bug-AGL: SPEC-1375
Change-Id: Idc5fb4b2570ed7ac9cf63aa3c37e44b8e35d6b34
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Give new subscribers to metadata image data, and also give
metadata image data in event when track changes.
Bug-AGL: SPEC-1375
Change-Id: Ic32d1f3004948fe3bc38c958a136fd0cf9967e53
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
On initial subscription to playlist event request the playlist via event
Bug-AGL: SPEC-1375
Change-Id: Id2d7565b384ce117873827392c1e5f2a3e123098
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Add support for using GST_TAG_PREVIEW_IMAGE in case GST_TAG_IMAGE tags
aren't available
Bug-AGL: SPEC-1241
Change-Id: I3bb4edf8c9350deffa3cf407285a333042403ec9
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Since video playback doesn't work yet don't populate the
playlist with video media entries.
Bug-AGL: SPEC-1236
Change-Id: I3b161351d975442e512bdbf2215174be2301069d
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Add conditional compilation option to enable using the 4A high-level
API to request Multimedia role access.
Change-Id: I85c19e33a355f9133bdda837e9374776fc92efe9
Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
(cherry picked from commit d03590991d2c7104e7cd4b2a18e710008b2759ab)
|
|
Change-Id: I4037ab08715bea231bb8e9d725ffba9718c7daca
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
|
|
Slight chance to have an infinite tag check for album art data, and
this patchset avoids that possibility by checking the max index of tags.
Bug-AGL: SPEC-1091
Change-Id: I63836ea6e9795c97cfd0c07231c556bbbb8d9528
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Use a fakesink to get initial album art metadata on startup of service
Bug-AGL: SPEC-1052
Change-Id: If3563e65480ba1a159d60e04d8fe7e63d12301a4
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Assume to enter playing state when next/previous track commands,
and this allows loading of metadata via gstreamer
Bug-AGL: SPEC-931
Change-Id: Id7eeb1e354d3c2e7ad63a166b8dbd64afb453332
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Fix compiler warning of incorrect 'long int' to double conversions
that for volume settings
Bug-AGL: SPEC-931
Change-Id: I6645506f5636adb589256f101763b5433fc66603
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Notify subscribers of the current playing selection on a playlist
update. This is used to keep the UI selection of media in a playlist
correct.
Bug-AGL: SPEC-931
Change-Id: I8888bb6c1882695ba8ffd4a8aed2914ad0441388
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Add stop verb mostly for resetting playback on media removal
Bug-AGL: SPEC-931
Change-Id: Ic564d2329aab300bbff0bb8afcf47a65dc73103b
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
When ending a playlist an event needs to be sent to notify the UI
Bug-AGL: SPEC-931
Change-Id: Ib96ee49775a90d9ca969031443cb9e9e2ec4610e
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Allow playlist to be looped when it reachs the end of it.
Bug-AGL: SPEC-931
Change-Id: I482c51d12234a5e70f76fbb981249a643b6b78fc
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
First track or volume of 0% couldn't ever be selected due
to a invalid logic condition
Bug-AGL: SPEC-931
Change-Id: I6bc7d9026eac24eef66ab1ec13b1a8766da7d586
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
If on first track on playlist and get previous track commands
just rewind to beginning of that track.
Bug-AGL: SPEC-931
Change-Id: Ie3decb70bd0826ad5199bdc9641befcc52cfd40a
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Report the album art if any via the metadata verb in base64
data URI format.
Bug-AGL: SPEC-931
Change-Id: Ifa9f5d799161a2b6a5a163e35b53a182f29fbd4b
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
If there is no playlist the seek track commands will segfault
Bug-AGL: SPEC-931
Change-Id: I877ca12f9adbb17bfd7959b21e3478b2d0260fc2
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|