platform/core/multimedia/pulseaudio-modules-tizen.git
4 years agoFix coverity issue - Unchecked return value 22/218022/1 accepted/tizen/unified/20191119.083904 submit/tizen/20191119.015812
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>
4 years agofixup! Add ducking state to prevent invalid operation. 98/217998/2 accepted/tizen/unified/20191118.234456 submit/tizen/20191118.103834
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>
4 years agoAdd ducking state to prevent invalid operation. 65/217965/2
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>
4 years agostream-manager-dbus: Support invalid argument error returned by handle_set_volume_level() 28/217728/1 accepted/tizen/unified/20191118.122954 submit/tizen/20191115.044113
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>
4 years agostream-manager: Skip invalid streams before invoking pa_sink_input_remove_volume_factor() 63/217663/1
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>
4 years agostream-manager: Add error handling code for ducking instead of assertion 67/217067/1 accepted/tizen/unified/20191106.124641 submit/tizen/20191106.060006
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>
4 years agostream-manager: Fix bug in sink_input_ramp_finish_cb 27/216927/2 accepted/tizen/unified/20191105.110652 submit/tizen/20191105.051822
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>
4 years agofixup! stream-manager: Revise process_stream() to use sub-functions 66/214966/1 accepted/tizen_5.5_unified_mobile_hotfix tizen_5.5_mobile_hotfix accepted/tizen/5.5/unified/20191031.022340 accepted/tizen/5.5/unified/mobile/hotfix/20201027.090202 accepted/tizen/unified/20191001.062526 submit/tizen/20190930.080259 submit/tizen/20191001.005911 submit/tizen_5.5/20191031.000004 submit/tizen_5.5_mobile_hotfix/20201026.185104 tizen_5.5.m2_release
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>
4 years agostream-manager: Revise do_notify() to use sub-functions 38/214738/2
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>
4 years agostream-manager: Revise init_stream_map() to use sub-functions 86/214286/3 accepted/tizen/unified/20190923.110254 submit/tizen/20190923.062727
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>
4 years agostream-manager: Revise pa_stream_manager_unref() to use new function to free hook... 83/214283/2
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>
4 years agostream-manager: Revise device_connection_changed_hook_cb() to use new sub-function 53/214253/2
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>
4 years agostream-manager: Revise fill_device_info_to_hook_data() to reduce if-else condition... 39/214239/4
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>
4 years agostream-manager: Revise process_stream() to use sub-functions 17/214217/2
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>
4 years agotizenaudio-policy: Use new sub-functions inside of select_proper_sink_or_source_hook_cb() 88/214188/3
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>
4 years agotizenaudio-policy: Use new sub-functions inside of route_change_hook_cb() 05/214105/3
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>
4 years agostream-manager-volume: Revise codes to reduce if-else statements 53/214053/2
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>
4 years agostream-manager-dbus: Revise handle_set_stream_preferred_device() to reduce condition... 69/213969/1 accepted/tizen/unified/20190918.010327 submit/tizen/20190917.095054
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>
4 years agodevice-manager-dbus: Add new function to handle bluez headset property changed signal 90/213890/2
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>
4 years agoUse static keyword for global variables 75/213675/1 submit/tizen/20190910.071813
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

4 years agofixup! acm: Fix coverity defects 29/212929/2 accepted/tizen/unified/20190830.040810 submit/tizen/20190829.103037
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

4 years agostream-manager-dbus: Add new DBus method to get preferred device id 36/212936/4 submit/tizen/20190829.100932
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>
4 years agostream-manager-dbus: Improve ducking API regarding a stream not running 89/212889/2
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>
4 years agostream-manager: Fix missed notification 64/212664/5
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>
4 years agoacm: Fix coverity defects 75/211675/2 accepted/tizen/unified/20190809.110817 submit/tizen/20190809.041132
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

4 years agostream-manager: Notify ducking activation to HAL 41/211041/2 accepted/tizen/unified/20190807.111819 submit/tizen/20190807.024035
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>
4 years agostream-manager: Ensure sending ducking changed signal even when unlinking sink-input... 56/210856/2 accepted/tizen/unified/20190729.081033 submit/tizen/20190726.021654 submit/tizen/20190728.111739
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>
4 years agostream-manager: Revise logs regarding ducking 39/210839/1
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>
4 years agostream-manager: Fix not to apply ducking to new stream when after deactivating ducking 01/210801/1
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>
4 years agotizenaudio-policy: Take into account the preferred device in case of auto-last-connec... 13/210613/4
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>
4 years agotizenaudio-policy: Fix to select a valid device if a device role is specified 16/210416/6
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>
4 years agodevice-manager: Add role parameter to pa_device_manager_get_device() 87/210687/2
Sangchul Lee [Wed, 24 Jul 2019 01:16:10 +0000 (10:16 +0900)]
device-manager: Add role parameter to pa_device_manager_get_device()

The new parameter is for device role. It can be nullable.

[Version] 11.1.61
[Issue Type] API

Change-Id: I336a1e82521e9b21300fb907333127c17c0249c5
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agostream-manager: Improve audio ducking function 55/210455/6 accepted/tizen/unified/20190724.063810 submit/tizen/20190723.054438
Jeongmo Yang [Fri, 19 Jul 2019 05:56:14 +0000 (14:56 +0900)]
stream-manager: Improve audio ducking function

1. Fix crash
: If ducked stream is removed without deactivating,
  the pointer for the removed stream is still remained in idxset of ducking_streams.
  It caused crash when ducking stream is destroyed.

2. Apply ducking to new stream
: If new role-matched stream is created when after ducked,
  apply ducking to it without fade-out.

[Version] 11.1.60
[Issue Type] Improvement

Change-Id: Ida0556e5d8c1d10f001357291ca17193174c26ae
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years agofixup! stream-manager-dbus: Add direction argument to the DBus method - set preferred... 16/210616/1
Sangchul Lee [Tue, 23 Jul 2019 02:51:44 +0000 (11:51 +0900)]
fixup! stream-manager-dbus: Add direction argument to the DBus method - set preferred device

Change-Id: If70a0a2410bc15ee6d77cbb4438e92dfce560fa9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agostream-manager-dbus: Add direction argument to the DBus method - set preferred device 41/210241/2 accepted/tizen/unified/20190717.220448 submit/tizen/20190717.085922
Sangchul Lee [Wed, 17 Jul 2019 06:38:46 +0000 (15:38 +0900)]
stream-manager-dbus: Add direction argument to the DBus method - set preferred device

  server          : org.pulseaudio.Server
  object path     : /org/pulseaudio/StreamManager
  interface       : org.pulseaudio.StreamManager

  method name     : SetStreamPreferredDevice
  method argument : unsigned int for stream index
                    string for io direction ('in' or 'out')
                    unsigned int for device id
  return value    : string for return message
                    - success          : "STREAM_MANAGER_RETURN_OK"
                    - no match found   : "STREAM_MANAGER_RETURN_ERROR_DEVICE_NOT_FOUND"
                    - policy error     : "STREAM_MANAGER_RETURN_ERROR_POLICY"
                    - internal error   : "STREAM_MANAGER_RETURN_ERROR_INTERNAL"

[Version] 11.1.59
[Issue type] Improvement

Change-Id: I1a3b6b1e27438f4e5aace0f430d2afbc9b3d0bf7
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agostream-manager: Support ducking API 41/208741/14 accepted/tizen/unified/20190716.111227 submit/tizen/20190716.020521
Jeongmo Yang [Fri, 28 Jun 2019 00:57:20 +0000 (09:57 +0900)]
stream-manager: Support ducking API

- Add new handler for ducking API

  server          : org.pulseaudio.Server
  object path     : /org/pulseaudio/StreamManager
  interface       : org.pulseaudio.StreamManager

  method name     : ActivateDucking
  method argument : unsigned int for stream index
                    boolean for enable
                    string for target stream
                    unsigned int for duration
                    double for ratio
  return value    : string for return message
                    - success : "STREAM_MANAGER_RETURN_OK"

[Version] 11.1.58
[Issue Type] New feature

Change-Id: Ib10aa11fe84ff73419798ead2b0db3b3f88c3c74
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years agostream-manager-dbus: Add new DBus methods to set preferred device 76/209476/6 accepted/tizen/unified/20190715.111909 submit/tizen/20190712.062844
Sangchul Lee [Mon, 8 Jul 2019 06:44:27 +0000 (15:44 +0900)]
stream-manager-dbus: Add new DBus methods to set preferred device

  server          : org.pulseaudio.Server
  object path     : /org/pulseaudio/StreamManager
  interface       : org.pulseaudio.StreamManager

  method name     : SetStreamPreferredDevice
  method argument : unsigned int for stream index
                    unsidned int for device id
  return value    : string for return message
                    - success          : "STREAM_MANAGER_RETURN_OK"
                    - no match found   : "STREAM_MANAGER_RETURN_ERROR_DEVICE_NOT_FOUND"
                    - policy error     : "STREAM_MANAGER_RETURN_ERROR_POLICY"
                    - internal error   : "STREAM_MANAGER_RETURN_ERROR_INTERNAL"

[Version] 11.1.57
[Issue type] New feature

Change-Id: I2830efed90c7a76ca720766f1f01ab47db55ef03
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agotizenaudio-policy: Add support for the preferred device role of built-in devices 72/209472/2
Sangchul Lee [Mon, 8 Jul 2019 05:54:18 +0000 (14:54 +0900)]
tizenaudio-policy: Add support for the preferred device role of built-in devices

[Version] 11.1.56
[Issue type] New feature

Change-Id: Icaabe87ceeb0336bde8f5487c1748d44e83f3c52
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agodevice-manager: Revise handle_device_connected() to pass device_type_info 47/209047/1
Sangchul Lee [Tue, 2 Jul 2019 02:57:06 +0000 (11:57 +0900)]
device-manager: Revise handle_device_connected() to pass device_type_info

Each device_type_info has hashmap of playback[capture]_devices
that have device descriptions per device role.
This patch makes it possible to load the same built-in device type
with different device role.

[Version] 11.1.55
[Issue type] Improvement

Change-Id: I14fea61488dc6d3f4289acee339380bf33c67bde
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agofixup! stream-manager: Do not apply tizen group volume to a stream belongs to a netwo... 33/208533/1 accepted/tizen/unified/20190626.114510 submit/tizen/20190626.013326 submit/tizen/20190626.053216
Sangchul Lee [Tue, 25 Jun 2019 23:47:52 +0000 (08:47 +0900)]
fixup! stream-manager: Do not apply tizen group volume to a stream belongs to a network device

Change-Id: If63666f1dadf4826649d0442b6c653d70d201461
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agostream-manager: Do not apply tizen group volume to a stream belongs to a network... 37/208237/2 accepted/tizen/unified/20190621.121845 submit/tizen/20190620.095920
Sangchul Lee [Thu, 20 Jun 2019 07:27:55 +0000 (16:27 +0900)]
stream-manager: Do not apply tizen group volume to a stream belongs to a network device

Let it just go without manipulating volume value that is according to
tizen group volume when a stream goes to a network device. Note that
only individual volume can be applied to these streams.

[Version] 11.1.54
[Issue type] Improvement

Change-Id: I7e334b1285edc8d44e37f03f032aa577be35af02
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agodevice-manager: Add support for ACM device 60/207560/5 submit/tizen/20190619.053430
Sangchul Lee [Fri, 7 Jun 2019 06:49:48 +0000 (15:49 +0900)]
device-manager: Add support for ACM device

A new ACM role that will be used with the network type is added.
A DBus method to set ACM mode triggering loading/unloading ACM
sink is added.

  server          : org.pulseaudio.Server
  object path     : /org/pulseaudio/DeviceManager
  interface       : org.pulseaudio.DeviceManager
  method name     : SetAcmMode
  method argument : unsigned int for mode (0:off)

[Version] 11.1.53
[Issue type] New feature

Change-Id: Ib59795979086fcb8ddf5e4f15c47ab3b3a1a317c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agodevice-manager: Add support for network device type 67/208067/1
Sangchul Lee [Mon, 17 Jun 2019 23:22:02 +0000 (08:22 +0900)]
device-manager: Add support for network device type

The previous raop device type is changed to network device type.
Rather the 'raop' is demoted from device type to a role of the
type. A new role will be added to this network device type in the
upcoming patch.

[Version] 11.1.52
[Issue type] Improvement

Change-Id: I939d253de1a5804b85dae6cdb0ae375209ee41e9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agofixup! device-manager: Add 'role' parameter to device_list_get_device() 23/208023/1
Sangchul Lee [Mon, 17 Jun 2019 07:15:17 +0000 (16:15 +0900)]
fixup! device-manager: Add 'role' parameter to device_list_get_device()

Change-Id: I10a3720e3b55e39f27aaf21ab057c1be3a1d7040

4 years agotizen-device: Introduce default sink/source of device_get_sink/source() 19/208019/1
Sangchul Lee [Mon, 17 Jun 2019 05:13:40 +0000 (14:13 +0900)]
tizen-device: Introduce default sink/source of device_get_sink/source()

If these two functions are invoked with 'NULL' role parameter,
it will return the first sink/source of its device hashmap list.

[Version] 11.1.51
[Issue type] Improvement

Change-Id: I5b42c4dd536b3962af42294955481ff8e6639305
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agodevice-manager: Add 'role' parameter to _device_manager_get_type_info() 54/207954/1
Sangchul Lee [Fri, 14 Jun 2019 07:26:56 +0000 (16:26 +0900)]
device-manager: Add 'role' parameter to _device_manager_get_type_info()

This function is related to device descriptions in device-map.json.
It is also revised considering the role.

load_sink/source() is fixed to return sink/source even if the device
has been already loaded instead of NULL.

[Version] 11.1.50
[Issue type] Improvement

Change-Id: I01a2d898e48e4e06ce5d316e68eaa50f9d7b3a6f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agodevice-manager: Add 'role' parameter to device_list_get_device() 14/207914/3
Sangchul Lee [Fri, 14 Jun 2019 03:15:59 +0000 (12:15 +0900)]
device-manager: Add 'role' parameter to device_list_get_device()

With new role parameter is specified, it returns a device considering
the role. For this, pa_tz_device_get_role() is added to tizen-device.c.

It is revised not to judge whether a device type is for multi-devices
by predefined device types. So, device_type_is_avail_multi_device() is
removed from tizen-device-def.c.

[Version] 11.1.49
[Issue type] Improvement

Change-Id: I3d9532b80dd02adda9fc9f5b75d8e1ab68276624
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agodevice-manager: Refactor functions 51/207851/1
Sangchul Lee [Thu, 13 Jun 2019 08:08:37 +0000 (17:08 +0900)]
device-manager: Refactor functions

Ambiguous function names are also revised.
 : build_params_to_load_device() => build_params_to_load_module()
 : load_device() => load_module()
 : unload_device() => unload_module()

[Version] 11.1.48
[Issue type] Refactoring

Change-Id: Ied85b3e847e5496308fa5a836d562d81c0b5a48a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agoacm: Request drain when sink state is changed to IDLE from RUNNING 59/207559/4
Sangchul Lee [Fri, 7 Jun 2019 06:46:56 +0000 (15:46 +0900)]
acm: Request drain when sink state is changed to IDLE from RUNNING

[Version] 11.1.47
[Issue type] Improvement

Change-Id: I15affa5362992c325afb01ca589ab31f29afbe85
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agofixup! acm-sink: Add new sink module for ACM service 59/207659/1 accepted/tizen/unified/20190611.050207 submit/tizen/20190611.014748
Sangchul Lee [Tue, 11 Jun 2019 01:14:19 +0000 (10:14 +0900)]
fixup! acm-sink: Add new sink module for ACM service

Change-Id: I3ad1af3fac13640fa176518c5dd538b09801d449
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
4 years agoacm-sink: Add new sink module for ACM service 37/206937/7 accepted/tizen/unified/20190610.082555 submit/tizen/20190606.233237
Sangchul Lee [Tue, 14 May 2019 05:13:50 +0000 (14:13 +0900)]
acm-sink: Add new sink module for ACM service

It is for Tizen speaker profile.
pulseaudio-module-acm.rpm is newly added.

[Version] 11.1.46
[Issue type] New feature

Change-Id: If3ef8993014f61e61ed65ba8dc658418e08af169
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agomodule-tizenaudio-policy: Fix crash when manual device is not set 95/206295/2
jungsup lee [Thu, 16 May 2019 04:46:52 +0000 (13:46 +0900)]
module-tizenaudio-policy: Fix crash when manual device is not set

Skip route_change_hook_cb when manual device is null even if route type is manual series

[Version] 11.1.45
[Issue type] Bug fix

Change-Id: Icc1a00eb2fe9dedfc6592f6f49cc840fe5b2095c
Signed-off-by: jungsup lee <jungsup4.lee@samsung.com>
5 years agofixup! stream-manager-dbus: Rename methods and fix bug 98/206198/1
Sangchul Lee [Wed, 15 May 2019 05:32:37 +0000 (14:32 +0900)]
fixup! stream-manager-dbus: Rename methods and fix bug

Change-Id: I7c48fd3cc9e591b2b77b1acbd86666b3854791b3
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agotizenaudio-policy: Add missing unsuspend sink/source due to INTERNAL cause 92/205792/3 submit/tizen/20190509.090025
Sangchul Lee [Thu, 9 May 2019 03:23:52 +0000 (12:23 +0900)]
tizenaudio-policy: Add missing unsuspend sink/source due to INTERNAL cause

Tizen specific logic regarding to unsuspending automatically
in case of PA_SUSPEND_INTERNAL cause has been removed, so it
has to be added for valid behavior when starting a stream
later on.

[Version] 11.1.44
[Issue type] Bug fix

Change-Id: Ie0c48b7990a2499cad31669e4c4f5c1caea1f1ed
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager-volume: fix svace defect (UNINIT.LOCAL_VAR.EX) 46/205646/2 accepted/tizen/unified/20190508.234057 submit/tizen/20190508.075429
Seungbae Shin [Wed, 8 May 2019 07:08:02 +0000 (16:08 +0900)]
stream-manager-volume: fix svace defect (UNINIT.LOCAL_VAR.EX)

[Version] 11.1.43
[Issue type] SVACE

Change-Id: I7e170c4af028d113d8007abea4cdeed3e25ff7e9

5 years agostream-manager-dbus: Rename methods and fix bug 58/204158/2 accepted/tizen/unified/20190425.014628 submit/tizen/20190422.044155 submit/tizen/20190423.020435
Sangchul Lee [Sun, 21 Apr 2019 23:48:25 +0000 (08:48 +0900)]
stream-manager-dbus: Rename methods and fix bug

set[get]_volume_rate() are changed to set[get]_volume_ratio().
invalid parameter to dbus_message_append_args() is fixed.

[Version] 11.1.42
[Issue type] Revision

Change-Id: I4f4da6a0730621144f374e8a99bd75b9b76ad0fc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agohal-interface, stream-manager: Add support for setting volume ratio to HAL 20/203720/4
Sangchul Lee [Wed, 17 Apr 2019 04:39:27 +0000 (13:39 +0900)]
hal-interface, stream-manager: Add support for setting volume ratio to HAL

It is an extension of the previous patches regarding the
individual volume feature.

The 'ratio' parameter of the new HAL API is calculated
considering master volume ratio, group volume ratio and
individual volume ratio. The two former factors are
affected only when the volume type of the target stream
is not the HAL volume type defined in stream-map.json.

[Version] 11.1.41
[Issue type] New feature

Change-Id: I912a0f6eb1edc3fe33e058ef6290f4aba1267ed0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager-dbus: Add new DBus methods to set/get volume rate 36/203336/2
Sangchul Lee [Fri, 5 Apr 2019 05:18:05 +0000 (14:18 +0900)]
stream-manager-dbus: Add new DBus methods to set/get volume rate

  server          : org.pulseaudio.Server
  object path     : /org/pulseaudio/StreamManager
  interface       : org.pulseaudio.StreamManager

  method name     : SetVolumeRate
  method argument : string for direction ('in' or 'out')
                    unsigned int for stream index
                    double for rate (0.0 ~ 1.0)
  return value    : string for return message
                    - success          : "STREAM_MANAGER_RETURN_OK"
                    - no match found   : "STREAM_MANAGER_RETURN_ERROR_NO_STREAM"
                    - internal error   : "STREAM_MANAGER_RETURN_ERROR_INTERNAL"

  method name     : GetVolumeRate
  method argument : string for direction ('in' or 'out')
                    unsigned int for stream index
  return value    : double for rate (0.0 ~ 1.0)
                    string for return message
                    - success          : "STREAM_MANAGER_RETURN_OK"
                    - no match found   : "STREAM_MANAGER_RETURN_ERROR_NO_STREAM"

[Version] 11.1.40
[Issue type] New feature

Change-Id: I8a5b3ce87af5851c208df3a4ffa39ab6c8949a09
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager-dbus: Add new DBus medhod to get the pid of the lastest stream 39/203039/1
Sangchul Lee [Mon, 8 Apr 2019 07:05:13 +0000 (16:05 +0900)]
stream-manager-dbus: Add new DBus medhod to get the pid of the lastest stream

  server          : org.pulseaudio.Server
  object path     : /org/pulseaudio/StreamManager
  interface       : org.pulseaudio.StreamManager
  method name     : GetPidOfLatestStream
  method argument : string for direction ('in' or 'out')
                    string array for stream types (e.g. 'media','alarm','notification')
  return value    : unsigned int for PID
                    string for return message
                    - success          : "STREAM_MANAGER_RETURN_OK"
                    - no match found   : "STREAM_MANAGER_RETURN_ERROR_NO_STREAM"
                    - invalid argument : "STREAM_MANAGER_RETURN_ERROR_INVALID_ARGUMENT"

[Version] 11.1.39
[Issue type] New feature

Change-Id: Idaa2f56ed5d27d001f5e4ce566b1b361d6248388
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager-dbus: Fix bug of error case 79/202979/1
Sangchul Lee [Mon, 8 Apr 2019 08:00:54 +0000 (17:00 +0900)]
stream-manager-dbus: Fix bug of error case

Invalid parameters of dbus_message_append_args() are fixed.

[Version] 11.1.38
[Issue type] Bug fix

Change-Id: I2c03e3690780a468d076f4b12581f5ffd3249529
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager-volume: Apply individual volume ratio 48/202848/1
Sangchul Lee [Fri, 5 Apr 2019 03:22:49 +0000 (12:22 +0900)]
stream-manager-volume: Apply individual volume ratio

In Tizen, a stream has one volume type such as media, notification,
alarm. Each type is so-called a volume group which has its own volume
value of a certain volume level. Therefore, all streams that belong to
the same volume group have the same volume value of the group.

This patch adds to calculate volume value including the individual
volume ratio of each stream's volume value to the value of its volume
group.

[Version] 11.1.37
[Issue type] New feature

Change-Id: Ie3099f37ec8f2e513b828bfc11b4dcbdb2572954
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager-volume: Revise codes to improve readability 54/202154/1
Sangchul Lee [Mon, 25 Mar 2019 08:49:41 +0000 (17:49 +0900)]
stream-manager-volume: Revise codes to improve readability

[Version] 11.1.36
[Issue type] Refactoring

Change-Id: Ieb917f9e6b7b068cd934304bc923cb86bac35615
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager: Consider virtual streams when a device connection is changed 55/201455/1 accepted/tizen/unified/20190325.070912 submit/tizen/20190322.073406
Sangchul Lee [Thu, 14 Mar 2019 08:01:11 +0000 (17:01 +0900)]
stream-manager: Consider virtual streams when a device connection is changed

Null device of a virtual stream is taken into account in case of the device
connection changes.

The device of the virtual stream should always be a null device. In addition,
the available device defined in stream-map.json for virtual stream type is
used to set the audio routing path of internal codec, so these information
must propagate to the audio HAL properly.

[Version] 11.1.35
[Issue type] Bug fix

Change-Id: Idb18334db04ed7d28ca657b1e58a4bb263e6af73
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager: Add callback for ramp finished 38/201338/2
Sangchul Lee [Fri, 8 Mar 2019 06:07:33 +0000 (15:07 +0900)]
stream-manager: Add callback for ramp finished

[Version] 11.1.34
[Issue type] New feature

Change-Id: Ibdf744e79efd08da4c8083f6be2d657a4be7b116
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-dbus: Fix SVACE defect (DEREF_OF_NULL.RET.STAT) 52/201152/4 accepted/tizen/unified/20190312.113000 submit/tizen/20190312.054958
Seungbae Shin [Mon, 11 Mar 2019 02:28:29 +0000 (11:28 +0900)]
device-manager-dbus: Fix SVACE defect (DEREF_OF_NULL.RET.STAT)

in addition, all other usages for pa_streq is also replaced by pa_safe_streq

[Version] 11.1.33
[Issue type] SVACE

Change-Id: I0b959cc6687a04d0e96c603f22287c944ab9df88

5 years agostream-manager: Save mute state to vconf 26/199826/2 accepted/tizen/unified/20190221.015450 submit/tizen/20190220.021455
Sangchul Lee [Tue, 29 Jan 2019 06:03:19 +0000 (15:03 +0900)]
stream-manager: Save mute state to vconf

[Version] 11.1.32
[Issue type] Enhancement

Change-Id: If866ff2fe8489de4bfd28a4ceb9ccf1df27f7542
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agotizenaudio-policy: Apply volume type to output stream of module-loopback 20/197420/1
Sangchul Lee [Fri, 11 Jan 2019 05:38:21 +0000 (14:38 +0900)]
tizenaudio-policy: Apply volume type to output stream of module-loopback

Output stream of module-loopback has not been applied volume type.
It is fixed and now it is possible to control the volume of the
output stream in case of loopback feature if a volume type is defined
to the loopback role in stream-map.json.

Here's an example to use media volume type.(in stream-map.json)
  {
    "role":"loopback",
    "priority" : 2,
    "route-type" : "manual",
    "volume-types":{"in":"none","out":"media"},
    "avail-in-devices":["builtin-mic","usb-audio"],
    "avail-out-devices":["builtin-speaker","usb-audio","bt-a2dp"],
    "avail-frameworks":["sound-manager"]
  },

Change-Id: I8335f84817ff6a3d7282c283c150c96baccf6f99
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-dbus: Fix build break 08/194008/1 accepted/tizen/unified/20181130.064945 submit/tizen/20181129.045552
Sangchul Lee [Wed, 28 Nov 2018 07:43:32 +0000 (16:43 +0900)]
device-manager-dbus: Fix build break

It is revised according to the pulseaudio patch.
 : 'Sync with upstream code' (78c3d68d7183f0daa9e0570de24f0be92bac3659)

[Version] 11.1.30
[Issue type] Build break

Change-Id: Ic1cf6e95b676d1fecd777d5266d9d1d4998084cb
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agotizenaudio-sink/source: Remove card of module argument 16/191516/1 accepted/tizen/unified/20181107.082057 submit/tizen/20181106.060307
Sangchul Lee [Thu, 18 Oct 2018 02:49:24 +0000 (11:49 +0900)]
tizenaudio-sink/source: Remove card of module argument

This card argument is removed and is incorporated into the
device argument. User can pass the device argument as below.

e.g.) in case of card 0, device 0
  device=0,0 rate=44100

device-manager is also revised to parse the device-string from
device-map.json properly in case of device class is for tizen.

[Version] 11.1.29
[Issue type] Bug fix

Change-Id: I56d99dbc29ad7729c5842e41110f7f0c24478fee
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-db: Copy string value from dbus_message_get_args() 73/190373/1 accepted/tizen/5.0/unified/20181102.015408 accepted/tizen/unified/20181002.093230 submit/tizen/20181001.090235 submit/tizen_5.0/20181101.000003
Sangchul Lee [Mon, 1 Oct 2018 08:53:08 +0000 (17:53 +0900)]
device-manager-db: Copy string value from dbus_message_get_args()

[Version] 11.1.28
[Issue type] Bug fix

Change-Id: Ie8c3823352a357c115a4f23f59aa88fd9a92ee8e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-dbus: Fix bug to add condition to check 'none' for normal operation 46/190346/3 submit/tizen/20181001.072114
Sangchul Lee [Mon, 1 Oct 2018 07:05:42 +0000 (16:05 +0900)]
device-manager-dbus: Fix bug to add condition to check 'none' for normal operation

The 'none' value is to unset operation of SetSpecifcStreamOnly method.
It should not be handled as an invalid value.

[Version] 11.1.27
[Issue type] Bug fix

Change-Id: I6daed542ec48736ed9bc00573a03a6bacf1ffc05
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager: Add DEVICE_TYPE_RAOP 96/188796/2 accepted/tizen/unified/20180928.142113 submit/tizen/20180919.075319 submit/tizen/20180928.040923
Seungbae Shin [Tue, 10 Jul 2018 02:54:24 +0000 (11:54 +0900)]
device-manager: Add DEVICE_TYPE_RAOP

[Version] 11.1.26
[Issue type] Feature

Change-Id: I6ee61d3a0837dca6b1061153fb5c445dc0b7d3de

5 years agodevice-manager-dbus: Add new DBus method to get device state 28/187828/2 accepted/tizen/unified/20180830.060737 submit/tizen/20180829.052026
Sangchul Lee [Tue, 28 Aug 2018 23:22:57 +0000 (08:22 +0900)]
device-manager-dbus: Add new DBus method to get device state

IsDeviceRunningById
 : arg#1 (in)  int32 for device_id
   arg#2 (out) boolean for running state

[Version] 11.1.25
[Issue type] new API

Change-Id: I26c280b9cb4e5da19196af11880e38e840f8f3b8
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-dbus: Change error type 42/185842/1 accepted/tizen/unified/20180808.063326 submit/tizen/20180803.035306
Sangchul Lee [Fri, 3 Aug 2018 01:06:43 +0000 (10:06 +0900)]
device-manager-dbus: Change error type

[Version] 11.1.24
[Issue type] Error value

Change-Id: If037f520d67d474927d9f210dd28e350ed98ee84
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-dbus: Fix to use simple array instead of struct array for out parameter 14/185614/1 accepted/tizen/unified/20180802.090219 submit/tizen/20180801.073115
Sangchul Lee [Tue, 31 Jul 2018 01:46:33 +0000 (10:46 +0900)]
device-manager-dbus: Fix to use simple array instead of struct array for out parameter

[Version] 11.1.23
[Issue type] Enhancement

Change-Id: I7911fdc8de2768a9b88a0acb55f11c16ad240140
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-dbus: Functions related to DBus are moved to a new file 80/185080/2 submit/tizen/20180731.004631
Sangchul Lee [Thu, 26 Jul 2018 03:21:46 +0000 (12:21 +0900)]
device-manager-dbus: Functions related to DBus are moved to a new file

Files are added as below:
 device-manager-dbus.c
 device-manager-dbus-priv.h

[Version] 11.1.22
[Issue type] Refactor

Change-Id: I3fa759f4c3973b2106d2b5d2b1b2e9db6b5bbd7a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-db: Fix passing argument after free 77/184877/1
Sangchul Lee [Tue, 24 Jul 2018 05:03:11 +0000 (14:03 +0900)]
device-manager-db: Fix passing argument after free

SVACE issue (#348982)

[Version] 11.1.21
[Issue Type] Bug fix

Change-Id: If74b99d49314c7839637875a21fc2e93bfa3ecbc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agoUse new HAL pcm open interface which has card and device parameters 57/182557/6 accepted/tizen/unified/20180726.064848 submit/tizen/20180724.034640
Jungsup Lee [Tue, 26 Jun 2018 05:16:41 +0000 (14:16 +0900)]
Use new HAL pcm open interface which has card and device parameters

[Version] 11.1.20
[Profile] Common
[Issue Type] Interface

Change-Id: I1da405ee91bb3abfaff62d1277b3c0def35c2e86

5 years agodevice-manager: Apply preferences which are saved via Dbus APIs 67/184167/1 accepted/tizen/unified/20180718.071606 submit/tizen/20180718.011600
Sangchul Lee [Fri, 13 Jul 2018 07:10:16 +0000 (16:10 +0900)]
device-manager: Apply preferences which are saved via Dbus APIs

If user set a sample rate, a format and an option of avoid-resampling
for a specific USB device, it will be saved to system and loaded/applied
when the device is connected again.

[Version] 11.1.19
[Issue Type] New feature

Change-Id: I50c62272428eeed1a01b0613f0e82a49b5be272f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager: Fix to apply reconfiguration even though there's no stream on a sink 41/184141/2
Sangchul Lee [Mon, 16 Jul 2018 02:23:37 +0000 (11:23 +0900)]
device-manager: Fix to apply reconfiguration even though there's no stream on a sink

The foreach statement to trigger the reconfiguration function is also removed.

[Version] 11.1.18
[Issue Type] Bug fix

Change-Id: Ib0682711161d0a8621ddcfd064068aa0080b2624
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager-db: Add functions to write/read preference setting to database 81/183981/1
Sangchul Lee [Thu, 12 Jul 2018 08:47:48 +0000 (17:47 +0900)]
device-manager-db: Add functions to write/read preference setting to database

Files are added as below:
 device-manager-db.c
 device-manager-db-priv.h
 device-manager-priv.h

[Version] 11.1.17
[Issue Type] New feature

Change-Id: If455049846440524c7dcf4b43049438249ed6254
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager: Add Dbus interfaces to set/get avoid-resampling feature 17/183717/2
Sangchul Lee [Tue, 10 Jul 2018 08:24:19 +0000 (17:24 +0900)]
device-manager: Add Dbus interfaces to set/get avoid-resampling feature

Methods are added as below
 - SetAvoidResampling
    : arg#1 (in)  int32 for device_id
      arg#2 (in)  boolean for enable/disable
 - GetAvoidResampling
    : arg#1 (in)  int32 for device_id
      arg#2 (out) boolean for enabled/disabled

Those APIs are only for usb output device.
Note that the functionality of setting '0' with SetSampleRate method
is totally moved to this SetAvoidResampling method.

[Version] 11.1.16
[Issue Type] New feature

Change-Id: I0f90b1b277349f86b1017b30203260caa3b83243
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager: Add Dbus interfaces related to sample format of usb device 32/182832/3
Sangchul Lee [Thu, 28 Jun 2018 08:19:54 +0000 (17:19 +0900)]
device-manager: Add Dbus interfaces related to sample format of usb device

Methods are added as below
 - GetSupportedSampleFormats
    : arg#1 (in)  int32 for device_id
      arg#2 (out) string array for sample_formats
 - SetSampleFormat
    : arg#1 (in)  int32 for device_id
      arg#2 (in)  string for sample_format
 - GetSampleFormat
    : arg#1 (in)  int32 for device_id
      arg#2 (out) string for sample_format

Those APIs are only for usb output device.

[Version] 11.1.15
[Issue Type] New feature

Change-Id: I07e42098fabcf2d4ea8efe486c1da63da3741722
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager: Fix to avoid assertion if the device type is not valid 73/183473/1
Sangchul Lee [Thu, 5 Jul 2018 03:15:41 +0000 (12:15 +0900)]
device-manager: Fix to avoid assertion if the device type is not valid

[Version] 11.1.14
[Issue Type] Enhancement

Change-Id: I20fac43a9fee73eb20fcbf309c0c6a9bbc6bdd34
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agoFix SVACE defects 37/183037/5 accepted/tizen/unified/20180703.062143 submit/tizen/20180702.071334 submit/tizen/20180702.102759
Seungbae Shin [Mon, 2 Jul 2018 02:29:06 +0000 (11:29 +0900)]
Fix SVACE defects

[Version] 11.1.13
[Issue Type] SVACE

Change-Id: I0daf43bcc7ab9c83a0f507eccd6fd8e2ff46624e

5 years agoFix use-after-free bug for idxset free 47/182447/3 submit/tizen/20180626.020615
Seungbae Shin [Mon, 25 Jun 2018 08:02:12 +0000 (17:02 +0900)]
Fix use-after-free bug for idxset free

[Version] 11.1.12
[Issue Type] Bug Fix

Change-Id: I342a61f69fd7f0705509f785dd82652839514262

5 years agodevice-manager, stream-manager: Add to check valid stream role 00/179200/3 accepted/tizen/unified/20180611.015423 submit/tizen/20180607.021137
Sangchul Lee [Wed, 16 May 2018 08:14:02 +0000 (17:14 +0900)]
device-manager, stream-manager: Add to check valid stream role

pa_stream_manager_is_valid_stream_role() is added.

[Version] 11.1.11
[Issue Type] Enhancement

Change-Id: I9448722e66212ca26c6d09f9e645f0ad8717ab67
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-manager: Change functions of init/done to get/ref/unref 99/179199/3
Sangchul Lee [Wed, 16 May 2018 08:13:21 +0000 (17:13 +0900)]
stream-manager: Change functions of init/done to get/ref/unref

[Version] 11.1.10
[Issue Type] Enhancement

Change-Id: I08024adfefe376043293c38c9dbedf4f0a69f539
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agotizenaudio-policy: Check specified stream role to skip selecting in case of usb device 11/178911/4
Sangchul Lee [Mon, 14 May 2018 03:27:36 +0000 (12:27 +0900)]
tizenaudio-policy: Check specified stream role to skip selecting in case of usb device

[Version] 11.1.9
[Issue Type] New feature

Change-Id: I89f6aba8c6ab9bdf2ccd5aa6cc55c7cf183274b7
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager: Add Dbus interfaces to specify stream role to usb device 10/178910/4
Sangchul Lee [Fri, 11 May 2018 07:58:32 +0000 (16:58 +0900)]
device-manager: Add Dbus interfaces to specify stream role to usb device

Methods are added as below
 - SetSpecificStreamOnly
    : arg#1 (in)  int32 for device_id
      arg#2 (in)  string for stream_role
 - GetSpecifiedStream
    : arg#1 (in)  int32 for device_id
      arg#2 (out) string for stream_role

This information will be used in policy logic to determine which
stream is available for the usb device according to the value.

pa_tz_device_get_specified_stream_role() is also added in tizen-device.c

[Version] 11.1.8
[Issue Type] New feature

Change-Id: I63cbf5e386ab6863c30a6791e4c158cb8eb8c616
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agodevice-manager: Add Dbus interfaces related to sample rate of usb device 09/178909/3
Sangchul Lee [Fri, 11 May 2018 01:44:57 +0000 (10:44 +0900)]
device-manager: Add Dbus interfaces related to sample rate of usb device

Methods are added as below
 - GetSupportedSampleRates
    : arg#1 (in)  int32 for device_id
      arg#2 (out) uint32 array for sample_rates
 - SetSampleRate
    : arg#1 (in)  int32 for device_id
      arg#2 (in)  uint32 for sample_rate
 - GetSampleRate
    : arg#1 (in)  int32 for device_id
      arg#2 (out) uint32 for sample_rate

1. Those APIs are only for usb output device.
2. Here's description about setting sample rate to '0'.
 If sample rate is set to '0', it will work to use stream's original sample
 rate if the usb device supports the sample rate. In this case, if the
 stream's sample rate is lower than default and alternate sample rate of
 pulseaudio configuration, it will use the default or the alternate sample
 rate. When mixing case happens in the same usb device, the sample rate of
 the prior stream will be maintained.

[Version] 11.1.7
[Issue Type] New feature

Change-Id: I7f82d5aefbc84e0641fc05dab86bc89def897c66
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agotizen-device: Add to initialize related member variable of sink/source before freeing... 73/180573/1 submit/tizen/20180531.062400
Sangchul Lee [Thu, 31 May 2018 02:55:45 +0000 (11:55 +0900)]
tizen-device: Add to initialize related member variable of sink/source before freeing device

[Version] 11.1.6
[Issue Type] Bug fix

Change-Id: Ifd0f354e82b3c96ccf7ccb34f87308e00ae5183a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
6 years agoReplace mm-hal-interface by mm-hal-interface-devel 90/177290/1 accepted/tizen/unified/20180427.131016 submit/tizen/20180427.022926 submit/tizen/20180430.020534
Jeongmo Yang [Fri, 27 Apr 2018 01:23:41 +0000 (10:23 +0900)]
Replace mm-hal-interface by mm-hal-interface-devel

- The header files have been moved to mm-hal-interface-devel package

[Version] 11.1.5-1
[Issue Type] Build

Change-Id: Icdddca03bf7b27dc3cf656d1a0188026dc83cb5a
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
6 years agoFix for coverity defects 96/176796/1 accepted/tizen/unified/20180424.165708 submit/tizen/20180424.040057
Seungbae Shin [Mon, 23 Apr 2018 11:38:59 +0000 (20:38 +0900)]
Fix for coverity defects

[Version] 11.1.5
[Issue Type] Security

Change-Id: I8b22ee1451f91e294e59e07d33ac53cb7208a27e

6 years agoFix for TV product build macro 77/176777/1
Seungbae Shin [Mon, 23 Apr 2018 10:15:40 +0000 (19:15 +0900)]
Fix for TV product build macro

[Version] 11.1.4
[Issue Type] Build

Change-Id: I285976c73c3716bf12c280e67d002df53bfcd628

6 years agodevice-manager: Skip notifying change of running state in case of null sink/source... 50/176550/1 accepted/tizen/unified/20180420.152047 submit/tizen/20180420.042319
Sangchul Lee [Fri, 20 Apr 2018 03:22:17 +0000 (12:22 +0900)]
device-manager: Skip notifying change of running state in case of null sink/source explicitly.

null sink/source can not be represented as a device of device-manager.

[Version] 11.1.3
[Issue Type] Bug fix

Change-Id: I7e3d353acd703e1da754fd83e374bba33e14b02c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
6 years agoFix json-c depreacted macro (is_error) usage. 40/176440/1 submit/tizen/20180419.083101
Seungbae Shin [Thu, 19 Apr 2018 08:00:19 +0000 (17:00 +0900)]
Fix json-c depreacted macro (is_error) usage.

[Version] 11.1.2
[Issue Type] Deprecation

Change-Id: I7c21aaf4af36b5de3eeadc17182eaf616b1ffd28

6 years agostream-manager-dbus: Remove codes regarding session backward compatibility 91/174591/1
Sangchul Lee [Tue, 3 Apr 2018 05:06:06 +0000 (14:06 +0900)]
stream-manager-dbus: Remove codes regarding session backward compatibility

[Version] 11.1.1
[Issue Type] Code clean-up

Change-Id: If5dec7bc5c8dd95a3c0586c8e0bec1018de093d0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
6 years agoModification for core version upgrade 05/167605/6 accepted/tizen/unified/20180227.062920 submit/tizen/20180226.072000
Seungbae Shin [Thu, 18 Jan 2018 14:36:01 +0000 (23:36 +0900)]
Modification for core version upgrade

[Version] 11.1.0
[Issue Type] Core Upgrade

Change-Id: I80c07bc225b5d732900610d5d0e06d036d83c424

6 years agoAdd support for new device state for running 01/157801/2 accepted/tizen/unified/20171108.063450 submit/tizen/20171107.074009
Sangchul Lee [Tue, 26 Sep 2017 00:40:23 +0000 (09:40 +0900)]
Add support for new device state for running

This new state represents if a device is running or not.
If a stream is though a device, the state of the device will be changed to
the running state. Notifications regarding this are provided as well.

[Version] 5.0.176
[Issue Type] New feature

Change-Id: I8e5cad3e47b1e31e21c230985ab721e23afdaad0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>