Sangchul Lee [Wed, 17 Mar 2021 04:22:30 +0000 (13:22 +0900)]
stream-manager: Pass parent id when calling callback for selecting sink or source
It is also fixed to pass parent_id as unsigned integer to
STREAM CONNECTION CHANGED callback.
[Version] 13.0.58
[Issue Type] Improvement
Change-Id: I64d300df0c7cc3f68fa97d6bffb809e38421801f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Wed, 24 Mar 2021 07:08:00 +0000 (16:08 +0900)]
stream-manager: handle ramp finished task only at the main thread
Sometimes sd handle is accessed simultaneously in different thread, which may leads to memory corruption.
This patch makes to handle ramp finish task directly only if inside of main thread.
Otherwise, request a message to make it handle from the main thread.
To avoid possible deadlock, request by posting(async) instead of send(sync).
[Version] 13.0.57
[Issue Type] Bug fix
Change-Id: I178dbc5b29adccc6f74e41b7e105681c3fd570d0
Seungbae Shin [Tue, 23 Mar 2021 11:30:55 +0000 (20:30 +0900)]
Revert "stream-manager: handle ramp finished task at core mainloop"
[Version] 13.0.56
[Issue Type] Revert
This reverts commit
5e4cb76033a4a929c90b4dfb57e69c42ec3f58cc.
Change-Id: I04b5587085b31c29ed57dabac3c42ccc0b4f9869
Seungbae Shin [Fri, 19 Mar 2021 05:34:21 +0000 (14:34 +0900)]
stream-manager: handle ramp finished task at core mainloop
Sometimes sd handle is accessed simultaneously, which may leads to memory corruption.
[Version] 13.0.55
[Issue Type] Bug fix
Change-Id: I214c58c1ccde292c918033aaded695f6b59324ef
Sangchul Lee [Thu, 18 Mar 2021 12:19:13 +0000 (21:19 +0900)]
Add support for notifying stream connection information to the policy implementation
[Version] 13.0.54
[Issue Type] New feature
Change-Id: I63ebdd3e62a40d54b04e0ac83f1654015e6095cb
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 18 Mar 2021 11:32:50 +0000 (20:32 +0900)]
stream-manager: Rename enum and function
Incorrect names are revised generically to embrace the actual doing
in the function.
[Version] 13.0.53
[Issue Type] Rename
Change-Id: I2860404667916d7487131fccc02de4fa141f7074
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 18 Mar 2021 11:23:31 +0000 (20:23 +0900)]
stream-manager: Apply designated initializers to arrays
[Version] 13.0.52
[Issue Type] Refactoring
Change-Id: If23ef59b2702618943f2029bd4bcaf35015bba3d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Wed, 17 Mar 2021 07:05:44 +0000 (16:05 +0900)]
stream-manager-dbus: remove unnessary dbus_launch_mdnsd()
mdnsd is changed to launch by socket activation
[Version] 13.0.51
[Issue Type] Dependancy
Change-Id: Id957b580d877c802d282fe746248564998552b20
Sangchul Lee [Tue, 16 Mar 2021 05:36:54 +0000 (14:36 +0900)]
stream-manager-dbus: Update mute vconf only after internal set is successful
[Version] 13.0.50
[Issue Type] Bug fix
Change-Id: Id58f2d54e5a88c583f87ab2ecaa56823b36fd8b3
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Mon, 8 Mar 2021 08:47:34 +0000 (17:47 +0900)]
stream-manager-dbus: fix improper null handling on handle_get_current_volume_type()
[Version] 13.0.49
[Issue Type] Bug fix
Change-Id: I067eeadf9deabcc17676df254984437920765be4
Seungbae Shin [Thu, 4 Mar 2021 04:02:13 +0000 (13:02 +0900)]
stream-manager-dbus: update volume vconf only after internal set is successful
[Version] 13.0.48
[Issue Type] Bug fix
Change-Id: I9238bbe1602b43f1ac1c56ef0029d248ddb56a22
Jeongmo Yang [Tue, 9 Feb 2021 11:52:10 +0000 (20:52 +0900)]
stream-manager-dbus: Skip virtual stream for ducking streams
- The ducking state is never changed because of virtual stream.
[Version] 13.0.47
[Issue Type] Bug fix
Change-Id: I545f381f8868c40eaa8562bcdf4f6ae3afecfb63
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Jaechul Lee [Mon, 25 Jan 2021 05:25:32 +0000 (14:25 +0900)]
hal-interface: Use hal audio api
+ remove minor build warning
[Version] 13.0.46
[Issue Type] Enhancement
Change-Id: Iac9337a9c6f654723eb956f7f7a6b2a85deef8d6
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
jungsup lee [Tue, 5 Jan 2021 06:01:46 +0000 (15:01 +0900)]
device-manager: handle rtsp device
handle rtsp device as network type device
[Version] 13.0.45
[Issue Type] Update
Change-Id: I90e4965c34db184f6177b19cf6e1874a13175723
Signed-off-by: jungsup lee <jungsup4.lee@samsung.com>
Seungbae Shin [Mon, 4 Jan 2021 15:52:21 +0000 (00:52 +0900)]
tizenaudio-policy: unload modules safely when daemon is on shutdown
[Version] 13.0.44
[Issue Type] Bug
Change-Id: Ib92c5cbff8bb48b40eef5685dc5549894a58cdd8
Sangchul Lee [Mon, 28 Dec 2020 08:56:16 +0000 (17:56 +0900)]
stream-manager: Revise conditions to invoke ducking state changed signal
In sink_input_ramp_finish_cb(), it is fixed to send the signal only if
the previous state of stream ducking is DUCKING or UNDUCKING.
Some logs are revised for easy debugging.
[Version] 13.0.43
[Issue Type] Improvement
Change-Id: Ib857d6146afe3279436fa155bf18b0d45e9d1909
Signed-off-by: Sangchul Lee <sangchul1011@gmail.com>
Sangchul Lee [Wed, 23 Dec 2020 05:21:38 +0000 (14:21 +0900)]
tizenaudio-policy: Set use_internal_codec value of combine sink
When a stream is finished, routing path should be updated for one
of remaining streams. If one of them is using internal audio codec
with a combine sink, it should also be updated for the stream.
This patch sets the use_internal_codec value of the combine sink to
true when loading the module if needed.
A function to load the combine module is added and applied.
[Version] 13.0.42
[Issue Type] Bug fix / Refactoring
Change-Id: I02950f4df59535039409b9c75c627dc770c66462
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Fri, 11 Dec 2020 08:50:16 +0000 (17:50 +0900)]
tone-player: Fix asan defect (stack-buffer-underflow)
==pulseaudio==799==ERROR: AddressSanitizer: stack-buffer-underflow on address 0xbdc65da0 at pc 0xb5c397ad bp 0xbdc60db0 sp 0xbdc60e00
READ of size 22 at 0xbdc65da0 thread T0
#0 0xb5c397aa in printf_common(void*, char const*, std::__va_list) (/usr/lib/libasan.so+0x757aa)
#1 0xb5c3b11c in vsnprintf (/usr/lib/libasan.so+0x7711c)
#2 0xb58ca3ba in pa_vsnprintf (/usr/lib/pulseaudio/libpulsecommon-13.0.so+0x4a3ba)
#3 0xb58ddcd8 in pa_log_levelv_meta (/usr/lib/pulseaudio/libpulsecommon-13.0.so+0x5dcd8)
#4 0xb58dd5c6 in pa_log_level_meta (/usr/lib/pulseaudio/libpulsecommon-13.0.so+0x5d5c6)
#5 0xb2e262d8 in module_tone_player_LTX_pa__init (/usr/lib/pulse-13.0/modules/module-tone-player.so+0x22d8)
#6 0xb5ab7072 in pa_module_load (/usr/lib/pulseaudio/libpulsecore-13.0.so+0x56072)
#7 0xb5a9818e in pa_cli_command_load (/usr/lib/pulseaudio/libpulsecore-13.0.so+0x3718e)
#8 0xb5aa06b2 in pa_cli_command_execute_line_stateful (/usr/lib/pulseaudio/libpulsecore-13.0.so+0x3f6b2)
#9 0xb5aa11c4 in pa_cli_command_execute_file_stream (/usr/lib/pulseaudio/libpulsecore-13.0.so+0x401c4)
#10 0x1810a in main (/usr/bin/pulseaudio+0x1810a)
#11 0xb5440c80 in __libc_start_main (/lib/libc.so.6+0x1ac80)
[Version] 13.0.41
[Issue Type] Bug
Change-Id: Ib0c1987d14ac42d47b7e6036b12c1313b275b151
Jaechul Lee [Wed, 9 Dec 2020 03:39:58 +0000 (12:39 +0900)]
tizenaudio-policy: Add max_latency_msec to 100ms
This patch improves the latency of null-src
[Version] 13.0.40
[Issue Type] Improvement
Change-Id: Idf6b2c985dd400a04f71ae5892ed6bd6517612fb
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Sangchul Lee [Thu, 19 Nov 2020 06:37:20 +0000 (15:37 +0900)]
stream-manager: Invoke ramp finish hook when ducking stream is corked
If a user corks a stream that ducking is in progress, it can not get
a ramp finish callback from the pulseaudio core. It leads to invalid
state of the stream ducking handle, therefore it is fixed to trigger
the callback forcedly when this situation happens.
[Version] 13.0.39
[Issue Type] Bug fix
Change-Id: Icbe7d4ce2d70fcbfbba9afb2555a38308df18349
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Jaechul Lee [Wed, 4 Nov 2020 05:20:36 +0000 (14:20 +0900)]
Add null-sink argument norewinds=1
null-sink takes almost 2 seconds when starting to play sound.
[Version] 13.0.38
[Issue Type] Improvement
Change-Id: If53a67c1f822f032f8f3590566b4eaa3b6265d7c
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Seungbae Shin [Thu, 29 Oct 2020 08:51:05 +0000 (17:51 +0900)]
Fix various improper memory handling bugs
- memory leaks due to missing message unref
- memory leaks due to missing dbus string array free.
- potential memory corruption due to passing different size of data type.
- use-after-free of string retrieved by dbus_message_iter_get_basic()
- use duplicated string for strtok_r()
[Version] 13.0.37
[Issue Type] Bug
Change-Id: I6dea62168cef2fd1387f1e1a3ffc37eb2fe47fa5
Seungbae Shin [Thu, 29 Oct 2020 07:34:37 +0000 (16:34 +0900)]
stream-manager-dbus: use pa dbus wrapper function if possible
[Version] 13.0.36
[Issue Type] Revise
Change-Id: Ib30dd5934fa4a2554652feb550937d15a2fa177f
Seungbae Shin [Wed, 28 Oct 2020 11:17:32 +0000 (20:17 +0900)]
device-manager-dbus: use pa dbus wrapper function if possible
[Version] 13.0.35
[Issue Type] Revise
Change-Id: I926a1860bc43b789ae5cf5490973f92b9ddd6cbd
Seungbae Shin [Tue, 27 Oct 2020 11:08:46 +0000 (20:08 +0900)]
device-manager-dbus: fix crash of getting empty supported samplerates/formats
[Version] 13.0.34
[Issue Type] Bug
Change-Id: I8faab3479f9bf2daa87d0f818b50f1a95e96caeb
Seungbae Shin [Wed, 2 Sep 2020 08:35:14 +0000 (17:35 +0900)]
Fix build warnings
[Version] 13.0.33
[Issue Type] Build
Change-Id: Idf96facb42ef0260e96ac1d1af4e9ec131c999a7
Seungbae Shin [Fri, 28 Aug 2020 08:54:19 +0000 (17:54 +0900)]
Fix SVACE defect(DEREF_OF_NULL.RET.STAT)
[Version] 13.0.32
[Issue Type] Vulnerability
Change-Id: Ideb267ce415c92c51702558cfdba9cb8cb0bc179
Seungbae Shin [Thu, 27 Aug 2020 10:28:52 +0000 (19:28 +0900)]
Fix Coverity defects
- Unchecked return value (CHECKED_RETURN)
- String not null terminated (STRING_NULL)
[Version] 13.0.31
[Issue Type] Vulnerability
Change-Id: I0e4b8c824c0d6dd9efe71d34d3576aa81453aa83
Seungbae Shin [Fri, 21 Aug 2020 07:31:03 +0000 (16:31 +0900)]
fixup! tizenaudio-publish: publish only built-in devices
adjust log level for ignoring publish
[Version] 13.0.30
[Issue Type] Update
Change-Id: I0476c340de9b4bffc13bf9734bd837fd5f169f92
Seungbae Shin [Thu, 20 Aug 2020 10:07:32 +0000 (19:07 +0900)]
fixup! tizenaudio-discover: ignore local services
skip discovered from localhost(127.0.0.1)
[Version] 13.0.29
[Issue Type] Update
Change-Id: I5faa7ae58b5ebfa8dae5a8c68ba64ff2309096f4
Seungbae Shin [Thu, 20 Aug 2020 06:17:38 +0000 (15:17 +0900)]
stream-manager-dbus: launch mdnsd when remote publish/discover
[Version] 13.0.28
[Issue Type] Update
Change-Id: I0a63ba5c5636e249f640337b25bfd698c18311d9
Jaechul Lee [Wed, 19 Aug 2020 02:48:15 +0000 (11:48 +0900)]
stream-manager: add publish/discover/set_permission interfaces
method name : SetRemotePermission
method argument : [in] string for type
[in] unsigned for index
[in] boolean for allowed
return value : None
method name : DiscoverRemoteDevice
method argument : [in] boolean for enable
return value : None
method name : PublishLocalDevice
method argument : [in] boolean for enable
return value : None
[Version] 13.0.27
[Issue Type] New feature
Change-Id: I6ab4a388410dcf4d9480bdc1aaaaa7202a199a9f
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Seungbae Shin [Tue, 18 Aug 2020 11:10:32 +0000 (20:10 +0900)]
stream-manager: add restriction for accessing denied remote device
includes minor code refactoring
[Version] 13.0.26
[Issue Type] Update
Change-Id: I1d77ff249192bde15b861c9a9d481e3564b791d6
Seungbae Shin [Tue, 18 Aug 2020 10:36:53 +0000 (19:36 +0900)]
device-manager: handle tunnel device
tunnel device will be registered(unregistered) when the remote access permission is allowed(denied).
tunnel device will be a network type device
[Version] 13.0.25
[Issue Type] Update
Change-Id: I897fcb5a74ee55c60112e5a9d956c909aae736d0
Seungbae Shin [Mon, 13 Jul 2020 02:13:47 +0000 (11:13 +0900)]
tizenaudio-publish: publish only built-in devices
[Version] 13.0.24
[Issue Type] Update
Change-Id: I69753da561c813c80c35df7690d4efc1efc48a43
Seungbae Shin [Tue, 14 Jul 2020 11:24:16 +0000 (20:24 +0900)]
tizenaudio-discover: use new tunnel module
[Version] 13.0.23
[Issue Type] Update
Change-Id: I42946234489dffb5e936d49ce7a6eb46aec5dcaa
Seungbae Shin [Mon, 13 Jul 2020 02:12:18 +0000 (11:12 +0900)]
tizenaudio-discover: ignore local services
[Version] 13.0.22
[Issue Type] Update
Change-Id: I6e8f334e6a16f5f4367c002ea5bd5809dc6b561b
Seungbae Shin [Mon, 23 Mar 2020 11:22:54 +0000 (20:22 +0900)]
Add module-tizenaudio-discover / module-tizenaudio-publish for remote audio feature
module-tizenaudio-discover : based on module-zeroconf-discover with mDNSResponder porting
module-tizenaudio-publish : based on module-bonjour-publish with minor changes
[Version] 13.0.21
[Issue Type] New feature
Change-Id: Id47dad038bfae487bbe57a09aaece674b30f9008
Sangchul Lee [Thu, 25 Jun 2020 07:05:26 +0000 (16:05 +0900)]
Exclude ringbacktone stream from changing call active routing logic
stream_is_call_family() is also renamed to
is_stream_related_call_active_routing()
[Version] 13.0.20
[Issue Type] Bug fix
Change-Id: Iedee8a5c2e655d4bf4c9f0275c0ed8c0c5450621
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Jaechul Lee [Thu, 28 May 2020 01:53:46 +0000 (10:53 +0900)]
Add Tizen_HW_Touch.ogg at /usr/share/sound/mm-sound directory
This file is moved from libmm-sound because sound_server doesn't exist.
[Version] 13.0.19
[Issue Type] None
Change-Id: I14801824c87c4388addfbb465092d04b965e2bb9
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Wed, 27 May 2020 01:41:01 +0000 (10:41 +0900)]
tone-player: Add sink_input_detach callback
sink_input_detach_cb function was added to synchronize I/O and main
thread. This commit fixes the unlink issue(
f8cde9099) completely.
In additional, handle_sound_stop returns invalid param error when it is
called with invalid handle.
[Version] 13.0.18
[Issue Type] Bug fix
Change-Id: I1f2ede6c0acc6728e1055317124815db3dbd859c
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Sangchul Lee [Tue, 19 May 2020 01:32:38 +0000 (10:32 +0900)]
stream-manager: Select new proper device even if sink or source of new data is set
In tizen policy, selecting device is performed in tizenaudio-policy
module. The previous codes skip selecting the device logic if sink or
source of new data is defined(probably aka default sink/source) in
somewhere before the codes. This patch set it regardless of this matter.
We need to be aware of this modification for possible issues regarding
it. If the skip logic is needed anyway later, we may put that in
another place.
[Version] 13.0.17
[Issue Type] Bug fix
Change-Id: I92df553b259d8ae1ff9de6c29723ccbb78bfaee6
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Jaechul Lee [Mon, 18 May 2020 06:44:24 +0000 (15:44 +0900)]
tone-player: Adds unlinked variable when a stream is stopped
Unlink messages is sent twice in a row in I/O thread. So, it make
sink_input_kill function call twice without a guard on TM1.
[Version] 13.0.16
[Issue Type] Bugs
Change-Id: Ibbe3041a64107ce4fdcf842658a472aad3c23d02
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Fri, 3 Apr 2020 00:32:53 +0000 (09:32 +0900)]
tone-player: Adds new tone playback APIs
These new APIs will be used by capi-media-tone-player.
server : org.pulseaudio.Server
object path : /org/pulseaudio/TonePlayer
interface : org.pulseaudio.TonePlayer
method name : TonePlay
method argument : [in] unsigned int for tone index
[in] signed int for duration
[in] signed int for client pid
[in] string for role
[in] signed int for parent id
[out] unsigned int for stream index
return value : None
method name : ToneStop
method argument : [in] unsigned int for stream index
return value : None
[Version] 13.0.15
[Issue Type] Improvement
Change-Id: I090e917e26697250bb187b0d2df8cd6042875354
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Mon, 4 May 2020 01:31:10 +0000 (10:31 +0900)]
Fix resource leaks when pulseaudio is terminated
This resource leak makes abort signal in core_free function and then
spends times to make unnecessary crash dump.
Change-Id: Iccc7cdce2e60985f73a819e83cf7f4887cfdaac9
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Tue, 28 Apr 2020 01:27:38 +0000 (10:27 +0900)]
Changes PA_PCM_DUMP_PA_* to PA_PCM_DUMP_*
Change-Id: Ie02cdb0a276b0f440057bb6b1124e1d5076f3124
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Thu, 23 Apr 2020 08:12:13 +0000 (17:12 +0900)]
tizenaudio-policy: Removes unused pcm dump define
[Version] 13.0.14
[Issue Type] None
Change-Id: I83e01e8eeb120ad76f68d7f9070e1e40f0543be9
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Wed, 22 Apr 2020 01:32:41 +0000 (10:32 +0900)]
sound-player: Fix memory leak in stop APIs
Every time stop APIs called, memory leak found. The reason why
sink_input's userdata that has wrapper structure such as
memblockq_stream, file_stream should be freed.
[Version] 13.0.13
[Issue Type] Bug
Change-Id: I221a6ace56b4c57f288c263c6e3b5fe5abf5e38a
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Wed, 8 Apr 2020 06:06:48 +0000 (15:06 +0900)]
sound-player: Adds error return for not supported media type
added checking not support media type error and checking invalid handle
in sound_stop function. in this case, sound_server returns
org.tizen.multimedia.audio.InvalidState and it changes to INVALID_OPERATION
[Version] 13.0.12
[Issue Type] Add
Change-Id: I35db85891d6c54f6af09449668e09ea01c09ff7a
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Sangchul Lee [Wed, 1 Apr 2020 23:43:22 +0000 (08:43 +0900)]
stream-manager: Check role/route_type functions to skip process are revised
check_role_to_skip()/check_route_type_to_skip() are renamed to
is_invalid_role()/is_invalid_route_type() respectively.
Specific conditions inside of the previous functions are
moved out of the new renamed functions.
[Version] 13.0.10
[Issue Type] Refactoring
Change-Id: Ie6ec2e0a3b42078d1265e15ef35db240daad2111
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Jaechul Lee [Tue, 31 Mar 2020 05:11:34 +0000 (14:11 +0900)]
Remove unused header files
symdef.h isn't used anymore.
backport mainline commit
d9624e038 for removing unused code
[Version] 13.0.10
[Issue Type] Refactoring
Change-Id: Id249e22d1cdf41a37b331d89bcdaefc1f5a4e67e
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jaechul Lee [Thu, 26 Mar 2020 08:13:48 +0000 (17:13 +0900)]
sound-player: Adds new sound playback APIs
These new APIs will be used by capi-media-wav-player.
server : org.pulseaudio.Server
object path : /org/pulseaudio/SoundPlayer
interface : org.pulseaudio.SoundPlayer
method name : SoundPlay
method argument : [in] string for input filename
[in] signed int for loop count
[in] signed int for client pid
[in] string for role
[in] signed int for parent id
[out] signed int for stream index
return value : None
method name : SoundStop
method argument : [in] signed int for stream index
return value : None
signal aname : EOS
signal argument : [out] signed int for stream index
return value : None
[Version] 13.0.9
[Issue Type] Add
Change-Id: Ifff7fc327a8fdd47595c9411b983e97b9623b259
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Sangchul Lee [Wed, 1 Apr 2020 00:02:46 +0000 (09:02 +0900)]
stream-manager: Add conditions not to notify stream connection/disconnection twice
This notification invokes HAL function for stream connection changed.
There were cases that this functions is invoked twice unintentionally
according to the scenario related to calling cork/uncork from client
side. For example, gstreamer pulsesink and playbacks from sound-server.
It is now fixed to trigger the notification one at a time properly.
[Version] 13.0.8
[Issue Type] Improvement
Change-Id: I1ef748ad514c87e01034e4f5bd8fc9b1083be34b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Wed, 11 Mar 2020 07:36:57 +0000 (16:36 +0900)]
sound-player: add stop / stop_all operation for simple playbacks
[Version] 13.0.7
[Issue Type] Add
Change-Id: I9b9e1653496f77d24c0aab0d7b3e093b547e080f
Jaechul Lee [Thu, 19 Mar 2020 04:24:09 +0000 (13:24 +0900)]
poweroff: Changes the file permission to 644
removed unnecessary permissions.
Change-Id: I729f31ccdfa748c0dfc0a8b9484940962ead4b69
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Jeongmo Yang [Mon, 16 Mar 2020 11:15:09 +0000 (20:15 +0900)]
stream-manager-dbus: Send signal for ducking immediately when duration is 0
- sink_input_ramp_finish_cb is not called when duration is 0
[Version] 13.0.6
[Profile] Common
[Issue Type] Bug fix
Change-Id: I292d620472a57b13ecaa6b69d81206e289552a6b
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Seungbae Shin [Mon, 16 Mar 2020 05:58:32 +0000 (14:58 +0900)]
replace source SET_STATE handlers with callbacks
[Version] 13.0.5
[Issue Type] Bug / Upgrade
Change-Id: I46b2885d566b8ebcdc555d28260f4ce25f7fe7d2
Seungbae Shin [Thu, 12 Mar 2020 12:21:17 +0000 (21:21 +0900)]
replace sink SET_STATE handlers with callbacks
[Version] 13.0.4
[Issue Type] Bug / Upgrade
Change-Id: Ic762a7ea4262b4d661a6a85191a00e0e45f884a3
Seungbae Shin [Mon, 9 Mar 2020 03:01:40 +0000 (12:01 +0900)]
Fix coverty defects (CHECKED_RETURN)
[Version] 13.0.2
[Issue Type] Vulnerability
Change-Id: Ifc9ef1f508155b34c06a8b14b5cd27fde67ae35d
Seungbae Shin [Mon, 24 Feb 2020 11:49:58 +0000 (20:49 +0900)]
Remove module-hw-keysound which is no longer supported
[Version] 13.0.2
[Issue Type] Dependencies
Change-Id: I2eb24577bd68fe6ce6cadb84b90ba3c63c057e00
Seungbae Shin [Tue, 11 Feb 2020 05:31:18 +0000 (14:31 +0900)]
fixup! stream-manager: Fix svace defects (CHECK_AFTER_OVERFLOW / UNREACHABLE_CODE)
+ remove minor warning
Change-Id: Icca68a8fc1e1369208c3e6a91a74e1b099e05a84
Sangchul Lee [Tue, 21 Jan 2020 07:03:42 +0000 (16:03 +0900)]
Adapt codes for PulseAudio 13.0
[Version] 13.0.1
[Issue Type] Update
Change-Id: I6524931df89b70d573b209eb6a4479cd6b7adafc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 4 Feb 2020 03:39:32 +0000 (12:39 +0900)]
stream-manager: Improve sending ducking state changed signal
If two or more ducking requests have been activated to the same
target stream type during ducking operation, ducking state changed
signal should be emitted for each ducking request handle respectively.
Previously, it did not work well. It is now fixed.
Note that these ducking state changed signals will be emitted at the
same time when the sink-input's ramp finish hook is called in the
thread context as soon as the final ducking operation has been done.
[Version] 11.1.97
[Issue Type] Bug fix
Change-Id: I3de608a7053c6c61e74ff67af271d2972f5149a1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Fri, 31 Jan 2020 09:47:09 +0000 (18:47 +0900)]
stream-manager: Fix svace defects (CHECK_AFTER_OVERFLOW / UNREACHABLE_CODE)
[Version] 11.1.96
[Profile] Common
[Issue Type] Svace
Change-Id: If8546bafff603b9a4443f0452f5533627f991009
Jeongmo Yang [Wed, 29 Jan 2020 03:49:53 +0000 (12:49 +0900)]
stream-manager: Update volume for all channels
[Version] 11.1.95
[Profile] Common
[Issue Type] Update
Change-Id: I28f1ef5d696d800e96b5ffadcd5e8ccf8653769a
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Jeongmo Yang [Thu, 16 Jan 2020 03:26:59 +0000 (12:26 +0900)]
stream-manager: Change ratio from 1.0 to previoulsy set value
[Version] 11.1.94
[Profile] Common
[Issue Type] Bug fix
Change-Id: I8daa4c574b6366225635d028354038a505892193
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Seungbae Shin [Wed, 8 Jan 2020 10:33:02 +0000 (19:33 +0900)]
stream-manager-volume: Fix for iniparser upgrade
iniparser_getstring() will returns 'const char *' type
[Version] 11.1.93
[Issue Type] Update
Change-Id: If7f243f770c26c524ae00aa3c84af97cdcc6f77e
Sangchul Lee [Fri, 20 Dec 2019 03:04:57 +0000 (12:04 +0900)]
tizenaudio-policy: Add support for the preemptive device routing
This new feature is only able to be applid to two routing types below.
- STREAM_ROUTE_TYPE_AUTO, STREAM_ROUTE_TYPE_AUTO_LAST_CONNECTED
If user sets the preemptive device to a specific stream role, this device
has priority over all other devices that can be selected by the policy of
the stream role. Once it is set to a particular stream role, audio routing
of all other streams with the same stream role will be affected.
server : org.pulseaudio.Server
object path : /org/pulseaudio/StreamManager
interface : org.pulseaudio.StreamManager
method name : SetStreamPreemptiveDevice
method argument : [in] string for stream type (e.g. 'media')
[in] string for io direction ('in' or 'out')
[in] unsigned int for device id
return value : string for return message
- success : STREAM_MANAGER_RETURN_OK
- invalid argument error : STREAM_MANAGER_RETURN_ERROR_INVALID_ARGUMENT
- policy error : STREAM_MANAGER_RETURN_ERROR_POLICY
- internal error : STREAM_MANAGER_RETURN_ERROR_INTERNAL
method name : GetStreamPreemptiveDevice
method argument : [in] string for stream type (e.g. 'media')
[out] unsigned int for input device id
[out] unsigned int for output device id
return value : string for return message
- success : STREAM_MANAGER_RETURN_OK
- internal error : STREAM_MANAGER_RETURN_ERROR_INTERNAL
[Version] 11.1.92
[Issue Type] New feature
Change-Id: I12dd1d8d5463426331955a4f7a3799b551685a4d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Jeongmo Yang [Thu, 21 Nov 2019 10:32:52 +0000 (19:32 +0900)]
Validate duckding state with command in handle_activate_ducking()
[Version] 11.1.91
[Profile] Common
[Issue Type] Improvement
Change-Id: I07ff4491f2adc53d623cab82cfb779aeb60e943a
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Jeongmo Yang [Tue, 19 Nov 2019 01:33:42 +0000 (10:33 +0900)]
Fix coverity issue - Unchecked return value
[Version] 11.1.90
[Profile] Common
[Issue Type] Coverity
Change-Id: I337ad24b87cff98b9ce0160fac28ce7728e42bbb
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Jeongmo Yang [Mon, 18 Nov 2019 10:33:17 +0000 (19:33 +0900)]
fixup! Add ducking state to prevent invalid operation.
Add missed string for error
Change-Id: Ieab3be9b2f2889c9187e8f1345bcd662f1c3aec3
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Jeongmo Yang [Mon, 18 Nov 2019 05:28:07 +0000 (14:28 +0900)]
Add ducking state to prevent invalid operation.
- Previously, ducking command(activation or deactivation) could be sent
although it's already sent but the operation is not completed.
[Version] 11.1.89
[Profile] Common
[Issue Type] Bug fix
Change-Id: If7c57b2bae38663ae206dd1b55343b10daa5359d
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Sangchul Lee [Wed, 13 Nov 2019 05:38:19 +0000 (14:38 +0900)]
stream-manager-dbus: Support invalid argument error returned by handle_set_volume_level()
[Version] 11.1.88
[Issue Type] Improvement
Change-Id: Icd45ce7efd08b651341027385ca5b7f184410c0a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 13 Nov 2019 07:19:46 +0000 (16:19 +0900)]
stream-manager: Skip invalid streams before invoking pa_sink_input_remove_volume_factor()
It is added temporarily to avoid crash. It will be removed if we find
the crash case due to the omission of removal of stream index from
idx_ducking_streams and fix it.
[Version] 11.1.87
[Issue Type] Crash
Change-Id: I5aa655240a951019750da1ae1941790c08c77bd7
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Jeongmo Yang [Wed, 6 Nov 2019 03:48:38 +0000 (12:48 +0900)]
stream-manager: Add error handling code for ducking instead of assertion
[Version] 11.1.86
[Profile] Common
[Issue Type] Error handling
Change-Id: I146f886a47c623fabd8f2729d8c0d5bf41d2e0f5
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Jeongmo Yang [Tue, 5 Nov 2019 03:25:22 +0000 (12:25 +0900)]
stream-manager: Fix bug in sink_input_ramp_finish_cb
- If two or more duckings are activated to the same stream,
only the first ducking state changed callback is invoked.
[Version] 11.1.85
[Profile] Common
[Issue Type] Bug fix
Change-Id: I2f043030aa7f339f42fc6176442974286c33c605
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Sangchul Lee [Mon, 30 Sep 2019 07:57:38 +0000 (16:57 +0900)]
fixup! stream-manager: Revise process_stream() to use sub-functions
Change-Id: Id2d0063434d0db7609459b7499326c72c404f4a6
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 26 Sep 2019 03:41:33 +0000 (12:41 +0900)]
stream-manager: Revise do_notify() to use sub-functions
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.84
[Issue Type] Refactoring
Change-Id: Ifeac4de2c4ddbab0101fc34ba54a508cffcdd37c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 20 Sep 2019 01:05:10 +0000 (10:05 +0900)]
stream-manager: Revise init_stream_map() to use sub-functions
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.83
[Issue Type] Refactoring
Change-Id: Ieabf4fe1f4dd7b5723777f49bfb3ce6a27a76c2a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 Sep 2019 23:04:56 +0000 (08:04 +0900)]
stream-manager: Revise pa_stream_manager_unref() to use new function to free hook slots
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.82
[Issue Type] Refactoring
Change-Id: Iadc01db1502b3e7d35431a7a68ad2733098c0e5d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 Sep 2019 08:13:25 +0000 (17:13 +0900)]
stream-manager: Revise device_connection_changed_hook_cb() to use new sub-function
It'll reduce cyclomatic complexity of SAM.
update_sink_or_source_as_device_change() is renamed to
check_and_move_streams_by_device_connection_change().
[Version] 11.1.81
[Issue Type] Refactoring
Change-Id: I1c0546ba92fc4555512e040df3256eff67bc3992
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 Sep 2019 06:55:58 +0000 (15:55 +0900)]
stream-manager: Revise fill_device_info_to_hook_data() to reduce if-else condition statements
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.80
[Issue Type] Refactoring
Change-Id: I2efa140fa215addbc1ac83b776d3324228121f79
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 Sep 2019 05:35:06 +0000 (14:35 +0900)]
stream-manager: Revise process_stream() to use sub-functions
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.79
[Issue Type] Refactoring
Change-Id: Ic3f0a7a834761ac739094d53cc4ca17131d7b86a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 Sep 2019 01:19:05 +0000 (10:19 +0900)]
tizenaudio-policy: Use new sub-functions inside of select_proper_sink_or_source_hook_cb()
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.78
[Issue Type] Refactoring
Change-Id: I371317af1c9f732154b1e271f03d86d72a67e675
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 18 Sep 2019 05:59:05 +0000 (14:59 +0900)]
tizenaudio-policy: Use new sub-functions inside of route_change_hook_cb()
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.77
[Issue Type] Refactoring
Change-Id: I2d9aeefc4c503532273cf09668139c034f961589
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 17 Sep 2019 10:30:45 +0000 (19:30 +0900)]
stream-manager-volume: Revise codes to reduce if-else statements
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.76
[Issue Type] Refactoring
Change-Id: Ie44c99bc701dbb9741baec43723450040e5ebde5
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 17 Sep 2019 05:22:58 +0000 (14:22 +0900)]
stream-manager-dbus: Revise handle_set_stream_preferred_device() to reduce condition statements
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.75
[Issue Type] Refactoring
Change-Id: I771f94082848490365a0703b78bfb6d6f59daadc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 16 Sep 2019 07:34:41 +0000 (16:34 +0900)]
device-manager-dbus: Add new function to handle bluez headset property changed signal
It'll reduce cyclomatic complexity of SAM.
[Version] 11.1.74
[Issue Type] Refactoring
Change-Id: I2579f9e68662a55bff331959d377977029f29b46
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Tue, 10 Sep 2019 05:43:14 +0000 (14:43 +0900)]
Use static keyword for global variables
[Version] 11.1.73
[Issue Type] Refactorying
Change-Id: I4acbbc86ae3c4e4bbcef6647d6ce703f8f81cec0
Seungbae Shin [Wed, 28 Aug 2019 07:43:57 +0000 (16:43 +0900)]
fixup! acm: Fix coverity defects
[Version] 11.1.72
[Issue Type] Security
Change-Id: I1dcd3ea1626f0113b3d2696748c9d2ca4412808e
Sangchul Lee [Wed, 28 Aug 2019 08:27:01 +0000 (17:27 +0900)]
stream-manager-dbus: Add new DBus method to get preferred device id
server : org.pulseaudio.Server
object path : /org/pulseaudio/StreamManager
interface : org.pulseaudio.StreamManager
method name : GetStreamPreferredDevice
method argument : [in] unsigned int for stream index
[out] unsigned int for input device id
[out] unsigned int for output device id
return value : string for return message
- success : "STREAM_MANAGER_RETURN_OK"
- internal error : "STREAM_MANAGER_RETURN_ERROR_INTERNAL"
[Version] 11.1.71
[Issue Type] Improvement
Change-Id: I9a344d013d81369e1ad909eab31f2d68d0dda1b3
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 28 Aug 2019 02:17:13 +0000 (11:17 +0900)]
stream-manager-dbus: Improve ducking API regarding a stream not running
If there's only one stream that belongs to the target stream of ducking
effect and is not running, PA_CORE_HOOK_SINK_INPUT_RAMP_FINISH is not
invoked because it is not a stream to be rendered in this state.
This patch adds condition to use pa_sink_input_add_volume_factor() to
make the effect properly and to send the signal immediately in this case.
[Version] 11.1.70
[Issue Type] Bug fix
Change-Id: Id4339211318c8ce8388f2fce1b290b2a1dc1e09f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Jeongmo Yang [Mon, 26 Aug 2019 03:46:26 +0000 (12:46 +0900)]
stream-manager: Fix missed notification
- When stream ducking is disconnected without deactivation,
notification for audio-HAL is missed.
[Version] 11.1.69
[Profile] Common
[Issue Type] Bug fix
Change-Id: I23ac8257fe5b1f8142864701edd4f514a50f8119
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Seungbae Shin [Thu, 8 Aug 2019 04:49:27 +0000 (13:49 +0900)]
acm: Fix coverity defects
[Version] 11.1.68
[Issue Type] Security
Change-Id: I4a8f4a0d6136c3c52716e1c4e682a9d574991f5a
Jeongmo Yang [Mon, 29 Jul 2019 08:32:36 +0000 (17:32 +0900)]
stream-manager: Notify ducking activation to HAL
[Version] 11.1.67
[Issue Type] Update
Change-Id: I1b94cc0c3b8f6f0936ff64347eff4e55631487f1
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
Sangchul Lee [Thu, 25 Jul 2019 07:44:57 +0000 (16:44 +0900)]
stream-manager: Ensure sending ducking changed signal even when unlinking sink-input during ducking or unducking
Even though a sink-input affected by ducking DBus method is unlinking
in the middle of ducking or unducking process by ramp factor, the DBus
signal for ducking changed callback should be emitted properly.
This patch checks some conditions and emits the signal in that case.
[Version] 11.1.66
[Issue type] Improvement
Change-Id: Iab46f03af623f204ba351fa83941a2a03e77b4d3
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 25 Jul 2019 07:20:12 +0000 (16:20 +0900)]
stream-manager: Revise logs regarding ducking
[Version] 11.1.65
[Issue type] Log
Change-Id: Ic568205d567e6a3d65629e4aefecc7a526c186d8
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 25 Jul 2019 03:03:34 +0000 (12:03 +0900)]
stream-manager: Fix not to apply ducking to new stream when after deactivating ducking
The target role member variable of stream ducking structure was not
de-initialized when deactivating ducking. It causes that new stream
with matching the target role is applied by the previous ducking.
It is now fixed.
[Version] 11.1.64
[Issue type] Bug fix
Change-Id: I74f34905e762ffe35aab32a5eff1c260cac0a43e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 23 Jul 2019 02:39:42 +0000 (11:39 +0900)]
tizenaudio-policy: Take into account the preferred device in case of auto-last-connected route type
[Version] 11.1.63
[Issue type] Improvement
Change-Id: I86a91db883c58ec251fa5ec1bf79c93a757778f6
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 19 Jul 2019 02:15:44 +0000 (11:15 +0900)]
tizenaudio-policy: Fix to select a valid device if a device role is specified
[Version] 11.1.62
[Issue type] Bug fix
Change-Id: Icbb61235e2431f8c078c823551507fc5da94252b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>