Sangchul Lee [Fri, 10 Jun 2022 04:06:58 +0000 (13:06 +0900)]
webrtc_test: Add menu to get supported transceiver codecs
[Version] 0.3.130
[Issue Type] Add
Change-Id: Id6862337d4525ebdb14c72c535de1ad2bbb85f08
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 25 May 2022 23:39:07 +0000 (08:39 +0900)]
Add support for WEBRTC_MEDIA_SOURCE_TYPE_NULL
In contrast with other types, this type is only for receiving audio or
video stream without any source elements internally. This type of source
has WEBRTC_TRANSCEIVER_DIRECTION_RECVONLY as a its fixed direction.
This can be utilized with webrtc_media_source_set_transceiver_codec()
function together if a user wants to configure a RECVONLY transceiver
with a specific codec.
[Version] 0.3.129
[Issue Type] API
Change-Id: I0bae909d97dca4d68be19193ba8130567b891bf1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 2 Jun 2022 07:12:22 +0000 (16:12 +0900)]
Add API to set/get transceiver codec
Functions are added as below.
- webrtc_media_source_set_transceiver_codec()
- webrtc_media_source_get_transceiver_codec()
[Version] 0.3.128
[Issue Type] API
Change-Id: Ieed7d8dedfc32036a45f2a6e7a242b0a0fc416c8
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 10 Jun 2022 03:20:29 +0000 (12:20 +0900)]
Add API to get supported transceiver codecs
Functions are added as below.
- webrtc_media_source_foreach_supported_transceiver_codec()
- webrtc_media_source_supported_transceiver_codec_cb()
Enums are added as below.
- WEBRTC_TRANSCEIVER_CODEC_PCMU
- WEBRTC_TRANSCEIVER_CODEC_PCMA
- WEBRTC_TRANSCEIVER_CODEC_OPUS
- WEBRTC_TRANSCEIVER_CODEC_VP8
- WEBRTC_TRANSCEIVER_CODEC_VP9
- WEBRTC_TRANSCEIVER_CODEC_H264
[Version] 0.3.127
[Issue Type] API
Change-Id: Ibc839734570d406fc006d9ef88554fd2db84c036
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 20 Jun 2022 02:09:38 +0000 (11:09 +0900)]
Remove unnecessary null check of a parameter in webrtc_set_stun_server()
Default value of the parameter can be null. webrtc_get_stun_server() also
can return the value of null. So, it is fixed as a bug.
[Version] 0.3.126
[Issue Type] Bug fix
Change-Id: I6615690c37b5dc07fed444b909a2ffcd31f31806
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
backto.kim [Fri, 3 Jun 2022 07:02:38 +0000 (16:02 +0900)]
webrtc_source: Fix mute error for camera source which doesn't use tizen memory
[Version] 0.3.125
[Issue Type] Bug fix
Change-Id: I8b05ef9e7029fb22f15928290b7a4326a28cd2e4
Sangchul Lee [Mon, 13 Jun 2022 01:10:49 +0000 (10:10 +0900)]
webrtc_test: Fix ASAN build break
It's a little strange because it only occurs in case of ASAN build with 'aarch64'.
A defensive code is added.
[ 322s] /home/abuild/rpmbuild/BUILD/capi-media-webrtc-0.3.121/test/webrtc_test.c:684:6:
error: 'i' may be used uninitialized in this function [-Werror=maybe-uninitialized]
[ 322s] 684 | int i;
[Version] 0.3.124
[Issue Type] Build break
Change-Id: I1982d219b21a4fa9b7c1d6176a5eb46798ffe447
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 31 May 2022 12:54:05 +0000 (21:54 +0900)]
webrtc_ini: Add support for audio/video codec list
'video codec' item is replaced with 'video codecs'.
'audio codec' item is replaced with 'audio codecs'.
[Version] 0.3.123
[Issue Type] New feature
Change-Id: I27f90b44444cd1b9f18c12778708f4637b26d09d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 7 Jun 2022 10:36:22 +0000 (19:36 +0900)]
webrtc_source: Postpone the time of linking source with webrtcbin
This makes it possible for a source that elements would be fixed by looking
something before starting the webrtc handle.
[Version] 0.3.122
[Issue Type] Improvement
Change-Id: I8578a642d25dc246b2d81ebae5936545316c8852
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 9 Jun 2022 01:25:33 +0000 (10:25 +0900)]
webrtc_source: Save transceiver direction value
If a transceiver object exists, set the value to the object directly.
Every time when __webrtcbin_on_new_transceiver_cb() is called, the saved
value will be set also.
This is a preparation for setting option values regardless of elements
creation or linking pads.
[Version] 0.3.121
[Issue Type] Improvement
Change-Id: If02172e836265310b0eb1e3d981749d12aa4fcb1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 8 Jun 2022 06:59:36 +0000 (15:59 +0900)]
webrtc_source: Save audio mute value if required element does not exist
This is a preparation for setting option values regardless of elements
creation or linking pads.
[Version] 0.3.120
[Issue Type] Improvement
Change-Id: I7747fe7df7a4e5e0cef0ffe21ccad1358bb27d4b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 8 Jun 2022 08:18:02 +0000 (17:18 +0900)]
webrtc_source: Save video mute value if it does not meet the required condition
This is a preparation for setting option values regardless of elements
creation or linking pads.
[Version] 0.3.119
[Issue Type] Improvement
Change-Id: Ifbac64fd9c7300e5887840dcf556378387286e5d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 8 Jun 2022 06:10:58 +0000 (15:10 +0900)]
webrtc_source: Save video framerate/width/height value if required element does not exist
This is a preparation for setting option values regardless of elements
creation or linking pads.
[Version] 0.3.118
[Issue Type] Improvement
Change-Id: I500ff6058f8bd4de4b7ebbea16b2cf82cfede4ef
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 2 Jun 2022 05:47:02 +0000 (14:47 +0900)]
webrtc: Remove unnecessary variables
Some codes have been changed to have an intention of removing a variable.
- Some logs are moved to functions in webrtc_source.c.
- in some cases, mutex locker is applied.
[Version] 0.3.117
[Issue Type] Refactoring
Change-Id: I020f82b8ff32364a69b5a2ac3a3291761499d749
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 27 May 2022 11:12:07 +0000 (20:12 +0900)]
webrtc_test: Remove global variables
Some global variables are put inside to app data structure.
get_appdata() is added.
[Version] 0.3.116
[Issue Type] Refactoring
Change-Id: I12ee6a29a5ae8a1b4b1ee1db9c8ca885eef3b56a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 31 May 2022 12:38:30 +0000 (21:38 +0900)]
webrtc_ini: Add default list parameter to __ini_read_list()
[Version] 0.3.115
[Issue Type] Improvement
Change-Id: Ibcfa538b28e306f890d75766606e0991c5b8c097
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 27 May 2022 09:56:04 +0000 (18:56 +0900)]
webrtc_ini: Remove global variable for verbose log
It is replaced with new function.
[Version] 0.3.114
[Issue Type] Refactoring
Change-Id: I4591a4e588f080c625523d8c0d0c0542cace2afc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 May 2022 03:22:13 +0000 (12:22 +0900)]
webrtc_test: Add sub-menu to apply echo-cancellation
It is possible to choose to enable or disable AEC
when adding mic source.
[Version] 0.3.113
[Issue Type] Add
Change-Id: I6567d40df032813b8f374f8a060575e056433228
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 May 2022 03:21:27 +0000 (12:21 +0900)]
Add support for mic source echo cancellation
[Version] 0.3.112
[Issue Type] New feature
Change-Id: I5bb9e9a604b67aef7011ed13c9caf7d50fe81d73
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 27 May 2022 03:22:14 +0000 (12:22 +0900)]
webrtc_source: Fix invalid return value
Some cases returned ERROR_NONE despite error situations.
These are fixed.
[Version] 0.3.111
[Issue Type] Bug fix
Change-Id: I1be17af6f644754a8181f5fe8c349b99edf75c14
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 27 May 2022 01:32:03 +0000 (10:32 +0900)]
webrtc_private: Use PA_PROP_XXX defines instead of hard-coded string
[Version] 0.3.110
[Issue Type] Improvement
Change-Id: I76d4f7e1af27e01bd8beb2fd2a1e228a77ddbc58
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 26 May 2022 06:05:57 +0000 (15:05 +0900)]
webrtc_sink/source: Replace MALLOC_AND_INIT_SLOT() with functions
Unnecessary variables are also removed.
[Version] 0.3.109
[Issue Type] Refactoring
Change-Id: I3a1f6f69bf89801064b6cba8b4b2bac103166e2d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 24 May 2022 08:19:17 +0000 (17:19 +0900)]
spec: Change gcov object installation
[Version] 0.3.108
[Issue Type] Gcov
Change-Id: I822a973a58f3f3b522049d08142481c6acc5b280
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 May 2022 05:34:04 +0000 (14:34 +0900)]
Change execution label for webrtc_test
[Version] 0.3.107
[Issue Type] Smack label
Change-Id: I8a7195ce447332a1de2d96de6e67f6e443e328e4
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 19 May 2022 05:26:34 +0000 (14:26 +0900)]
Add more macro to exclude lines from coverage measurement
[Version] 0.3.106
[Issue Type] Line coverage
Change-Id: Ibf9f09f635bb9a6268734138f7be80787d9213b0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 17 May 2022 03:49:50 +0000 (12:49 +0900)]
webrtc_data_channel: Include __data_channel_on_close_cb() for the coverage mesurement
ITC test case has been ready for this.
: https://review.tizen.org/gerrit/#/c/test/tct/native/api/+/275118/
[Version] 0.3.105
[Issue Type] Coverage
Change-Id: I803a40af405be1ae447b1157cc6c2c7544d783e1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 12 May 2022 01:04:47 +0000 (10:04 +0900)]
webrtc_test: Divide files
webrtc_test_menu.c regarding menu display is added with
contents extracted from webrtc_test.c.
[Version] 0.3.104
[Issue Type] Refactoring
Change-Id: I691d6cd007a69895d0931a90efd528ffe3227445
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 11 May 2022 09:36:43 +0000 (18:36 +0900)]
webrtc_stats: Stop next iteration when stats user callback returns false
It is fixed to comply with the description of webrtc_stats_cb().
@return @c true to continue with the next iteration of the loop,
otherwise @c false to break out of the loop
[Version] 0.3.103
[Issue Type] Bug fix
Change-Id: I10f8c018e3142a581155cbcb0ac9042c426c74c5
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 9 May 2022 10:53:43 +0000 (19:53 +0900)]
webrtc_private: Clear event source not fired before overwriting it
It was an issue with a short test case that results a crash in sometimes.
[Version] 0.3.102
[Issue Type] Bug fix
Change-Id: Ic82742df40438d7077d7f44585099d4694d0f707
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 9 May 2022 06:24:23 +0000 (15:24 +0900)]
webrtc_test: Rename variable
g_menu_state -> g_menu_status
[Version] 0.3.101
[Issue Type] Refactoring
Change-Id: I782107a51e1849dfa9df7b97774e556a9913193b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 6 May 2022 05:24:32 +0000 (14:24 +0900)]
webrtc_private: Fix crash when handling callback in idle
It was possible to access freed memory in log.
The crash rarely happened during ITc_webrtc_create_offer_async_p().
[Version] 0.3.100
[Issue Type] Bug fix
Change-Id: Ib1da621b4c2a853f63446454b356332fd8aaed83
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 4 May 2022 02:37:58 +0000 (11:37 +0900)]
webrtc_private: Fix negotiation state bugs
Setting the result state is moved inside __idle_cb().
Invalid converting enums are also fixed.
Getting the state in the callback is added to webrtc_test.
[Version] 0.3.99
[Issue Type] Bug fix
Change-Id: If91bae0f87397d7b9d7350bdf24f93c34a4e3e7c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 2 May 2022 07:57:31 +0000 (16:57 +0900)]
webrtc_test: Use hashmap to interpret command
[Version] 0.3.98
[Issue Type] Refactoring
Change-Id: I7b1f4455a32134238c542f82a25daa711ebcc570
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 26 Apr 2022 04:03:37 +0000 (13:03 +0900)]
webrtc_source: Refactor audio/video mute functions
__validate_audio_source_for_mute() and __validate_video_source_for_mute()
are added to reduce duplicate codes.
Null parameter checks are added.
[Version] 0.3.97
[Issue Type] Refactoring
Change-Id: I7bf5438d7da93f6b5b2727b537822b3189950879
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 26 Apr 2022 08:02:47 +0000 (17:02 +0900)]
webrtc_test: Check return value of g_io_channel_read_chars()
[Version] 0.3.96
[Issue Type] Coverity defects
Change-Id: I0320f4b95c94da0dec4ef2f447c90d6b561aa6c1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 22 Apr 2022 09:42:27 +0000 (18:42 +0900)]
webrtc_source: Rename functions and replace codes with the function
[Version] 0.3.95
[Issue Type] Refactoring
Change-Id: I517b4ade896132e5a25f5a91f0ad422ae7ca9abd
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 22 Apr 2022 09:08:16 +0000 (18:08 +0900)]
webrtc_source: Add __complete_rest_of_mediapacketsrc() to reduce duplicate codes
Unnecessary element_list2 is also removed.
[Version] 0.3.94
[Issue Type] Refactoring
Change-Id: I7d9845c730f5236490e9ff66d1968954c9ee97db
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 22 Apr 2022 05:07:36 +0000 (14:07 +0900)]
webrtc_source: Reduce duplicate codes in __build_camerasrc/videosrc/custom_videosrc()
New sub function is introduced.
[Version] 0.3.93
[Issue Type] Refactoring
Change-Id: Ia689db8ffb5c4801492b3ef18df807041d6d3e4e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 22 Apr 2022 02:18:41 +0000 (11:18 +0900)]
webrtc_private: Print handle pointer in __bus_watch_cb()
A case using multiple handles in one process is quite common,
it is expected that this additional log will help in debugging.
[Version] 0.3.92
[Issue Type] Log
Change-Id: I1bca4152e8bce955d7a0e548b674e627771b840f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 21 Apr 2022 10:47:43 +0000 (19:47 +0900)]
webrtc_source: Reduce duplicate codes in __build_audiosrc()/__build_custom_audiosrc()
New sub function is introduced.
[Version] 0.3.91
[Issue Type] Refactoring
Change-Id: I0e0a6f678c710912c864b9652e10dc57689efaf3
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 20 Apr 2022 03:51:03 +0000 (12:51 +0900)]
webrtc_stats: Fix invalid bitwise value of stats type
Type selection is added to the test case for
webrtc_foreach_stats().
[Version] 0.3.90
[Issue Type] Bug fix
Change-Id: I2be8cac40571f71d79c595909a40d91165f43984
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 20 Apr 2022 01:42:04 +0000 (10:42 +0900)]
webrtc_test: Use new sub functions in interpret()
Invalid bitwise value of TEST_MENU_APP_SIGNALING is fixed.
[Version] 0.3.89
[Issue Type] Refactoring
Change-Id: Ieb9a43eef5d5cae1ce1a41879c998bad8d99172e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 19 Apr 2022 07:54:16 +0000 (16:54 +0900)]
webrtc_test: Use new sub functions in displaymenu()
[Version] 0.3.88
[Issue Type] Refactoring
Change-Id: Id671ca12add86cea8b32b38686ecccc6a1fb4a6a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 19 Apr 2022 01:16:05 +0000 (10:16 +0900)]
webrtc_test: Rearrange menu items
Some menu items to set/unset each callback are removed.
- "sac" or "uac" can be used instead of these.
Each menu status enum value has type bits.
Function and enum names regarding file source are changed.
[Version] 0.3.87
[Issue Type] Cleanup/Refactoring
Change-Id: Ibfe569120d531bc2e1078f9db2c836fe73ed6b75
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 18 Apr 2022 09:47:57 +0000 (18:47 +0900)]
webrtc_test: Add missing static keyword to functions
Some function names are changed.
Unused function is removed.
[Version] 0.3.86
[Issue Type] Refactoring
Change-Id: I415dc7239837a13a80c537c78d0c097910da4f63
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 18 Apr 2022 09:13:45 +0000 (18:13 +0900)]
webrtc_test: Make sub functions to change menu state
[Version] 0.3.85
[Issue Type] Refactoring
Change-Id: I91462e96aad3011aca9a9545cca5a08725e2c9f5
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 4 Apr 2022 07:14:03 +0000 (16:14 +0900)]
webrtc_stats: Update description as per the GStreamer's update
[Version] 0.3.84
[Issue Type] Documentation
Change-Id: I4ad0c0acd8bb3004a8ef860c9e448403b0af3b2d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 12 Apr 2022 04:34:25 +0000 (13:34 +0900)]
webrtc_data_channel: Release data channel after receiving close callback
When destroying a data channel created by local peer, close callback could
be invoked in the middle of the process. Due to the early disconnection
signals, it'd never happen properly.
Add 'from_remote' variable to check if it is created by
_webrtcbin_on_data_channel_cb(). This kind of data channel can not be
destroyed by webrtc_destroy_data_channel().
A FIXME comment is added in _webrtcbin_on_data_channel_cb().
[Version] 0.3.83
[Issue Type] Improvement
Change-Id: Ic0bf5b3efc0760fe3221888cde038d5b1b4000fd
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 8 Apr 2022 05:24:28 +0000 (14:24 +0900)]
webrtc_data_channel: Fix memory leak and double free
g_object_unref() is added for data channel object.
When webrtc_destroy() is called, data channels appended to the data channel
list are also released. Due to the omitted code to remove one from the list
when calling webrtc_destroy_data_channel(), double free can occur.
The above are fixed now.
[Version] 0.3.82
[Issue Type] Bug fix
Change-Id: I2b2942666c8ab992bb2a7fe21fc9546b5bdd3019
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 8 Apr 2022 04:18:32 +0000 (13:18 +0900)]
webrtc_data_channel: Add sub-function to prepare data channel
[Version] 0.3.81
[Issue Type] Refactoring
Change-Id: Idae4533ee3b790e43daaa60a26999364bdbe791f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 1 Apr 2022 01:19:28 +0000 (10:19 +0900)]
Fix spacing
[Version] 0.3.80
[Issue Type] Coding convention
Change-Id: Idbb43d9e817afe715c0ca1d9c956171c262d61ed
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 29 Mar 2022 12:31:09 +0000 (21:31 +0900)]
Revise description
webrtc_doc.h
- Fix invalid information
webrtc.h
- Add @remarks to callback function prototypes
[Version] 0.3.79
[Issue Type] Doxygen
Change-Id: Iac7524e8fcee20341a147d1c8eaefb58cfec1035
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 31 Mar 2022 05:09:03 +0000 (14:09 +0900)]
Add missing required libraries for pkg config
[Version] 0.3.78
[Issue Type] pkg-config
Change-Id: I3e1bbe2957379c9a58e2fae7e5e22014f837971e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 23 Mar 2022 04:21:00 +0000 (13:21 +0900)]
webrtc_test: Print stats type as string
[Version] 0.3.77
[Issue Type] Log
Change-Id: I7126c2da4ec511a10abe2f7d8dd71afb62d74d45
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 25 Mar 2022 06:23:34 +0000 (15:23 +0900)]
webrtc_doc: Add callback operation description of the data channel module
[Version] 0.3.76
[Issue Type] Documentation
Change-Id: I8d82b12c99c5830fc214236dc646caa2be790a2a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 25 Mar 2022 05:31:43 +0000 (14:31 +0900)]
webrtc_doc: Add description for statistics module
[Version] 0.3.75
[Issue Type] Documentation
Change-Id: I4a616a34500b5227ba33016a04b39ef950b9ca87
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 23 Mar 2022 02:48:18 +0000 (11:48 +0900)]
Add new statistics type for 'remote-outbound-rtp'
New statistics type is added as below.
- WEBRTC_STATS_TYPE_REMOTE_OUTBOUND_RTP
Property enum is added as below for this type
- WEBRTC_STATS_PROP_REMOTE_TIMESTAMP
Example codes are also added to the doxygen of
webrtc_foreach_stats().
[Version] 0.3.74
[Issue Type] API
Change-Id: I871069caf3dfd9591feff497f0e013a63995f7a9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 23 Mar 2022 02:19:37 +0000 (11:19 +0900)]
Add new statistics type for 'remote-inbound-rtp'
New statistics type is added as below.
- WEBRTC_STATS_TYPE_REMOTE_INBOUND_RTP
Property enums are added as below for this type
- WEBRTC_STATS_PROP_LOCAL_ID
- WEBRTC_STATS_PROP_ROUND_TRIP_TIME
- WEBRTC_STATS_PROP_FRACTION_LOST
[Version] 0.3.73
[Issue Type] API
Change-Id: I9547674d2ca3e5a083bd649ae78880efaf2f1d5a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 22 Mar 2022 12:29:09 +0000 (21:29 +0900)]
Add new statistics type for 'outbound-rtp'
New statistics type is added as below.
- WEBRTC_STATS_TYPE_OUTBOUND_RTP
Property enums are added as below for this type
- WEBRTC_STATS_PROP_BYTES_SENT
- WEBRTC_STATS_PROP_PACKETS_SENT
[Version] 0.3.72
[Issue Type] API
Change-Id: Ia8574ddec63893eebacbd413ef253bed8b4a5102
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 21 Mar 2022 13:12:24 +0000 (22:12 +0900)]
Add new statistics type for 'inbound-rtp'
New statistics type is added as below.
- WEBRTC_STATS_TYPE_INBOUND_RTP
Property enums are added as below for this type
- WEBRTC_STATS_PROP_SSRC
- WEBRTC_STATS_PROP_TRANSPORT_ID
- WEBRTC_STATS_PROP_CODEC_ID
- WEBRTC_STATS_PROP_PACKETS_RECEIVED
- WEBRTC_STATS_PROP_PACKETS_LOST
- WEBRTC_STATS_PROP_PACKETS_DISCARDED
- WEBRTC_STATS_PROP_JITTER
- WEBRTC_STATS_PROP_REMOTE_ID
- WEBRTC_STATS_PROP_BYTES_RECEIVED
- WEBRTC_STATS_PROP_PACKETS_DUPLICATED
- WEBRTC_STATS_PROP_FIR_COUNT
- WEBRTC_STATS_PROP_PLI_COUNT
- WEBRTC_STATS_PROP_NACK_COUNT
[Version] 0.3.71
[Issue Type] API
Change-Id: I2e1d4f7bd65659dcdb9931c6df7505e3180836e9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 18 Mar 2022 09:43:31 +0000 (18:43 +0900)]
webrtc_stats: Add support for skip callback of stats type or field not exported
[Version] 0.3.70
[Issue Type] Improvement
Change-Id: I87774427c28dea4197239f03947b792ea9d5268b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 16 Mar 2022 04:13:43 +0000 (13:13 +0900)]
Add statistics API
For now, only 'codec' statistics type is exported.
Other types will be supported with the following patches.
Function is added to get all the properties per statistics type.
- webrtc_foreach_stats()
Callback function prototype is added as below.
- typedef bool (*webrtc_stats_cb)(webrtc_stats_type_e type,
webrtc_stats_prop_info_s *prop_info,
void *user_data);
Enum is added as below for statistics type.
- WEBRTC_STATS_TYPE_CODEC
Struct is added to be used as a parameter of the callback function.
- webrtc_stats_prop_info_s
Enums are added as below for statisics property
- WEBRTC_STATS_PROP_TIMESTAMP
- WEBRTC_STATS_PROP_ID
- WEBRTC_STATS_PROP_PAYLOAD_TYPE
- WEBRTC_STATS_PROP_CLOCK_RATE
- WEBRTC_STATS_PROP_CHANNELS
- WEBRTC_STATS_PROP_MIME_TYPE
- WEBRTC_STATS_PROP_CODEC_TYPE
- WEBRTC_STATS_PROP_SDP_FMTP_LINE
Enums are added as below for statistics property data type
- WEBRTC_STATS_PROP_TYPE_BOOL
- WEBRTC_STATS_PROP_TYPE_INT
- WEBRTC_STATS_PROP_TYPE_UINT
- WEBRTC_STATS_PROP_TYPE_INT64
- WEBRTC_STATS_PROP_TYPE_UINT64
- WEBRTC_STATS_PROP_TYPE_FLOAT
- WEBRTC_STATS_PROP_TYPE_DOUBLE
- WEBRTC_STATS_PROP_TYPE_STRING
[Version] 0.3.69
[Issue Type] API
Change-Id: I52bbe25d6c03c4db1b0e0ffbf7c8f293da0b62a0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 17 Mar 2022 02:55:30 +0000 (11:55 +0900)]
webrtc_data_channel: Change the application of macro for coverage mesurement exclusion
It is updated as per the following ITC update.
: https://review.tizen.org/gerrit/#/c/test/tct/native/api/+/269285/
[Version] 0.3.68
[Issue Type] Line coverage
Change-Id: I623da2cf1986c42170533b67d6cc1bc1e5a9eef9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 16 Mar 2022 02:23:40 +0000 (11:23 +0900)]
webrtc_stats: Add user callback parameters to _webrtcbin_get_stats()
Some improvements are also applied
: Use gst_promise_new_with_change_func()'s notify parameter to free userdata
: Rename __gststructure_foreach_cb() to __stats_field_foreach_cb()
: Separate user data structure for __stats_field_foreach_cb()
[Version] 0.3.67
[Issue Type] Improvement
Change-Id: Iad04f0b544b0c2c311a83c0497996da6f47a6d72
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Seungbae Shin [Thu, 10 Mar 2022 04:22:31 +0000 (13:22 +0900)]
Use GStrv instead of gchar** on explict NULL-terminated vector string
use g_auto for GStrv whenever possible
[Version] 0.3.66
[Issue Type] Refactoring
Change-Id: I58458c31bf4ff6e384358b9eb3bf6be53d71c531
Sangchul Lee [Fri, 25 Feb 2022 07:29:59 +0000 (16:29 +0900)]
webrtc_stats: Update codec, remote-inbound-rtp and remote-outbound-rtp stats
[codec]
channels, mime-type, codec-type and sdp-fmtp-line fields are added.
[remote-inbound-rtp]
fraction-lost field is added.
[remote-outbound-rtp]
packets-sent and bytes-sent fields are added.
These are newly added due to the GStreamer 1.20 update.
[Version] 0.3.65
[Issue Type] Update
Change-Id: I8857968b3f286d84bf2a54ec8391197d8acadb57
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 2 Mar 2022 11:40:04 +0000 (20:40 +0900)]
webrtc_private: Add omitted lock/unlock mutex for g_cond_signal()
This ensures to call g_cond_wait_until() before sending the signal.
[Version] 0.3.64
[Issue Type] Bug fix
Change-Id: I78b799067cf3f6a4a45ddf58c9341e679415a079
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 25 Feb 2022 06:15:14 +0000 (15:15 +0900)]
webrtc_stats: Revise to allow pre-defined fields per stats type
It is also possible to check easily fields incoming from gstreamer
which are not defined in this library yet.
[Version] 0.3.63
[Issue Type] Refactoring
Change-Id: Ied57fcf1ad4b350588d1456ddca56f6fe4003774
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 24 Feb 2022 11:10:04 +0000 (20:10 +0900)]
webrtc_stats: Print values in __gststructure_foreach_cb()
[Version] 0.3.62
[Issue Type] Log
Change-Id: I9c17a00657e64459b4106741618bfd4fd84cd5db
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 24 Feb 2022 07:30:50 +0000 (16:30 +0900)]
webrtc_stats: Fix to get valid user data in __webrtcbin_stats_cb()
[Version] 0.3.61
[Issue Type] Bug fix
Change-Id: I2393b2298118c52beb86eb8444d90978bc6c0e4c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 22 Feb 2022 08:00:39 +0000 (17:00 +0900)]
fixup! Add more mutex guard for callbacks
New mutex variable is defined for idle cb event source.
[Version] 0.3.60
[Issue Type] Improvement
Change-Id: Iee25695dbee13d25ff027baf39be79986a7bd9a0
Sangchul Lee [Tue, 22 Feb 2022 05:11:22 +0000 (14:11 +0900)]
webrtc_test: Fix data type to prevent integer overflow
[Version] 0.3.59
[Issue Type] SVACE
Change-Id: I5722a5c8f5fc8ef0b4d8200ff2d74113cc06037c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 21 Feb 2022 10:15:45 +0000 (19:15 +0900)]
webrtc_data_channel: Reference data channel object in _on_data_channel_cb()
It is added due to the GStreamer update to 1.20 that includes patches below.
: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2186
Otherwise, some warning messages occur when releasing data channels.
[Version] 0.3.58
[Issue Type] Update
Change-Id: Ic1437a4e6e46610ed9eecd406208781d1b0231db
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 18 Feb 2022 10:25:46 +0000 (19:25 +0900)]
Add more mutex guard for callbacks
[Version] 0.3.57
[Issue Type] Improvement
Change-Id: I1f536532c3c4bac4101d68c125197d80b267856f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 18 Feb 2022 07:29:08 +0000 (16:29 +0900)]
webrtc_stats: Add support for masking stats type
Entering logs are added for each callback.
[Version] 0.3.56
[Issue Type] Improvement
Change-Id: I5e38d9640e5e0c4fa5c9520eacdcaf5edac0c58e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 7 Feb 2022 09:15:28 +0000 (18:15 +0900)]
Fix codes along with GStreamer 1.19.3 update
[Version] 0.3.55
[Issue Type] Update
Change-Id: Icc8b596b7261e7e1a632edb9457e2be599bd01c9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 3 Feb 2022 04:52:14 +0000 (13:52 +0900)]
webrtc_source: Use gst_element_request_pad_simple()
gst_element_get_request_pad() is deprecated since GStreamer 1.19.1.
[Version] 0.3.54
[Issue Type] Update
Change-Id: I9a81e2d80a036d070d4ca3c00da511beac1e1dd4
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 8 Feb 2022 00:32:53 +0000 (09:32 +0900)]
webrtc_sink/source: Add const keywords
[Version] 0.3.53
[Issue Type] Improvement
Change-Id: Icd1575632033d62f245b29d4a7a8528ef879a02e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 3 Feb 2022 09:15:39 +0000 (18:15 +0900)]
webrtc_source: Use transceiver pointer instead of mline variable
Since gst 1.19.x version, at this point in 'on-new-transceiver'
signal callback of webrtcbin, the transceiver mline index could be
set to -1. Therefore, it is changed to refer the transceiver object
itself.
[Version] 0.3.52
[Issue Type] Refactoring
Change-Id: I3b1b1eab5309362374df40dd96d89b1fff32257a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 27 Jan 2022 06:12:48 +0000 (15:12 +0900)]
webrtc_data_channel: Remove unreachable code and revise error log
[Version] 0.3.51
[Issue Type] Improvement
Change-Id: I3fb502f8ea712233a660e382904a65fd2e47fee0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 27 Jan 2022 04:14:29 +0000 (13:14 +0900)]
Revise doxygen
FPS is mentioned to functions regarding video framerate.
Post command regarding error callback is described in case of
failure on sending data via data channel.
[Version] 0.3.50
[Issue Type] Doxygen
Change-Id: I3fa1e5f84b25a35bda9260292945889dda429a9c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 25 Jan 2022 00:19:57 +0000 (09:19 +0900)]
webrtc_test: Add menu to get mute
Unused definition is removed.
A space is added before asterisk in case of casting with pointer type.
[Version] 0.3.49
[Issue Type] Add
Change-Id: Id0a253eb77d55c4148138ed7019db9bfaacbe589
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 21 Jan 2022 07:55:17 +0000 (16:55 +0900)]
Add more macro to exclude lines from coverage measurement
[Version] 0.3.48
[Issue Type] Line coverage
Change-Id: Icfa24afaa6ca76d881a58a6a4bb27090c5936f99
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 21 Jan 2022 04:53:44 +0000 (13:53 +0900)]
Add space before asterisk in case of casting with pointer type
[Version] 0.3.47
[Issue Type] Coding convention
Change-Id: I574d1f547c66851d428c25c2f9d9125d939559aa
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 14 Jan 2022 09:55:52 +0000 (18:55 +0900)]
webrtc_test: Add test cases for bundle policy and video frame rate
Menu items below are added.
f. Set video framerate
m. Get video framerate
sbp. Set bundle policy
gbp. Get bundle policy
[Version] 0.3.46
[Issue Type] Add
Change-Id: I9a147947a86e340726734e58b565f20d8c12cc69
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 12 Aug 2021 08:37:30 +0000 (17:37 +0900)]
Add API to set/get bundle policy
Enums are added as below.
- WEBRTC_BUNDLE_POLICY_NONE
- WEBRTC_BUNDLE_POLICY_MAX_BUNDLE
Functions are added as below.
- webrtc_set_bundle_policy()
- webrtc_get_bundle_policy()
[Version] 0.3.45
[Issue Type] API
Change-Id: Ie3a66548f4f0300023ab24a23b84312cd6c888f8
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 13 Jan 2022 02:43:52 +0000 (11:43 +0900)]
Add API to set/get video frame rate
Functions are added as below.
- webrtc_media_source_set_video_framerate()
- webrtc_media_source_get_video_framerate()
[Version] 0.3.44
[Issue Type] API
Change-Id: I3f48537153c245a17a1833404f4441513a2cf6c2
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 20 Jan 2022 04:52:37 +0000 (13:52 +0900)]
Change gcov object install path
[Version] 0.3.43
[Issue Type] Gcov
Change-Id: I10061f55df49d2c7cc4ae43de352cd46808b1e82
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
backto.kim [Thu, 20 Jan 2022 03:20:35 +0000 (12:20 +0900)]
Add missing parameter check code
[Version] 0.3.42
[Issue Type] Improvement
Change-Id: I89cb4efc0a9b533c000f76b65c05ee3cba7c90bf
Sangchul Lee [Fri, 14 Jan 2022 05:49:27 +0000 (14:49 +0900)]
Add omitted error checking in webrtc_create()
[Version] 0.3.41
[Issue Type] Improvement
Change-Id: Ib208fc70c4f477495b8f44a155a85e9ba3c5c123
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
backto.kim [Thu, 6 Jan 2022 07:38:57 +0000 (16:38 +0900)]
Add new data channel buffered amount APIs
Functions are added as below.
- typedef void (*webrtc_data_channel_buffered_amount_low_cb)()
- webrtc_data_channel_get_buffered_amount()
- webrtc_data_channel_set_buffered_amount_low_cb()
- webrtc_data_channel_get_buffered_amount_low_threshold()
- webrtc_data_channel_unset_buffered_amount_low_cb()
[Version] 0.3.40
[Issue Type] API
Change-Id: I3279925a1508955eded709927639ca2249c20137
Sangchul Lee [Tue, 4 Jan 2022 04:59:54 +0000 (13:59 +0900)]
Remove event sources not invoked when destroying webrtc handle
A crash can happen with the previous codes.
It is fixed by removing event sources of idle callbacks
which are not invoked yet before destroying webrtc handle.
[Version] 0.3.39
[Issue Type] Bug fix
Change-Id: Icff390fdd63ee2aa7bfeedd547d63dbb3e0f5d5a
Sangchul Lee [Wed, 22 Dec 2021 09:41:31 +0000 (18:41 +0900)]
webrtc_test: Add vp8 decoding pipeline when __DEBUG_VALIDATE_ENCODED_FRAME_CB__ is enabled
[Version] 0.3.38
[Issue Type] Debug
Change-Id: I1a99f64c86f10769b539e6a15a0fda64b1f19a4d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 8 Nov 2021 05:31:47 +0000 (14:31 +0900)]
webrtc_test: Add opus decoding pipeline when __DEBUG_VALIDATE_ENCODED_FRAME_CB__ is enabled
[Version] 0.3.37
[Issue Type] Debug
Change-Id: I47828c656e7ac86ee9111434b53478f9f50d4d4d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 29 Dec 2021 08:34:53 +0000 (17:34 +0900)]
webrtc_ini: Add new item to set in-band FEC and packet loss percentage
e.g)
[media source]
use inbandfec = no
packet loss percentage = 0
[source audiotest]
; values below will override the default one of [media source] above
use inbandfec = yes
packet loss percentage = 10
[Version] 0.3.36
[Issue Type] Improvement
Change-Id: If4fb6b658d02d7890ddb9924ebe3aceb5cdc4f08
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 28 Dec 2021 07:27:26 +0000 (16:27 +0900)]
Rename payload id to payload type(pt)
New one is the term the most commonly used.
[Version] 0.3.35
[Issue Type] Refactoring
Change-Id: Ic0b070cab1fd445ae0bd327f382a4f3d349356ff
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 12 Nov 2021 08:15:11 +0000 (17:15 +0900)]
webrtc_source: Enable in-band FEC of OPUS encoder
Revise caller of g_object_set()/get() to use multiple lines.
[Version] 0.3.34
[Issue Type] New feature
Change-Id: I8f514758e0e768c1ffad1f2288c87207f963c05a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 14 Dec 2021 06:42:48 +0000 (15:42 +0900)]
webrtc_sink: Enable in-band FEC of OPUS decoder
[Version] 0.3.33
[Issue Type] New feature
Change-Id: I48d271615a1f742e15c2ba2d10e4de023d4430cc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 27 Dec 2021 05:23:59 +0000 (14:23 +0900)]
webrtc_sink: Change parameter and use existing macro to print some log
[Version] 0.3.32
[Issue Type] Refactoring
Change-Id: I46e430d17016bffb4c5b64a88c9597a147564aa2
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 23 Dec 2021 07:07:21 +0000 (16:07 +0900)]
webrtc_ini: Add new item to set bundle policy and apply it
[general]
; SDP bundle policy (0:none, 1:balanced, 2:max compat, 3:max bundle)
bundle policy = 3
Note that 1 and 2 are not supported yet.
[Version] 0.3.31
[Issue Type] Improvement
Change-Id: I47f72ad12d21399727a398ea74da7e452b5a71ec
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>