Sangchul Lee [Fri, 5 Aug 2022 01:19:48 +0000 (10:19 +0900)]
Use GET_CAPS_INFO_FROM_PAD() instead of gst_pad_get_current_caps()
This new macro also tries to call gst_pad_query_caps()
if the gst_get_current_caps() returns NULL value.
[Version] 0.3.194
[Issue Type] Improvement
Change-Id: Iace8d594b3d5da1170445198b976cb8e7d10679a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 4 Aug 2022 02:07:10 +0000 (11:07 +0900)]
webrtc_source_private: Specify 'useinbandfec' attribute only when using 'opusenc'
Codec setting is changeable. So, it is fixed to set it properly.
[Version] 0.3.193
[Issue Type] Bug fix
Change-Id: I64239430689845f5c5ae9cae51d4a72700c6c4de
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 4 Aug 2022 00:29:31 +0000 (09:29 +0900)]
webrtc_private: Improve _check_and_encode_turn_url()
Becuase a password could be encoded by base64,
it also needs to apply uri encoding.
[Version] 0.3.192
[Issue Type] Improvement
Change-Id: Ic57be7d44791e120d60abca9a3f1f83407e8fbcf
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 27 Jul 2022 03:06:46 +0000 (12:06 +0900)]
Add API to set/get encoder bitrate
Functions are added as below.
- webrtc_media_source_set_encoder_bitrate()
- webrtc_media_source_get_encoder_bitrate()
[Version] 0.3.191
[Issue Type] API
Change-Id: I038da91a4ea00e4acac3f92d52a33b8c81ad6e29
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 13 Jul 2022 13:52:51 +0000 (22:52 +0900)]
Add API to set/get camera device id
Functions are added as below.
- webrtc_camera_source_set_device_id()
- webrtc_camera_source_get_device_id()
[Version] 0.3.190
[Issue Type] API
Change-Id: I86a6e87049aaf0d83c3a3dab46c472d8dbe9b27b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 2 Aug 2022 06:24:15 +0000 (15:24 +0900)]
CMakefile: Revise file exclusion pattern to include webrtc_internal.h
Devel package must have the internal header.
[Version] 0.3.189
[Issue Type] Bug fix / packaging
Change-Id: I4deb602313cbcd0f0adf01cea19a316958c11fba
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Wed, 27 Jul 2022 08:03:18 +0000 (17:03 +0900)]
webrtc_source_file: Encoding audio stream from filesrc with default codec for compatibility
gstreamer does not support payloaders for some encoding audio formats.
In this case, after decoding, encode it again with the corresponding format in ini.
[Version] 0.3.188
[Issue Type] Improvement
Change-Id: I5c2f19bfe0056986e0128770ef9038966b7e3989
hj kim [Thu, 28 Jul 2022 06:42:55 +0000 (15:42 +0900)]
webrtc_source_file: remove fakesink pad block probe when release filesrc related resources
[Version] 0.3.187
[Issue Type] Bug fix
Change-Id: I6abcec9bcf02a014bbb7d5bc448381938797fab6
hj kim [Tue, 2 Aug 2022 02:30:35 +0000 (11:30 +0900)]
webrtc_source_file: rename function name _remove_filesrc_pad_block_probe to _remove_all_filesrc_pad_block_probe
[Version] 0.3.186
[Issue Type] Improvement
Change-Id: Ib12837ff188de9716a62120dd2b0104627bbfa2e
hj kim [Thu, 28 Jul 2022 04:55:48 +0000 (13:55 +0900)]
webrtc_source_file: remove all elements in filesrc pipeline except filesrc and decodebin
The result of the operation is same now.
However, there is no need to care about the elements can be added/deleted.
[Version] 0.3.185
[Issue Type] Improvement
Change-Id: I50e74b4db3738374d3bbeaf558e773ba7b13f17f
hj kim [Wed, 27 Jul 2022 09:00:12 +0000 (18:00 +0900)]
webrtc_source_file: remove elements created when error occurred
[Version] 0.3.184
[Issue Type] Improvement
Change-Id: I6fc4c73e27a031c122abfba77b10d8cd8b0064ee
Sangchul Lee [Fri, 29 Jul 2022 07:47:39 +0000 (16:47 +0900)]
webrtc_source_private: Set name to encoder element
[Version] 0.3.183
[Issue Type] Improvement
Change-Id: I491a618176e819a735377e0248f86b4d6a325893
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 28 Jul 2022 15:53:05 +0000 (00:53 +0900)]
webrtc_test: Fix crash when URL of '-c' option does not have port
[Version] 0.3.182
[Issue Type] Crash fix
Change-Id: Ic09e1c7a4ee5bebcc6c9487bb8757aa27da7945d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 28 Jul 2022 15:43:31 +0000 (00:43 +0900)]
Apply URL encoding when username of turn server URL has ':'
The form of URL should be turn(s)://username:password@host:port.
If the username has ':', for example '
1221435:someidstring',
this could not be applied properly inside of webrtcbin.
In this case, this patch fixes it with using URL encoding
to avoid this situation.
[Version] 0.3.181
[Issue Type] Bug fix
Change-Id: Icd30fdbea39469526abde8016745fc291bf2d4a5
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 27 Jul 2022 08:02:44 +0000 (17:02 +0900)]
webrtc_test: Add webrtc_test_signaling.c and move related codes to it
[Version] 0.3.180
[Issue Type] Refactoring
Change-Id: I4b75e65616d28a2bda6da4bc95f9c45160ff5ac5
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 27 Jul 2022 11:58:34 +0000 (20:58 +0900)]
webrtc_private: Rename _webrtc_stop() to _stop()
[Version] 0.3.179
[Issue Type] Convention
Change-Id: I18a9e20c7e201ddfe929e75c02416d1225d0f92a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 27 Jul 2022 03:25:30 +0000 (12:25 +0900)]
webrtc_source: Remove some macros for exclusion of line coverage test
[Version] 0.3.178
[Issue Type] Line coverage
Change-Id: I8e867c50631e0aa2bfad553c7d49af2acdc52099
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 27 Jul 2022 03:46:47 +0000 (12:46 +0900)]
fixup! webrtc_source: Fix source id allocation
It is fixed due to the some UTCs fail.
Change-Id: I7ff6034dfb6e66aacadccf6b11b2dad07ae6ad47
Sangchul Lee [Tue, 26 Jul 2022 23:21:49 +0000 (08:21 +0900)]
webrtc_source: Change log level of peer pad check
It could not be an error since we've changed the timing of link.
[Version] 0.3.177
[Issue Type] Log
Change-Id: I9ca8ba25f02ef3cb590f6b3be9d49fa6879d6c21
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Tue, 26 Jul 2022 07:35:19 +0000 (16:35 +0900)]
webrtc_source_mediapacket: move _set_media_format() to webrtc_source_mediapacket.c
Plus, remove some mediapacket internal APIs from webrtc_private.h and add static keyword.
[Version] 0.3.176
[Issue Type] Refactoring
Change-Id: I81f958dbc33a600075295ee558ce5a377a9d7045
hj kim [Tue, 26 Jul 2022 07:26:42 +0000 (16:26 +0900)]
webrtc_source_private: move _create_rest_of_elements() to webrtc_source_private.c
[Version] 0.3.175
[Issue Type] Refactoring
Change-Id: I9edca1f8f83b0b6f7d59d3124c1ea2ba90a7fd71
Sangchul Lee [Tue, 28 Jun 2022 03:20:39 +0000 (12:20 +0900)]
webrtc_source: Fix source id allocation
It is changed to allocate source id with a way of increasing number.
Removing and adding a source could occur an issue inside of gstwebrtcbin
when creating description. Media attributes order in the description did
not match the order of source ids. It is now fixed.
[Version] 0.3.174
[Issue Type] Improvement
Change-Id: I2c062ed3261f95da8a69a94dfed00f3a86cb9583
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 26 Jul 2022 02:16:58 +0000 (11:16 +0900)]
webrtc_sink/source: Unref object obtained by gst_element_get_parent()
[Version] 0.3.173
[Issue Type] Resource leak
Change-Id: I5f4589c1c9d7daa29f493250294016d2ffecba51
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Tue, 26 Jul 2022 05:01:14 +0000 (14:01 +0900)]
webrtc_private: grouping APIs in header file and add missing static keyword
Plus, move _get_screen_resolution() to the proper header file webrtc_private.h,
and remove functions with only definition remaining
_set_rtp_packet_drop_probability() and _get_rtp_packet_drop_probability().
[Version] 0.3.172
[Issue Type] Refactoring
Change-Id: I95c1e520618994705e558f0885ebca51d4d2d89b
hj kim [Tue, 26 Jul 2022 02:03:20 +0000 (11:03 +0900)]
webrtc_source_mediapacket: apply coding rule for internal functions
Plus, move _set_mediapacketsrc_codec_info() to the proper header file webrtc_private.h
[Version] 0.3.171
[Issue Type] Convention
Change-Id: Icd2ec651ab5e3d450379c206fbf5c5c4f2515253
hj kim [Mon, 25 Jul 2022 07:37:34 +0000 (16:37 +0900)]
webrtc_source_file: move filesrc pipeline and bin related code to webrtc_source_file.c
[Version] 0.3.170
[Issue Type] Refactoring
Change-Id: I387fe08385005a0519126b65139d435e7e226c58
hj kim [Mon, 25 Jul 2022 09:21:21 +0000 (18:21 +0900)]
webrtc_source_private: move _link_source_with_webrtcbin() to webrtc_source_private.c
[Version] 0.3.169
[Issue Type] Refactoring
Change-Id: I8989d95945111ce7b84aaf19a22cca19a873a445
hj kim [Mon, 25 Jul 2022 08:32:07 +0000 (17:32 +0900)]
webrtc_source_private: move _add_transceiver() to webrtc_source_private.c
[Version] 0.3.168
[Issue Type] Refactoring
Change-Id: I1bcbe6d63788f663228cf47772c214ad7ab61e07
hj kim [Mon, 25 Jul 2022 08:09:32 +0000 (17:09 +0900)]
webrtc_source_private: move _get_payload_info() and related code to webrtc_source_private.c
[Version] 0.3.167
[Issue Type] Refactoring
Change-Id: I6aba8972a7d42a2bbe10ef6fbf092a3b780da404
hj kim [Thu, 21 Jul 2022 01:29:04 +0000 (10:29 +0900)]
webrtc_source: just move pad probe related APIs to webrtc_source_private.c
[Version] 0.3.166
[Issue Type] Refactoring
Change-Id: I52dd7d78694645acf8da74d9ebfea60d9918c83d
hj kim [Thu, 21 Jul 2022 02:20:25 +0000 (11:20 +0900)]
webrtc_source_private: move _set_payload_type() to webrtc_source_private.c
[Version] 0.3.165
[Issue Type] Refactoring
Change-Id: If44d7add0f791f6cd2889a7a84c9d409d47aba78
hj kim [Wed, 20 Jul 2022 08:43:02 +0000 (17:43 +0900)]
webrtc_source_private: Add new function to get gstreamer element name
[Version] 0.3.164
[Issue Type] Refactoring
Change-Id: If44c51fc4c160236514e6604417d12043aaf2706
hj kim [Mon, 18 Jul 2022 06:00:27 +0000 (15:00 +0900)]
media_source_file: Make the file source's transceiver direction changeable
Transceiver's direction can be changed for each media types before webrtc_start().
However, file source's media types were determined after webrtc_start().
So, set media types when set media path(before webrtc_start()), and allow transceiver direction change.
[Version] 0.3.163
[Issue Type] Improvement
Change-Id: I181ba95e5877fad103e50d8253cda8eeeba0d66f
Sangchul Lee [Thu, 21 Jul 2022 06:29:54 +0000 (15:29 +0900)]
Add capi-media-webrtc-test-headless package
New test binary named 'webrtc_test_headless' is exported by this package
without UI and esplusplayer libraries dependencies.
[Version] 0.3.162
[Issue Type] Packaging
Change-Id: Ifa0dfc951d6e608c62016a923ede1bec2edd82e4
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 21 Jul 2022 03:07:23 +0000 (12:07 +0900)]
Seperate test package from capi-media-webrtc package
[Version] 0.3.161
[Issue Type] Packaging
Change-Id: Ic4b5deeac36a9e541927de2d0fcb5ab9174365ca
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 21 Jul 2022 05:36:57 +0000 (14:36 +0900)]
webrtc_source: Remove 'Elementary' dependency with a compiling option
To remove the 'Elementary' dependency, pass an option of gbs build below.
--define "without_ui 1"
[Version] 0.3.160
[Issue Type] Dependency
Change-Id: I8475675970e77017ae58d691ee68bf739d58dad9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 21 Jul 2022 07:22:30 +0000 (16:22 +0900)]
webrtc_test: Exclude espp feature as default
To render data with espp library, put an option below to gbs build.
--define "test_espp_render 1"
[Version] 0.3.159
[Issue Type] Dependency
Change-Id: If63063c46cb8e8298ed0cf81477a8e6e3a03cd6e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Wed, 13 Jul 2022 06:48:05 +0000 (15:48 +0900)]
Set a transceiver manually when the source direction is 'recvonly'
when offer's source direction is 'recvonly', gstreamer webrtc doesn't add media in offer SDP.
then, offerer can't receive media from the peer, so manual setting is needed.
plus, change transceiver setting time of null source from webrtc_media_source_set_transceiver_codec()
to webrtc_start() like other sources.
[Version] 0.3.158
[Issue Type] Bug fix
Change-Id: I072084d0888003975a039304d18a6f2d28b4f4ca
Sangchul Lee [Wed, 13 Jul 2022 14:43:57 +0000 (23:43 +0900)]
Rename webrtc_source_common.* to webrtc_source_private.*
It is to unify the naming of files. It is the same relationship between
webrtc.c and webrtc_private.c.
webrtc_source_mediapacket.h is also removed and function prototypes
in this file are moved to webrtc_private.h.
[Version] 0.3.157
[Issue Type] Rename
Change-Id: I2104f081d65c4ae4bed4df72106a854a7013ef96
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 13 Jul 2022 05:38:26 +0000 (14:38 +0900)]
webrtc_private: Use gst.sources array to keep order to set transceiver properly
[Version] 0.3.156
[Issue Type] Bug fix
Change-Id: I36e5c586e3153343d851aad1318abcf6eba49959
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Wed, 13 Jul 2022 02:14:41 +0000 (11:14 +0900)]
webrtc_source: Add VORBIS and JPEG codecs to payload info
media packet source supports them.
[Version] 0.3.155
[Issue Type] Improvement
Change-Id: I4771e43f7b4d36d42722ad76c86491619fc93e65
Sangchul Lee [Wed, 13 Jul 2022 00:36:43 +0000 (09:36 +0900)]
webrtc_private: Refactor _add_elements_to_bin()
g_autoptr() is used for temporary list.
Some comments are removed with renaming callback function.
Error handling logic is separated with goto statement.
[Version] 0.3.154
[Issue Type] Refactoring
Change-Id: Ie2bfc61a0cda63502e925652fbdf3db1e8d39874
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 13 Jul 2022 00:02:48 +0000 (09:02 +0900)]
Use GST_ELEMENT_CAST() instead of (GstElement *)
[Version] 0.3.153
[Issue Type] Improvement
Change-Id: Id69d0ae78d8b599b6263626494bc7a743c5f59ee
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 11 Jul 2022 23:40:43 +0000 (08:40 +0900)]
webrtc_display: Add support for NV12 format
[Version] 0.3.152
[Issue Type] Improvement
Change-Id: Iae1eda6a8d702fb4000ee0f1f101d42923d8ac4e
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Tue, 12 Jul 2022 06:57:56 +0000 (15:57 +0900)]
webrtc_source: fix wrong payload type for file source
plus, rearrange some included header files.
[Version] 0.3.151
[Issue Type] Bug fix
Change-Id: I4a23a38a1b203f05cd9abfe5dfa299c830ed931a
Sangchul Lee [Mon, 11 Jul 2022 02:31:32 +0000 (11:31 +0900)]
webrtc_ini: Add new item to set EVAS native surface tbm format
It is also modified that loopback pipeline of source and video sink bin
apply it in case of EVAS surface type.
[Version] 0.3.150
[Issue Type] New feature
Change-Id: Iec14a0e7dbe1d4c282ecb7246ac81392d9aafd77
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 11 Jul 2022 01:03:06 +0000 (10:03 +0900)]
webrtc_display: Add support for YV12 format
[Version] 0.3.149
[Issue Type] Improvement
Change-Id: I9f1c31c1ce3189998709e8a1288c25f2a19ef6c1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 11 Jul 2022 05:34:05 +0000 (14:34 +0900)]
webrtc_sink: Use element list in __build_audio/videosink()
Some internal functions are moved from webrtc_source_common.h
to webrtc_private.h.
[Version] 0.3.148
[Issue Type] Refactoring
Change-Id: I4334afd66395391b5978f49f563e0c8b998ceed2
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 7 Jul 2022 02:39:05 +0000 (11:39 +0900)]
webrtc_test: Add execution options to launch/connect signaling server
-l, --launch-signaling-server port to be used for private signaling server (e.g. 8080)
-c, --connect-signaling-server signaling server URL:PORT to connect (e.g. wss://123.123.123.123:8443, 192.168.1.123:8080)
e.g.)
To use private signaling server
- peer1: webrtc_test -l 8080 -c 127.0.0.1:8080
- peer2: webrtc_test -c 127.0.0.1:8080
To use public signaling server(wss:// or ws://)
- peer1: webrtc_test -c wss://123.123.123.123:8443
- peer2: webrtc_test -c wss://123.123.123.123:8443
[Version] 0.3.147
[Issue Type] New feature
Change-Id: I18a6a3b04e4abe468943b9c6a5e8cd9c1726f4d1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 7 Jul 2022 06:19:56 +0000 (15:19 +0900)]
webrtc_test: Refine signaling server structure
[Version] 0.3.146
[Issue Type] Improvement
Change-Id: I52224bc3a3949368231f0b54388dd9d1aa5d22d0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
heechul.jeon [Wed, 6 Jul 2022 08:00:25 +0000 (17:00 +0900)]
webrtc_source: Split code into several files
- focused on reduce size of webrtc_source.c while not touching function
implementation
[Version] 0.3.145
[Issue Type] Refactoring
Change-Id: I2ddfa7600098b76a0938ba6c7a718963388f5286
Signed-off-by: heechul.jeon <heechul.jeon@samsung.com>
Sangchul Lee [Wed, 6 Jul 2022 03:02:15 +0000 (12:02 +0900)]
fixup! webrtc_test: Move functions to webrtc_test_validate.c
64-bit compiling errors are fixed.
Change-Id: I04d033785c35b211d47b94566427751017dc3459
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 5 Jul 2022 03:54:25 +0000 (12:54 +0900)]
fixup! Add API to set/get transceiver codec
Unnecessary type check is removed which does not comply with doxygen.
Change-Id: I3e66a52572fb323763198504859e0b0ab2550282
hj kim [Mon, 4 Jul 2022 01:57:49 +0000 (10:57 +0900)]
webrtc_source: Add sub-function to set payload type
[Version] 0.3.144
[Issue Type] Refactoring
Change-Id: Idf046a7fed1d86081ed7abb97c6650cd9bb9269a
Sangchul Lee [Mon, 4 Jul 2022 03:58:22 +0000 (12:58 +0900)]
webrtc_sink: Add sub-function to set ghost pad target and link pads
[Version] 0.3.143
[Issue Type] Refactoring
Change-Id: I151a6dca9a6442a0be353040e66d71d960cd89e1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 27 Jun 2022 06:54:02 +0000 (15:54 +0900)]
webrtc_source: Add sub-function to check params and get ini source
[Version] 0.3.142
[Issue Type] Refactoring
Change-Id: I27dc6ea768b64e730e2e06d9ed1327fbd289c75a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Fri, 1 Jul 2022 06:55:14 +0000 (15:55 +0900)]
webrtc_source: Fix to return previous payload type before getting new one
[Version] 0.3.141
[Issue Type] Bug fix
Change-Id: I1680cac9e845da25102c88bcab8365d1df450b5c
Sangchul Lee [Thu, 30 Jun 2022 02:21:56 +0000 (11:21 +0900)]
webrtc_test: Refactor codes regarding ESPP integration
Some functions are moved to webrtc_test_espp.c newly added.
TIZEN_FEATURE_ESPP definition is added and applied.
This patch increases PredefinedPreprocessor(PP) score of SAM metrics.
[Version] 0.3.140
[Issue Type] Refactoring
Change-Id: Ib9b8fb48032c4cd742e8d94b73759b1bd45fb81b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 27 Jun 2022 00:03:55 +0000 (09:03 +0900)]
webrtc_test: Move functions to webrtc_test_validate.c
[Version] 0.3.139
[Issue Type] Refactoring
Change-Id: I00b78ac410b3ae3c18567d5e9dd5c38bef62f1c8
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Sun, 26 Jun 2022 23:31:08 +0000 (08:31 +0900)]
webrtc_test: Add execution option to replace build definition
-f, --validate-feeding-data
: validate media packet source feeding data by rendering these on gst pipeline
-e, --validate-encoded-frame-cb
: validate media packets from encoded frame callback by rendering these on gst pipeline
This patch increases PredefinedPreprocessor(PP) score of SAM metrics.
[Version] 0.3.138
[Issue Type] Refactoring
Change-Id: I0811831c533d604827363dd16c522ee528d6a9aa
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 24 Jun 2022 05:44:15 +0000 (14:44 +0900)]
webrtc_test: Add support for program execution option
proxy setting is moved to the execution option from menu item.
webrtc_test [OPTION]
-p, --proxy proxy URL to use (e.g. http://123.123.123.123:8080)
-h, --help help
[Version] 0.3.137
[Issue Type] Improvement
Change-Id: I438c0d79a5715562901112199318e8ea2c518fd9
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 1 Oct 2021 08:52:35 +0000 (17:52 +0900)]
webrtc_test: esplusplayer integration
The esplusplayer will be activated to render received data
if an encoded frame callback is set. Use commands below.
'sa'. Set encoded audio frame callback
'sv'. Set encoded video frame callback
[Version] 0.3.136
[Issue Type] New feature
Change-Id: I1400be4a77b6b99db44788dcf428a0e969e9571f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 28 Jun 2022 00:29:00 +0000 (09:29 +0900)]
fixup! webrtc_source: Postpone the time of linking source with webrtcbin
g_hash_table_foreach() invokes a callback not in order of source id.
It affects media attribute order in offer description.
It is fixed to keep the same order before the patch above is applied.
Change-Id: Ie7c2ae7a0d1fac5f582e53c48a87f29f4254b403
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Thu, 23 Jun 2022 01:56:44 +0000 (10:56 +0900)]
webrtc_source: Use display resolution as default resolution for screen source
To transmit a screen with the same display ratio as the actual display,
sets the actual display resolution to the default.
[Version] 0.3.135
[Issue Type] Improvement
Change-Id: I1c6c855ebc66944e3d25acec210e3ddb69b859d7
hj kim [Tue, 21 Jun 2022 08:46:57 +0000 (17:46 +0900)]
webrtc_source: Fix problems fail to get default video resolution and framerate after adding a media source
[Version] 0.3.134
[Issue Type] Bug fix
Change-Id: I42cc1604ab07c545fe54df848fc24d855a5e511a
Sangchul Lee [Thu, 23 Jun 2022 02:45:02 +0000 (11:45 +0900)]
Fix doxygen
An irrelevant word is fixed.
Some verbs are replaced with another one to make it clearer.
[Version] 0.3.133
[Issue Type] Doxygen
Change-Id: I050f997e7195dab56a34b0bba626cf4d065b0d04
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 27 Jun 2022 01:17:33 +0000 (10:17 +0900)]
Revise webrtc_media_source_foreach_supported_transceiver_codec()
The second paramter 'source_id' is replaced with 'source_type'.
Because supported codecs are decided by source type.
[Version] 0.3.132
[Issue Type] API
Change-Id: I37baa27a8e2fb3f1211644795a246e11585f6408
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 9 Jun 2022 08:44:37 +0000 (17:44 +0900)]
webrtc_test: Add menu to set/get transceiver codec
[Version] 0.3.131
[Issue Type] Add
Change-Id: Iea9e1bd508dc003dabd447dd91020bd9d44385fc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
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>