platform/core/uifw/tts.git
6 weeks agochange background_volume_ratio type in migration script 87/308987/1
dyamy-lee [Wed, 3 Apr 2024 08:49:17 +0000 (17:49 +0900)]
change background_volume_ratio type in migration script

In tizen_8.0, it uses interger value about background_volume_ratio.
So, when it upgrade from 7.0 to 8.0, it's data type also changes together.

Change-Id: I3f3d5c10cc1fb940a8da529898a0ffd0bcb087e5

6 weeks agoMerge "Update version (1.90.5)" into tizen
DaYe Lee [Wed, 3 Apr 2024 08:30:31 +0000 (08:30 +0000)]
Merge "Update version (1.90.5)" into tizen

6 weeks agoremove vconf set 79/308979/1
dyamy-lee [Wed, 3 Apr 2024 08:16:36 +0000 (17:16 +0900)]
remove vconf set

Because just using 780154BackupVonfKey save previous value. So, set is not needed

Change-Id: Id0f63d95c645d271a63d4ec24d026dfbd5b09ae1

6 weeks agochange the src,dst file path for only tts 65/308965/2
dyamy-lee [Wed, 3 Apr 2024 05:45:51 +0000 (14:45 +0900)]
change the src,dst file path for only tts

/usr/data/.voice directroy can be used with other voice framework.
So, only mv tts directory. And, following that change, rename it.

Change-Id: I28233bd5811e3403a92ee4421d217381f382267c

6 weeks agochange the chmod for tts-config.xml 64/308964/1
dyamy-lee [Tue, 2 Apr 2024 09:37:36 +0000 (18:37 +0900)]
change the chmod for tts-config.xml

when data migration, previous version in home directory has their authority as 600.
but when root directory after 8.0, it needs 664(rw-rw-r).
If it doesn't apply, it is working fail.

Change-Id: Ib0a6956b9b41f04b8ad6eb6d1b8eb6d1450380fe

6 weeks agoUpdate version (1.90.5) 64/308864/1
dyamy-lee [Tue, 2 Apr 2024 05:22:31 +0000 (14:22 +0900)]
Update version (1.90.5)

Change-Id: Ieec47426f5c9e83f018521a8e50ef8ca479daec1

6 weeks agoAdd DataMigration Script for OSU 25/308625/5
dyamy-lee [Thu, 28 Mar 2024 07:41:34 +0000 (16:41 +0900)]
Add DataMigration Script for OSU

When it does OS Upgrade, previous RW data will be initialized.
So, this patch provide keeping the previous configuration with migration script.

Change-Id: Id484c0537ed406fed37ff7e6f5a6db202b9bedae

2 months agoSet sound stream info regardless of TTS mode and Update version (1.90.4) 28/308028/1
sooyeon [Fri, 15 Mar 2024 09:10:10 +0000 (18:10 +0900)]
Set sound stream info regardless of TTS mode and Update version (1.90.4)

- Issue:
In Tizen 7.0 FHub, there is a case that TTS sound volume becomes low.
When the sound focus is not acquired, the sound stream info is not set, either.

- Solution:
Regardless of TTS mode, we made the sound stream info set.

Change-Id: Idce4f621279d05245ce2b0ddc1498915d30b0bcc
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
2 months agoFix gcov QB build error and Update version (1.90.3) 92/307692/1 accepted/tizen_unified accepted/tizen_unified_x accepted/tizen/unified/20240313.134607 accepted/tizen/unified/20240313.135633 accepted/tizen/unified/x/20240314.073257
sooyeon [Tue, 12 Mar 2024 08:29:30 +0000 (17:29 +0900)]
Fix gcov QB build error and Update version (1.90.3)

Change-Id: Ifaf2952de2e67f997a0e9c056d477203c1154d94
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
2 months agoMerge "Make not to acquire sound focus when screen reader and notification modes...
Sooyeon Kim [Tue, 12 Mar 2024 06:27:55 +0000 (06:27 +0000)]
Merge "Make not to acquire sound focus when screen reader and notification modes" into tizen

2 months agoUpdate version (1.90.2) 40/307440/1
sooyeon [Fri, 8 Mar 2024 08:22:04 +0000 (17:22 +0900)]
Update version (1.90.2)

Change-Id: I45b430f937032e15ea8754a0dc238dd9f0ef2985
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
2 months agoMake not to acquire sound focus when screen reader and notification modes 38/307438/1
sooyeon [Fri, 8 Mar 2024 08:09:53 +0000 (17:09 +0900)]
Make not to acquire sound focus when screen reader and notification modes

- Issue:
In Tizen 7.0 FHub, media-type playing is stopped, because TTS screen-reader mode acquires a sound focus.

- Solution:
Rollback to the previous TTS sound focus policy.
* Default / Interrupt modes: acquire sound focus
* Screen-reader / Notification modes: NOT acquire sound focus

Change-Id: I73a63743f20e341988db42190435ca9ade271eba
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
(cherry picked from commit ff6316a4b2a1d4ece22c949486d038e8561b0e26)

2 months agoMerge "Fix svace issue (add null checker)" into tizen
Sooyeon Kim [Thu, 7 Mar 2024 03:15:57 +0000 (03:15 +0000)]
Merge "Fix svace issue (add null checker)" into tizen

2 months agoMerge "Update version (1.90.1)" into tizen accepted/tizen_unified_toolchain accepted/tizen/unified/20240219.160454 accepted/tizen/unified/toolchain/20240311.065811 accepted/tizen/unified/x/20240220.150006
Suyeon Hwang [Mon, 19 Feb 2024 06:25:58 +0000 (06:25 +0000)]
Merge "Update version (1.90.1)" into tizen

2 months agoFix volume conversion parameter to 100 for better readability 41/306241/3
Suyeon Hwang [Mon, 19 Feb 2024 06:15:39 +0000 (15:15 +0900)]
Fix volume conversion parameter to 100 for better readability

Change-Id: I97802a658d60344b30efcefaa469d03328e731da
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
2 months agoUpdate version (1.90.1) 35/305935/4
Suyeon Hwang [Wed, 14 Feb 2024 02:29:37 +0000 (11:29 +0900)]
Update version (1.90.1)

Change-Id: I40d95c3fbf097d12a5113defc4636e1d28d4f5a5
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
2 months agoSave volume ratio as integer value to the config file 80/306180/3
Suyeon Hwang [Fri, 16 Feb 2024 11:35:46 +0000 (20:35 +0900)]
Save volume ratio as integer value to the config file

- Issue:
According to the app locale, sometimes the framework can fail to get
proper background volume ratio value from the configuration file.

- Solution:
This patch fixes the logic for saving background volume ratio value.
According to the spec. of snprintf() and atof(), these functions are
affected by the app locale. Thus, the app can represent the floating
point value with different way by the locale. And this can cause the
failure of getting proper value.
To avoid this situation, this patch converts the volume ratio as integer
value. Through this change, the locale will not affect the
representation for the volume ratio.

Change-Id: Ieb5c80098b91d56801b98183e8c524db6cf1b0bc
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
2 months agoFix ducking deactivation retrial logic 44/306044/3
Suyeon Hwang [Thu, 15 Feb 2024 12:47:58 +0000 (21:47 +0900)]
Fix ducking deactivation retrial logic

- Issue:
If the ducking deactivation is failed, the retrial for the failure can
be performed after a long period of time.

- Solution:
This patch fixes the logic for the retrial. Through this patch, the code
reset the interval of the timer to zero. The deactivation failure should
be caused by a minor timing issue, so it will only take a short period
of time. So, this patch can make faster the retrial latency.
And also this patch includes some minor coding covention fix.

Change-Id: I540fb25b7bc2c8b3099046d8bca98b267afa95e4
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
3 months agoFix svace issue (add null checker) 81/306081/1
sooyeon [Fri, 16 Feb 2024 05:04:34 +0000 (14:04 +0900)]
Fix svace issue (add null checker)

Change-Id: Ie3608f29bc7a397eba91a392160a68fd9c08f40b
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
3 months agoFix coverity issue (adding lock) 63/306063/1
sooyeon [Fri, 16 Feb 2024 02:50:09 +0000 (11:50 +0900)]
Fix coverity issue (adding lock)

Change-Id: Ica3706e62a5cbcfa29d5a31d497fb46f1915b21d
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
3 months agoMerge changes I41b91634,I2fa72eaf,I8fa79f7c into tizen
Suyeon Hwang [Wed, 14 Feb 2024 02:28:11 +0000 (02:28 +0000)]
Merge changes I41b91634,I2fa72eaf,I8fa79f7c into tizen

* changes:
  Remove screen reader check from tts_stop()
  Retry ducking deactivation when it is failed
  Remove unnecessary variables for controlling thread

3 months agoAdded mutex lock for avoiding the data race condition 49/305649/2 accepted/tizen/unified/20240207.171607 accepted/tizen/unified/x/20240208.022950
dyamy-lee [Tue, 6 Feb 2024 03:17:08 +0000 (12:17 +0900)]
Added mutex lock for avoiding the data race condition

When it updates g_config_info, it needs mutex lock for preventing the data race condition.
When it accesses g_app_list, it needs mutex lock for preventing the data race condition.

Change-Id: I7b094b377a81e1e4fa35bf6cf6332a6baef8f83e

3 months agoconsider memory leak issue 52/305252/1
dyamy-lee [Tue, 30 Jan 2024 09:39:31 +0000 (18:39 +0900)]
consider memory leak issue

There is no case about temp->default_lang is not null.
However, it couldn't sure that if the function's logic is changed.
So, this added the free() for considering if temp->default_lang is not null case

Change-Id: I226c248853301051c5444593d1297ef03a24ac98

3 months agoadd null check before calling strdup 45/305245/1
dyamy-lee [Tue, 30 Jan 2024 00:53:19 +0000 (09:53 +0900)]
add null check before calling strdup

Change-Id: Ib161b1b67c0e104d5169d204365e3b3920a57199

3 months agoRemove screen reader check from tts_stop() 24/304624/1
Suyeon Hwang [Mon, 22 Jan 2024 11:19:23 +0000 (20:19 +0900)]
Remove screen reader check from tts_stop()

- Issue:
App receives screen_reader_off error when the app call tts_stop() on
playing state.

- Solution:
The screen reader mode is only available when the screen reader option
is on. So, the framework checks the screen reader option when the client
sets the screen reader mode. However, sometimes the client wants to stop
playing TTS to handle screen reader off situation. But, in this case,
the client has to get the screen_reader_off error because of the reason
that described above.
Thus, this patch removes the screen reader option check logic from the
tts_stop() function. Through this change, the client can stops the TTS
playback even though the client sets the screen reader mode.

Change-Id: I41b91634d3aaa1fd0fd4cc6dc3198a9baa9d46a1
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
4 months agoRetry ducking deactivation when it is failed 83/304383/1
Suyeon Hwang [Tue, 16 Jan 2024 13:12:35 +0000 (22:12 +0900)]
Retry ducking deactivation when it is failed

- Issue:
Sometimes ducking deactivation can be failed and does not recovered.

- Solution:
This patch adds the logic for retrying ducking deactivation if the
deactivation is failed. In most case, deactivation is not failed because
previous logic also calcualtes the ducking duration. However, some
unknown reason, deactivation can be failed. So this patch makes the
framework handle this situation.

Change-Id: I2fa72eafa5d095b1a44dd9aadc281cfcb16429c4
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
4 months agoRemove unnecessary variables for controlling thread 11/304211/1
Suyeon Hwang [Fri, 12 Jan 2024 05:53:34 +0000 (14:53 +0900)]
Remove unnecessary variables for controlling thread

- Issue:
When PlayerThread is destructing, main thread can be in deadlock.

- Solution:
This patch removes unnecessary condition variable and mutex for thread.
The root cause of the deadlock is because of the wrong usage of two
different mutex for controlling single thread. This patch simplifies the
thread function and thread controlling logic using timed_mutex and
condition_variable_any. Through this change, the PlayerThread instance
can clear the reserved thread more quickly.

Change-Id: I8fa79f7c4e25595641fc651394e550d545360f75
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
4 months agoUpdate version (1.90.0) 93/303993/1
wn.jang [Tue, 9 Jan 2024 02:46:02 +0000 (11:46 +0900)]
Update version (1.90.0)

Change-Id: I9d7a2d93b019cde53ef733fdcea636f8b7b402ea

4 months agoDelay quitting ecore main loop for 30s 55/303655/2
wn.jang [Wed, 3 Jan 2024 05:46:23 +0000 (14:46 +0900)]
Delay quitting ecore main loop for 30s

While the tts engine is terminating for 100ms, if the tts client try to connect to the engine,
the tts client is connected to the engine, which will be terminated.
And tts client can't request to launch tts engine by rpc port.

Change-Id: I8ac258d9aa26877ef19205278245b84506a1f5b9

4 months agoMerge "Fix race condition when player thread is terminated" into tizen
Wonnam Jang [Wed, 3 Jan 2024 05:35:30 +0000 (05:35 +0000)]
Merge "Fix race condition when player thread is terminated" into tizen

4 months agoFix race condition when player thread is terminated 13/303513/1
wn.jang [Fri, 29 Dec 2023 05:43:59 +0000 (14:43 +0900)]
Fix race condition when player thread is terminated

Change-Id: I1db88e6f4f308e59eb1ff6122733e17361d36a7b

5 months agoUpdate since_tizen in header files 65/302365/1
sooyeon [Wed, 6 Dec 2023 01:58:05 +0000 (10:58 +0900)]
Update since_tizen in header files

Change-Id: I8741705d9588a1b899615c1d8999832537700cee
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
5 months agoUpdate version (1.80.10) 31/302131/1 accepted/tizen_unified_riscv accepted/tizen/unified/20231205.024654 accepted/tizen/unified/riscv/20231211.234133
Suyeon Hwang [Fri, 1 Dec 2023 01:35:09 +0000 (10:35 +0900)]
Update version (1.80.10)

Change-Id: Ie565a2e7a10c366a560bbb2072dd2f1fd7a00250
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
5 months agoMerge "Remove unnecessary sub thread checking logic" into tizen
Suyeon Hwang [Fri, 1 Dec 2023 01:34:42 +0000 (01:34 +0000)]
Merge "Remove unnecessary sub thread checking logic" into tizen

5 months agoRemove unnecessary sub thread checking logic 12/302112/1
Suyeon Hwang [Thu, 30 Nov 2023 10:03:20 +0000 (19:03 +0900)]
Remove unnecessary sub thread checking logic

- Issue:
Sometimes tts_destroy() is delayed without any reason.

- Solution:
This patch removes unncessary logic for checking active ecore sub
thread. In old version, tts.c module makes a sub thread for some reason
so the framework should check the active subthread for safe handle
destroy. However, since tizen 7.0, tts.c module does not make a sub
thread any more. And only the tts_core.c makes some sub thread and those
sub threads are completely controlled by the framework. So the checking
logic in tts.c is unncessary now.

Change-Id: I5f2ea8aa16f65e82e94332c046ae74ffba569f78
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
5 months agoMerge "Fix potential memory leak" into tizen
Sooyeon Kim [Mon, 27 Nov 2023 07:02:38 +0000 (07:02 +0000)]
Merge "Fix potential memory leak" into tizen

5 months agoMerge "Fix svace issue (resolve memory leak)" into tizen
Sooyeon Kim [Mon, 27 Nov 2023 07:02:33 +0000 (07:02 +0000)]
Merge "Fix svace issue (resolve memory leak)" into tizen

6 months agoFix potential memory leak 45/301245/1
sooyeon [Mon, 13 Nov 2023 04:46:09 +0000 (13:46 +0900)]
Fix potential memory leak

Change-Id: Ie34bf3d8a9eb2a33edda06237023b1870d6eee94
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
6 months agoUpdate version (1.80.9) 33/300433/1 accepted/tizen/unified/20231026.032436
Suyeon Hwang [Wed, 25 Oct 2023 02:12:08 +0000 (11:12 +0900)]
Update version (1.80.9)

Change-Id: Ie332e0eec9f179abedd6b2b75104d00b692db685
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
6 months agoFix thread suspend logic for pkgmgr_thread 10/300410/1
Suyeon Hwang [Tue, 24 Oct 2023 06:33:44 +0000 (15:33 +0900)]
Fix thread suspend logic for pkgmgr_thread

- Issue:
If pkgmgr_client_new() is continously failed, pkgmgr_thread can sleep
very long time and this can cause deadlock when the app tries to destroy
the handle.

- Solution:
To reduce the error log, gradually increased suspend time logic was
added in pkgmgr thread. However, the suspend time could increase
without limitation and this long suspend time might cause critical
deadlock.
To solve this problem, this patch changes the suspend logic with
conditional variable. Using conditional variable, the framework will be
able to resume the thread and properly terminate it even if the suspend
time is too long. And also this patch adds a limitation for the suspend
time. So, even if the thread termination logic is failed, the thread
will be exited in a reasonable time.

Change-Id: I6e126464032a70dbf1d5f63a03c7a85c01ef0a8d
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
7 months agoFix svace issue (resolve memory leak) 33/299533/2
sooyeon [Wed, 4 Oct 2023 07:05:18 +0000 (16:05 +0900)]
Fix svace issue (resolve memory leak)

Change-Id: I803bbf8bd03bb056d3e4366bd87c2aecb9c4e739
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
7 months agoUpdate version (1.80.8) 66/299666/1
Suyeon Hwang [Fri, 6 Oct 2023 08:16:17 +0000 (17:16 +0900)]
Update version (1.80.8)

Change-Id: I6cfad6b0ff2de2339933d095c2799d7cdcfe0174
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
7 months agoStop player thread when an error occurs 24/299624/1
Suyeon Hwang [Thu, 5 Oct 2023 12:18:12 +0000 (21:18 +0900)]
Stop player thread when an error occurs

Change-Id: Iac55d6e61df0b9020d2db9f85e568df73809a898
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
7 months agoUpdate version (1.80.7) 45/299345/1 accepted/tizen/8.0/unified/20231005.094308 accepted/tizen/unified/20230926.161018
Suyeon Hwang [Tue, 26 Sep 2023 07:50:48 +0000 (16:50 +0900)]
Update version (1.80.7)

Change-Id: I787acb241b2fad84d81e5e649d37c70f9872c318
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
7 months agoUse safe function to avoid security issues 44/299344/1
Suyeon Hwang [Tue, 26 Sep 2023 07:40:25 +0000 (16:40 +0900)]
Use safe function to avoid security issues

Change-Id: I9d62fb45b44eaaf223aba5c6f58ed504ac6e3027
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
7 months agoUpdate version (1.80.6) 97/299297/1
Suyeon Hwang [Mon, 25 Sep 2023 10:37:12 +0000 (19:37 +0900)]
Update version (1.80.6)

Change-Id: Id140201ee2401e4918096ff8f256a999a2034b06
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
7 months agoRecord debug information for each TTS playback 20/299020/3
Suyeon Hwang [Mon, 18 Sep 2023 08:21:03 +0000 (17:21 +0900)]
Record debug information for each TTS playback

- Requirements:
The platform debugging tool wants to know the playback information for
each TTS requets if the debugger tool is run.

- Contents:
This patch adds new logic for recording the information about the TTS
playback. Through this patch, the platform level debugger tool can
access the information about playback.

Change-Id: I3245d49da8b7023eb7436f61311dfaa06d3f68a8
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
8 months agoUpdate version (1.80.5) 89/298689/1
wn.jang [Tue, 12 Sep 2023 09:52:27 +0000 (18:52 +0900)]
Update version (1.80.5)

Change-Id: I5b7555c8c2d51fc65414242d80bd77db930f7aa4

8 months agoChange unit of synthesized PCM data when calculating xRT 80/298680/1
wn.jang [Tue, 12 Sep 2023 08:57:06 +0000 (17:57 +0900)]
Change unit of synthesized PCM data when calculating xRT

Change-Id: Ia0465b4c9dc248659c6c78a3a3c86242fa0b7dcf

9 months agoUpdate version (1.80.4) 89/296289/1 accepted/tizen/unified/20230726.020659
wn.jang [Tue, 25 Jul 2023 03:00:38 +0000 (12:00 +0900)]
Update version (1.80.4)

Change-Id: I8ced794197ecd7e381c432f3ec300debf037ebc4

9 months agoMerge "Fix descriptions according to checking header tools" into tizen
Wonnam Jang [Tue, 25 Jul 2023 02:57:00 +0000 (02:57 +0000)]
Merge "Fix descriptions according to checking header tools" into tizen

9 months agoFix descriptions according to checking header tools 45/295845/2
wn.jang [Fri, 14 Jul 2023 10:11:36 +0000 (19:11 +0900)]
Fix descriptions according to checking header tools

Change-Id: I255cd2ce425fc0eac994996302da672f7ce479c9

9 months agoUpdate version (1.80.3) 21/296221/1
Suyeon Hwang [Mon, 24 Jul 2023 04:53:48 +0000 (13:53 +0900)]
Update version (1.80.3)

Change-Id: I468af7803bdf6863022413992a051b8593855c07
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
9 months agoFix typo in function and variable names 18/296018/2
Suyeon Hwang [Tue, 18 Jul 2023 10:21:24 +0000 (19:21 +0900)]
Fix typo in function and variable names

Change-Id: I55cb92a1b44c0d2e136baf1caa897a4826346c7f
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
10 months agoFix coding style for internal function and constant 10/296010/1
Suyeon Hwang [Tue, 18 Jul 2023 07:35:44 +0000 (16:35 +0900)]
Fix coding style for internal function and constant

- Contents:
This patch removes the two underscore identifier from function name. And
also this patch renames the constant variables to fit the common coding
convention.

Change-Id: I6df8cec4d4f35697a4a840889f49aa5f15dc88c3
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
10 months agoFix the description of each test cases 09/296009/1
Suyeon Hwang [Tue, 18 Jul 2023 07:23:08 +0000 (16:23 +0900)]
Fix the description of each test cases

- Content:
This patch fixes the description proper. It is no neccessary but this
change will help to understand each test cases.

Change-Id: I1be749e7c6c9fd01b35803fe7261c993b5d8e48b
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
10 months agoRemove unused or unreachable code 59/295159/2
Suyeon Hwang [Mon, 3 Jul 2023 08:42:49 +0000 (17:42 +0900)]
Remove unused or unreachable code

- Contents:
This patch removes some unused or unrechable code. Through this patch,
unvaluable code is removed and also test cases covers more code and
logics.

Change-Id: I7822086a9160fafd6014e6759508a6cf3cfaa2cb
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
10 months agoAdd new test cases to increse the coverage 58/295158/2
Suyeon Hwang [Mon, 3 Jul 2023 07:55:00 +0000 (16:55 +0900)]
Add new test cases to increse the coverage

- Contents:
This patch adds new test cases for uncovered line. Through this patch,
developers can check the behavior about specific situations.

Change-Id: I5e9175a9997ff26c58cd4b6ab31e05dd154b4408
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
10 months agoRefactor unit tests with utility class 57/295157/2
Suyeon Hwang [Fri, 30 Jun 2023 12:10:44 +0000 (21:10 +0900)]
Refactor unit tests with utility class

- Contents:
This patch fixes all unit tests using new utility class from previous
commit. Through this change, many duplicated codes in test cases can be
removed.

Change-Id: Ia869ae0b334e2505deaebbf9c9484bef36a58468
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
10 months agoAdd test utility class 56/295156/2
Suyeon Hwang [Thu, 29 Jun 2023 01:56:39 +0000 (10:56 +0900)]
Add test utility class

- Contents:
This patch introduces new utility class for test case. Through this
class, developers can easily make the test cases. This new class
provides many useful utility methods and frequently used code blocks.

Change-Id: Ife285e7e7bd065423197727bcaeb72219a3ecc8e
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
10 months agoChange error to no error, when speak data is empty 62/295362/2
wn.jang [Thu, 6 Jul 2023 05:14:48 +0000 (14:14 +0900)]
Change error to no error, when speak data is empty

Cause: In the __wait_synthesis() function, if the synth_control is changed from DOING
to DONE and there's no next speak_data, the synthesis is terminated. At this time, it
is normal operation, even if there's no speak data.

Solution: Change error to no error, when speak data is empty.

Reference log:
01-27 05:01:43.733+0900 I/ttsd     (P  798, T  798): ttsd_server.c: __wait_synthesis(100) > [Server] synth_control(1)
01-27 05:01:43.733+0900 D/ttsd     (P  798, T  798): ttsd_server.c: __synthesis(116) > @@@ SYNTHESIS  START
01-27 05:01:43.733+0900 W/ttsd     (P  798, T  798): ttsd_data.cpp: ttsd_data_get_speak_data(563) > [DATA WARNING] There is no speak data
01-27 05:01:43.733+0900 D/ttsd     (P  798, T  798): ttsd_server.c: __synthesis(121) > @@@ Fail to get speak data. ret(-49348604)
01-27 05:01:43.733+0900 D/ttsd     (P  798, T  798): ttsd_server.c: __synthesis(122) > @@@ SYNTHESIS  END

Change-Id: I8ce4823ee9791b1b2854c1f1ed7c01469151807e

10 months agoSend synthesized PCM data from TTS engine to client 80/295280/4
wn.jang [Tue, 4 Jul 2023 10:51:47 +0000 (19:51 +0900)]
Send synthesized PCM data from TTS engine to client

Change-Id: I91dd83aaa808fa46bc2e4768797db66da3f524c1

11 months agoUpdate version (1.80.2) 82/293782/1 accepted/tizen/unified/20230608.164318
Suyeon Hwang [Mon, 5 Jun 2023 02:00:12 +0000 (11:00 +0900)]
Update version (1.80.2)

Change-Id: Ie7bdbf99e02260da7de2e4d9078baa982e54fe18
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
11 months agoDestroy old rpc handle for clean reconnection 62/293762/1
Suyeon Hwang [Fri, 2 Jun 2023 11:27:19 +0000 (20:27 +0900)]
Destroy old rpc handle for clean reconnection

- Issue:
When the client is disconnected, sometimes, the rpc handle can be
expired.

- Solution:
When the client is disconnected, the client should try to reconnect.
However, sometimes, the client can try to reconnect with expired rpc
handle. In this case, the client library can not create new rpc handle,
because current logic only makes new rpc handle if the function returns
I/O error. To resolve this issue, this patch destroyes the old handle
if the client is disconnected. Through this change, the client will be
sure to reconnect with new rpc handle.

Change-Id: Ic801abf2f69a291ca6b5c8748a67f987be81aa93
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
11 months agoUpdate version (1.80.1) 87/293687/1
wn.jang [Fri, 2 Jun 2023 06:11:44 +0000 (15:11 +0900)]
Update version (1.80.1)

Change-Id: Ic0834deb2ffac2c1df02882cbc4cf6d33d667818

11 months agoAdd binary file to support risc64 build 84/293684/1
wn.jang [Fri, 2 Jun 2023 05:30:53 +0000 (14:30 +0900)]
Add binary file to support risc64 build

Change-Id: I457e42fc9af41fd50092d2e6110ad701e3771b6f

11 months agoUpdate version (1.80.0) 02/293502/1
Suyeon Hwang [Wed, 31 May 2023 01:28:24 +0000 (10:28 +0900)]
Update version (1.80.0)

Change-Id: I88058c8dd0e61ffc417cd065329fac37a5e4c9fc
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
11 months agoFix tizen version description (7.5 -> 8.0) 01/293501/1
Suyeon Hwang [Wed, 31 May 2023 01:27:40 +0000 (10:27 +0900)]
Fix tizen version description (7.5 -> 8.0)

Change-Id: I9bfe513275e17c3d373c4d826b945e8f66d8fd48
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoUpdate version (1.75.10) 40/292440/1
Suyeon Hwang [Mon, 8 May 2023 06:18:47 +0000 (15:18 +0900)]
Update version (1.75.10)

Change-Id: Iecc5d11592f204fd3c97aa4e2edafc0b39d1b839
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoSet status vconf when the synthesis is started 39/292439/1
Suyeon Hwang [Mon, 8 May 2023 06:15:02 +0000 (15:15 +0900)]
Set status vconf when the synthesis is started

Change-Id: Id6152a67321c63d917fb763a5837e35f5ea36386
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoRevert owner as 'ui_fw' 35/291835/1 accepted/tizen/unified/20230425.130131
Suyeon Hwang [Mon, 24 Apr 2023 02:51:08 +0000 (11:51 +0900)]
Revert owner as 'ui_fw'

Change-Id: I6ff2bafe0b459baf8a107eb1f67ac6cde9bd9fd8
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoAdd write permission to group 96/291796/1
Suyeon Hwang [Fri, 21 Apr 2023 08:38:02 +0000 (17:38 +0900)]
Add write permission to group

Change-Id: I518bd6381b25267cd42fc79e485eb3a2fca92d1e
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoUpdate version (1.75.9) 64/291764/1
Suyeon Hwang [Fri, 21 Apr 2023 04:21:41 +0000 (13:21 +0900)]
Update version (1.75.9)

Change-Id: I189d0395f75140faf5ad35fcb1b8865144e6a72c
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoFix pointer checking condition and owner of config file 60/291660/2
Suyeon Hwang [Thu, 20 Apr 2023 02:29:09 +0000 (11:29 +0900)]
Fix pointer checking condition and owner of config file

- Issue:
tts_setting_set_voice() does not set voice properly.

- Solution:
Previous code validates the voice with invalid condition. So, the
function returns error even if the voice is valid. Meanwhile, the app
can not write the config file because of the owner of the file. To
resolve these issues, this patch fixes the checking condition and owner
of config file. Through this patch, the function will properly set the
voice.

 To resolve this
issue, this patch fixes the condition as a right way.

Change-Id: I01ac1fd09edb9a10ea365c2376ccf3d6d7a9c4f1
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoMerge "Update version (1.75.8)" into tizen
Suyeon Hwang [Wed, 19 Apr 2023 11:26:35 +0000 (11:26 +0000)]
Merge "Update version (1.75.8)" into tizen

12 months agoMerge "Add logs to measure xRT for synthesizing from tts engine" into tizen
Wonnam Jang [Wed, 19 Apr 2023 09:53:25 +0000 (09:53 +0000)]
Merge "Add logs to measure xRT for synthesizing from tts engine" into tizen

12 months agoUpdate version (1.75.8) 24/291624/1 accepted/tizen/unified/20230420.091930
Suyeon Hwang [Wed, 19 Apr 2023 08:36:35 +0000 (17:36 +0900)]
Update version (1.75.8)

Change-Id: Ia522f2b9b72e4a97789785a84304cbf663a070d2
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
12 months agoAdd logs to measure xRT for synthesizing from tts engine 84/291284/5
wn.jang [Thu, 13 Apr 2023 01:30:17 +0000 (10:30 +0900)]
Add logs to measure xRT for synthesizing from tts engine

Change-Id: I9a43b12403df907db02d6309a5cdd4c5957a3be8

12 months agoPass missing parameter to real function 91/291591/1
Suyeon Hwang [Wed, 19 Apr 2023 02:43:53 +0000 (11:43 +0900)]
Pass missing parameter to real function

- Issue:
After reprepare_on_demand(), the client handle is missing.

- Solution:
Previous code does not pass all neccessary parameters, so the function
can write value into arbitrary pointer. And this pointer access can
cause critical memory crash. Thus, this patch fixes the code to make
sure the tts_ipc module pass all proper parameters to actual function in
tts_dbus and tts_tidl module.

Change-Id: I2276c05e3b29f070664b8fad607cc1d13ddb9cee
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoUpdate version (1.75.7) 96/291496/2 accepted/tizen/unified/20230419.044940
Suyeon Hwang [Mon, 17 Apr 2023 11:29:19 +0000 (20:29 +0900)]
Update version (1.75.7)

Change-Id: Icb8c92cd7b57b45422c018ee74dd31944573d7d0
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoMove unreleased definitions to the internal header 17/291517/1
Suyeon Hwang [Tue, 18 Apr 2023 02:39:17 +0000 (11:39 +0900)]
Move unreleased definitions to the internal header

Change-Id: I4746d219d5385713b278bca58abf9115061837c3
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoFix wrong condition for parameter checker 95/291495/1
Suyeon Hwang [Mon, 17 Apr 2023 11:26:10 +0000 (20:26 +0900)]
Fix wrong condition for parameter checker

- Issue:
tts_set_playing_mode() always returns invalid parameter error.

- Solution:
This patch fixes the condition for parameter checker in
tts_set_playing_mode(). Previous condition statement always returns
true, so the function works wrong. Through this patch, the function will
properly check the paramter.

Change-Id: I2fdb5254f942f6e9c1c1741e241bcfc32fe4cbdf
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoUpdate version (1.75.6) 64/291464/1
Suyeon Hwang [Mon, 17 Apr 2023 07:21:43 +0000 (16:21 +0900)]
Update version (1.75.6)

Change-Id: I58057a859231875fe95e2927e7e9aef7474f0fe0
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoProhibit engine ID access after tts_core_deinitialize() 61/291461/1
Suyeon Hwang [Mon, 17 Apr 2023 06:48:57 +0000 (15:48 +0900)]
Prohibit engine ID access after tts_core_deinitialize()

- Issue:
check_engine_launching_status() is invoked and it makes the segmentation
fault even though tts_core_deinitialize() is already finished.

- Solution:
After tts_core_deinitialize(), there is no client, so
check_engine_launching_stats() is not neccessary to be invoked. However,
previous code does not unset the callback, so the callback is still
invoked and it makes segmentation fault error by accessing invalid
pointer. To resolve this issue, this patch makes the code unset the
callback in tts_core_deinitialize(). And also this patch adds null
checker in the callback. Thus, invalid pointer access will not occur
through this patch.

Change-Id: I703e0a0e3cbc7d548e84b274609f27d9442d8537
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoUpdate version (1.75.5) 98/290998/1
Suyeon Hwang [Thu, 6 Apr 2023 06:56:21 +0000 (15:56 +0900)]
Update version (1.75.5)

Change-Id: I08dd17b619db1e69166b21ee7f551e7e62ed0b55
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoSet name for TTS player thread 97/290997/1
Suyeon Hwang [Wed, 5 Apr 2023 12:30:11 +0000 (21:30 +0900)]
Set name for TTS player thread

Change-Id: I72067b8a0e59e2529157d59e4a9bac6e59ce7937
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
13 months agoAdd to set playing mode to decide where the synthesized pcm data will be played 56/285356/3
wn.jang [Fri, 9 Dec 2022 09:39:39 +0000 (18:39 +0900)]
Add to set playing mode to decide where the synthesized pcm data will be played

Needs: The application wants to play the synthesized pcm data on client side.

Solution: Provides the Api to set playing mode to decide where it will be played.

This commit is related to following commit.
https://review.tizen.org/gerrit/#/c/platform/core/uifw/tts/+/284933/

Change-Id: If9e73f05409feab8e9ff371aee1570b38d6e2407

13 months agoUpdate version (1.75.4) 90/290690/1
dyamy-lee [Fri, 31 Mar 2023 01:12:49 +0000 (10:12 +0900)]
Update version (1.75.4)

Change-Id: I931f1687cd0ec57f051f76f60bd9eb9f64d43281

13 months agoset option -t on engine-info directory 78/290678/1
dyamy-lee [Thu, 30 Mar 2023 11:48:36 +0000 (20:48 +0900)]
set option -t on engine-info directory

- Issue : When engine config file created, the file's smack label is still not follow directory.

- Solution : By giving transmute option of smack, it can works all created file and directory get same smack label with this directory.

Change-Id: I0ca6d2a9f0aef13ff252d3b94a61f5ab6313f35c

13 months agochange the timing of smack label change in spec file 50/290650/1
dyamy-lee [Thu, 30 Mar 2023 06:56:39 +0000 (15:56 +0900)]
change the timing of smack label change in spec file

- Issue : tts directory which under .voice directory is not applied change of smack label, becasue it did before directory created.

- Solution : Change the timeing of execution smack label change after tts directory created.

Change-Id: I40ca5df3d735382fb91f4f002ec728d81e7ad9dd

13 months agoSmack label change in spec file 31/290631/1
dyamy-lee [Thu, 30 Mar 2023 02:43:17 +0000 (11:43 +0900)]
Smack label change in spec file

- Issue : After tts engine update, a config file which created under engine-info directory is changed following installing program's smack label.
          So, it's not working after engine update.

- Solution : By change smack label from underscore('_') to specific label('User::App::Shared'),
             it can prevent following installing program's smack label

Change-Id: If90b4e42201e4573d80a2a64855aa08076c065d8

13 months agoUpdate version (1.75.3) 68/290368/1 accepted/tizen/unified/20230327.143739
dyamy-lee [Wed, 22 Mar 2023 06:09:41 +0000 (15:09 +0900)]
Update version (1.75.3)

Change-Id: I34e0e65cb70002abcd22babccc1ffb7276d865d6

13 months agoResolve unused value and overite problem 87/290187/7
dyamy-lee [Tue, 21 Mar 2023 07:50:15 +0000 (16:50 +0900)]
Resolve unused value and overite problem

- Issue : coverity reports these as issues. It does free and set NULL, but when assigning value NULL, that stored value is overwritten before it can be used.

- Solution : define value in that value's scope

Change-Id: I53644403ff1595cdfad790d7b454d2b33a0a8e44

13 months agoChange directories' permission of config xml file 77/290177/1
dyamy-lee [Wed, 21 Dec 2022 06:53:13 +0000 (15:53 +0900)]
Change directories' permission of config xml file

- Issue : In case of root daemon, it cannot read tts-config file because permission didn't allow it.

- Solution : We change tts-config file's directory permission every user can read the tts-config file.

Change-Id: I133de3acfbb8286890558837953cfa871c5dd413

13 months agoChange directories of tts-config file and engine-info file 76/290176/1
sooyeon [Fri, 26 Aug 2022 02:39:43 +0000 (11:39 +0900)]
Change directories of tts-config file and engine-info file

- Issue: In case of root daemon, it cannot access tts-config file and engine-info file,
        because they are installed in user directories respectively.

- Solution: We move tts-config file and engine-info file to global user data (/opt/usr/data)
           to make both root daemon and users access the files.

Change-Id: Iedd7249b3526edaa600805d1a8c3f3c6504b7549
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
13 months agoUpdate version (1.75.2) 51/290151/1 accepted/tizen/unified/20230321.123228
wn.jang [Tue, 21 Mar 2023 01:59:15 +0000 (10:59 +0900)]
Update version (1.75.2)

Change-Id: I2d840d64edac48d17b99b786238cb05b74f931ad

13 months agoFix memory leak detected by static analysis tool 48/290148/1
wn.jang [Tue, 21 Mar 2023 00:49:09 +0000 (09:49 +0900)]
Fix memory leak detected by static analysis tool

Change-Id: I332780d46eb2d8ad297a0526a87eac1ae06afdad

14 months agoUpdate version (1.75.1) 34/289934/1 accepted/tizen/unified/20230316.174017
Suyeon Hwang [Thu, 16 Mar 2023 00:35:39 +0000 (09:35 +0900)]
Update version (1.75.1)

Change-Id: I1c35ae367783fd6579227c28dee8a5b016f4d192
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
14 months agoAdd the version notification for new enum values 56/289856/1
Suyeon Hwang [Wed, 15 Mar 2023 01:09:55 +0000 (10:09 +0900)]
Add the version notification for new enum values

- Requirements:
New enum values require the version description.

- Contents:
This patch adds the version description for new enum values.

Change-Id: I25f7db9189cb2594c92e70d6056ba9d6a2d79650
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
14 months agoUpdate version (1.75.0) 05/289505/1 accepted/tizen/unified/20230316.101429
Suyeon Hwang [Thu, 9 Mar 2023 02:21:11 +0000 (11:21 +0900)]
Update version (1.75.0)

Change-Id: I184c08b8358b590c2254488adeaafe710fa2e6dd
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>