hj kim [Mon, 26 Sep 2022 05:40:23 +0000 (14:40 +0900)]
Make a function to set origin video source resolution
[Version] 0.3.252
[Issue Type] Refactoring
Change-Id: Ifc3a95a78c3265d34f6cb9b825ee6bc76a8ad0e5
hj kim [Fri, 23 Sep 2022 07:20:08 +0000 (16:20 +0900)]
webrtc_source_screen: move resolution setting code for screen source to webrtc_source_screen.c
setting the default video resolution to screen resolution is only required for screen source.
[Version] 0.3.251
[Issue Type] Refactoring
Change-Id: I25dbf22a6d8a8469705e6fee7c69bbd1369b2a32
hj kim [Fri, 23 Sep 2022 06:59:28 +0000 (15:59 +0900)]
webrtc_source_screen: move screen source related code to webrtc_source_screen.c
[Version] 0.3.250
[Issue Type] Refactoring
Change-Id: Ib1f9d05448de4e0f26a705195323125fd4bd9cd6
Sangchul Lee [Mon, 26 Sep 2022 03:24:35 +0000 (12:24 +0900)]
webrtc_display: Return NULL in case of mm_display_interface_init() failure
[Version] 0.3.249
[Issue Type] Bug fix
Change-Id: I389a9a8e99e5ebfd2544a641a1b30f61c8bd155f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Thu, 22 Sep 2022 23:52:35 +0000 (08:52 +0900)]
webrtc_source_private: Reduce code complexity
[Version] 0.3.248
[Issue Type] Refactoring
Change-Id: Iecdd0ed61d19c2899085614e96a9a71204ad54dd
hj kim [Thu, 1 Sep 2022 06:37:22 +0000 (15:37 +0900)]
Make internal APIs for crop screen source public
Below functions are moved and have platform privilege.
- webrtc_screen_source_set_crop()
- webrtc_screen_source_unset_crop()
[Version] 0.3.247
[Issue Type] API
Change-Id: Iad8d3b9842db4c033052e62596c5a79610de22b1
hj kim [Wed, 21 Sep 2022 02:28:28 +0000 (11:28 +0900)]
add videorate to support dynamic framerate change
It doesn't support increasing framerate.
[Version] 0.3.246
[Issue Type] Improvement
Change-Id: Iea5ce0881ae55e1d881d847b88ff41dcede75a6f
Sangchul Lee [Wed, 21 Sep 2022 08:38:00 +0000 (17:38 +0900)]
Apply restriction for use of WEBRTC_MEDIA_SOURCE_TYPE_SCREEN
Locations of macro to exclude lines from coverage measurement
are also modified.
[Version] 0.3.245
[Issue Type] API
Change-Id: Ibbe0bf8a32f2c61b3734690cbe9068809d88349d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Wed, 21 Sep 2022 05:25:00 +0000 (14:25 +0900)]
webrtc_source_screen: sensor API dependency change
[Version] 0.3.244
[Issue Type] package change
Change-Id: I8df9aad81f4d28b86a2503f3a7261f5b44389395
Sangchul Lee [Tue, 20 Sep 2022 04:23:14 +0000 (13:23 +0900)]
webrtc_source_camera: Add CAMERA_DEVICE_TYPE_DUMMY for videotestsrc element
A tizen emulator uses 'videotestsrc' element as a camera source.
Now, we use 'pattern' property for device id in this case.
This fixes UTC failures - set/get camera device id.
[Version] 0.3.243
[Issue Type] Bug fix / UTC failure
Change-Id: I36ca271ebb5543fdb88cc197b7cd3fc05936f59a
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 16 Sep 2022 13:14:24 +0000 (22:14 +0900)]
webrtc_transceiver: Add encoding-params(2) to caps in case of OPUS codec
It represents channels.
In case of gst to gst, it worked fine without it. But in case of gst
to web, it does not work(web API failure).
It is also mandatory according to RFC7587, so it is added.
These codes are related to OPUS media of 'recvonly' in offer description.
[Version] 0.3.242
[Issue Type] Improvement / Compatibility
Change-Id: I57596fbb5b9b7c99efe856e5127de36d89ef6d88
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 19 Sep 2022 02:43:01 +0000 (11:43 +0900)]
webrtc_transceiver: Fix to add missing payload type of an offer description
When transceiver direction was set to 'recvonly', a particular transceiver
was added with a preference caps without payload type. When trying to
create an offer description, the payload type must be added to the caps
regardless its source type.
[Version] 0.3.241
[Issue Type] Bug fix
Change-Id: I924b297a3a23522ca7466c45eb0d65de1972d82c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 15 Sep 2022 02:11:28 +0000 (11:11 +0900)]
Add more macro to exclude lines from coverage measurement
[Version] 0.3.240
[Issue Type] Line coverage
Change-Id: I0a9b3a680c19674e8cf33a7e03447cae4879186c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Wed, 14 Sep 2022 05:55:02 +0000 (14:55 +0900)]
webrtc_private: Move some structures to the proper source file
[Version] 0.3.239
[Issue Type] Refactoring
Change-Id: Id3bfa94408aeaad06a19159dfdb33f2b06f04d53
Sangchul Lee [Wed, 14 Sep 2022 03:04:03 +0000 (12:04 +0900)]
webrtc_test_validate: Add 'channel-mapping-family' value to appsrc caps for OPUS codec
It fixes not-negotiated issue on appsrc.
[Version] 0.3.238
[Issue Type] Bug fix
Change-Id: I2e256e7d7abff69e1e1bec6c1c2da025b5923af0
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 13 Sep 2022 07:12:25 +0000 (16:12 +0900)]
webrtc_internal: Revise webrtc_media_source_set_payload_type() for media packet source
This function should affect media packet source. It is fixed.
[Version] 0.3.237
[Issue Type] Bug fix
Change-Id: I12b49da60526d2ba93cef07e1ceea9b4e887df33
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 8 Sep 2022 07:30:04 +0000 (16:30 +0900)]
webrtc_source_screen: Use mm_display_interface_get_screen_size() instead of elm_win_screen_size_get()
This will remove the dependency of elementary lib.
[Version] 0.3.236
[Issue Type] Dependency
Change-Id: I0ee14f4c100edf1c4b5aec02732768eb82acbf54
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Mon, 5 Sep 2022 03:53:29 +0000 (12:53 +0900)]
webrtc_source_file: move file source related code to webrtc_source_file.c
[Version] 0.3.235
[Issue Type] Refactoring
Change-Id: I2df68784dcb962533faa95c3661a99f12aec9f0a
hj kim [Mon, 5 Sep 2022 03:27:58 +0000 (12:27 +0900)]
webrtc_source_private: Add function to release request pad
_release_request_pad()
[Version] 0.3.234
[Issue Type] Refactoring
Change-Id: Id6837eb82fae01c28a02c14f71c1e3fa47427488
hj kim [Mon, 5 Sep 2022 02:41:48 +0000 (11:41 +0900)]
webrtc_source_loopback: Add some functions to update loopback
Below functions added.
-_set_need_decoding_for_loopback()
-_destroy_looopback_render_pipeline()
[Version] 0.3.233
[Issue Type] Refactoring
Change-Id: I94b7ac49fb9be0d830e701d6000bbbbe1eeafbb1
Sangchul Lee [Mon, 5 Sep 2022 07:47:47 +0000 (16:47 +0900)]
webrtc_source_screen: Check return values and release resource of sensor API
[Version] 0.3.232
[Issue Type] Coverity defect(CHECKED_RETURN) & bug fix
Change-Id: Ic5f90f54c1bd070101da6e1433d186d5444dd305
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Mon, 5 Sep 2022 01:10:19 +0000 (10:10 +0900)]
Add webrtc_source_loopback and move related codes to it
[Version] 0.3.231
[Issue Type] Refactoring
Change-Id: I7c402b2db477f87436dd6e6f0d463a06419e3cd0
Sangchul Lee [Mon, 5 Sep 2022 03:33:12 +0000 (12:33 +0900)]
CMakefile: Exclude capi-system-sensor dependency when using TIZEN_TV
sensor-internal.h could not be found with tv build.
(it is found by QB.)
[Version] 0.3.230
[Issue Type] Build dependency
Change-Id: I56c0eb28b251d3de9a701f31d326a42dd4d8d6ca
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Fri, 2 Sep 2022 06:38:46 +0000 (15:38 +0900)]
Move some APIs to proper source file and make them static
[Version] 0.3.229
[Issue Type] Refactoring
Change-Id: I377c6c12b46d0d4ec80aa77be773efb19309c155
Sangchul Lee [Thu, 1 Sep 2022 07:37:42 +0000 (16:37 +0900)]
Add webrtc_transceiver.c and related codes are moved into it
[Version] 0.3.228
[Issue Type] Refactoring
Change-Id: Ic010a677849bc9253e3fcb0459af2a8dcf1eb9d5
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 1 Sep 2022 05:42:09 +0000 (14:42 +0900)]
webrtc_test_espp: Revise logic to submit audio/video packets properly
Following steps below are required for espp.
1. activate both stream types
2. invoke prepare async
3. after receiving ready to prepare callback for each stream type
4. submit packets for each stream type
5. finally, start espp handle when prepare async done callback is invoked
[Version] 0.3.227
[Issue Type] Bug fix
Change-Id: I3a72b9ab9088e5a0241b4da49b6dfe3ecb1319c1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Mon, 29 Aug 2022 07:14:03 +0000 (16:14 +0900)]
webrtc_ini: Add functions to get value from ini
[Version] 0.3.226
[Issue Type] Refactoring
Change-Id: I78e4fb36d6562ed0395a7c9b6bf26cdd4ad35e2f
hj kim [Fri, 29 Jul 2022 01:22:22 +0000 (10:22 +0900)]
remove redundant code
Plus, apply tizen coding rule.
[Version] 0.3.225
[Issue Type] Refactoring
Change-Id: I31ac8625327a316cafdf3db7aeeeffc150d6c512
hj kim [Wed, 31 Aug 2022 05:02:23 +0000 (14:02 +0900)]
fixup! webrtc_sorce_screen: Destroy rotate sensor listener handle
Rotate sensor listener handle must be destroyed before destroying webrtc.
Change-Id: I0537f37ba387aa3a6fec08eb39afd94069d23c26
hj kim [Wed, 24 Aug 2022 08:53:03 +0000 (17:53 +0900)]
webrtc_source_screen: move pad probe position for loopback on crop
screen source can have crop element, so the video stream for loopback should be collected on crop element.
and proper resolution after crop should be applied to video loopback.
[Version] 0.3.224
[Issue Type] Improvement
Change-Id: Ie7585d3115cad392fe272a254ff460ee0e92b353
Sangchul Lee [Wed, 31 Aug 2022 03:01:02 +0000 (12:01 +0900)]
Fix doxygen error
@ is doxygen command.
To avoid this error it needs to add an @ before @.
(It is reported and guided by API team)
[Version] 0.3.223
[Issue Type] Doxygen
Change-Id: Ie79b8018e19b3bb44d2cf8c1d59d84fe3487c211
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 31 Aug 2022 02:31:49 +0000 (11:31 +0900)]
CMakefile: Add capi-system-sensor dependency only when using TIZEN_FEATURE_UI
This library is only used in case of using screen source.
[Version] 0.3.222
[Issue Type] Build dependency
Change-Id: I374cd02c2b7820b5ab39d992e7417e6d7aa31668
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 30 Aug 2022 08:22:38 +0000 (17:22 +0900)]
webrtc_sink/source: Fix resource leaks
[Version] 0.3.221
[Issue Type] Coverity defect
Change-Id: I318bcb7d6e962df59c36988d02d89d785dc23a7b
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 25 Aug 2022 07:04:36 +0000 (16:04 +0900)]
Add more functions with @see doxygen commnad for webrtc_add_media_source()
[Version] 0.3.220
[Issue Type] Doxygen
Change-Id: Ia787c48506065e5f3e43ed13d79d492e58173698
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 30 Aug 2022 06:56:36 +0000 (15:56 +0900)]
webrtc_test_espp: Fix issue about calling esplusplayer_prepare_async()
This patch fixed issues below
1. _prepare_async() function is called too early
2. Occasionally, redundant _prepare_async() function call happens
[Version] 0.3.219
[Issue Type] Bug fix
Change-Id: Iaca99089df929d385cf535a6accd4a0b80fc6a4c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Thu, 25 Aug 2022 06:45:51 +0000 (15:45 +0900)]
webrtc_internal: Add more error conditions to webrtc_media_source_set_payload_type()
Conditions are added to return WEBRTC_ERROR_INVALID_PARAMETER.
1. check if the media type is valid.
2. check if the codec only allows fixed payload type or not
and check the input parameter value.
[Version] 0.3.218
[Issue Type] Improvement
Change-Id: I711f0d7ffc9d88e634d93656f91e3789e13c928f
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 30 Aug 2022 02:31:56 +0000 (11:31 +0900)]
spec: Exclude headless test package when tizen_espp_render option is set
Before this patch, when using 'tizen_espp_render' option, a build error
regarding webrtc_test_headless occurs. It is fixed now.
[Version] 0.3.217
[Issue Type] Bug fix / packaging
Change-Id: I5c242fcdddbd60e042bcbd00358c5204dd2774e3
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Wed, 24 Aug 2022 06:38:07 +0000 (15:38 +0900)]
webrtc_source: crop and resolution change cannot be done at the same time
The results can vary depending on the order of resolution change and crop.
Therefore, those cannot be set at the same time.
[Version] 0.3.216
[Issue Type] Improvement
Change-Id: I305e1f9e72ce43629d733e31ec5d18cb005b1a9e
hj kim [Wed, 10 Aug 2022 05:21:10 +0000 (14:21 +0900)]
webrtc_source_screen: remove screen mode parameter from webrtc_screen_source_set_crop()
Check if the screen is rotated directly through the sensor.
[Version] 0.3.215
[Issue Type] Improvement
Change-Id: I3067c8ffe651a4b2ac7230ee8adeb91d2f39dc67
Sangchul Lee [Wed, 24 Aug 2022 10:26:13 +0000 (19:26 +0900)]
webrtc_test: Fix deadlock issue
Without stopping push packets to a media packet source and then
when trying to remove the source or to destroy webrtc handle,
it was blocked. This issue is fixed.
[Version] 0.3.214
[Issue Type] Bug fix
Change-Id: I6c8a5710b1772cf1756f99db8de1b7f07411f442
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 24 Aug 2022 09:26:28 +0000 (18:26 +0900)]
webrtc_test: Remove redundant codes in switch-case
Some codes are moved to the top or the bottom of the function
to reduce lines.
[Version] 0.3.213
[Issue Type] Refactoring
Change-Id: I22889884caf3f562703b557824f5b0dddb320cff
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Wed, 24 Aug 2022 07:07:08 +0000 (16:07 +0900)]
webrtc_private: Get mlineindex from source index
It fixes an issue that FEC is not applied when webrtc handle with
source(s) is operated as an answerer.
Due to the implementation of webrtcbin, only a transceiver created
by webrtcbin itself has a valid prop value of mlineindex. Others have
-1 value for this. Hence, _update_transceivers_fec() is now using an
index of sources as a mlineindex.
[Version] 0.3.212
[Issue Type] Bug fix
Change-Id: I4e3ead3413effe202e3034d88ec6bf7f2aa0f221
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 23 Aug 2022 12:41:06 +0000 (21:41 +0900)]
fixup! webrtc_private: Check prefix of STUN/TURN server URL
NULL and Empty string are allowed to be set as NULL.
Change-Id: Iff65bd17636c247daf1a6378e83b2d5fb001bfb0
hj kim [Tue, 23 Aug 2022 07:18:12 +0000 (16:18 +0900)]
webrtc_source_screen: set proper video resolution after crop
[Version] 0.3.211
[Issue Type] Bug fix
Change-Id: I34c33fd280ed88922ecef1ca3fa359fca9786fc1
Sangchul Lee [Tue, 23 Aug 2022 06:12:17 +0000 (15:12 +0900)]
webrtc_test: Add test cases for payload type
spt. Set payload type
gpt. Get payload type
[Version] 0.3.210
[Issue Type] Add
Change-Id: I5312ed8437ab1e7210c12bb67fed42e8e6ec48f4
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 23 Aug 2022 03:34:28 +0000 (12:34 +0900)]
webrtc_internal: Add APIs to set/get payload type
Functions below are added
: webrtc_media_source_set_payload_type()
: webrtc_media_source_get_payload_type()
[Version] 0.3.209
[Issue Type] Internal API
Change-Id: I69c20167d1a6d07a6f12ac784c3e921e929fc0f1
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 19 Aug 2022 06:30:32 +0000 (15:30 +0900)]
webrtc_source: Specify payload type to transceiver codec only in case of offer
This patch is only for WEBRTC_MEDIA_SOURCE_TYPE_NULL.
This fixes a compatibility issue in case of
chrome(offerer) - tizen native API(answerer)
[Version] 0.3.208
[Issue Type] Compatibility
Change-Id: Ib367e5142b4082bac02acf95329c9f3fb3eafa55
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
hj kim [Thu, 18 Aug 2022 07:37:17 +0000 (16:37 +0900)]
webrtc_source_private: move pad probe position for loopback behind videoscale
Some sources support video scale via videoscale element.
so, the stream for loopback should be collected behind videoscale element.
[Version] 0.3.207
[Issue Type] Improvement
Change-Id: Ia362797bd3c3f9f989def391660bf3cefe4f7fb4
hj kim [Fri, 19 Aug 2022 01:38:55 +0000 (10:38 +0900)]
webrtc_source: fix crash when change resolution while loopback
For sources whose resolution is dynamically changed, caps of appsrc for loopback should be changed as well.
Plus, initialize app source related information when destroy loopback pipeline.
[Version] 0.2.206
[Issue Type] Bug fix
Change-Id: I3dc9bd35a8e8f6075885eebd6f50af818054c4d4
hj kim [Fri, 19 Aug 2022 01:47:51 +0000 (10:47 +0900)]
webrtc_source: Don't allow resolution change of encoded video format
This new condition is checked only when the state is not IDLE.
[Version] 0.3.205
[Issue Type] Improvement(check condition)
Change-Id: I25bd78a4f20615c36735c9c44b3880a1b762e895
hj kim [Fri, 12 Aug 2022 06:20:47 +0000 (15:20 +0900)]
add videoscale to support dynamic resolution change
To support dynamic resolution change for sources that do not support dynamic resolution change.
[Version] 0.3.204
[Issue Type] Improvement
Change-Id: I617951d757150168e81a1f7efb8e4e390f1f9153
Sangchul Lee [Thu, 18 Aug 2022 01:10:11 +0000 (10:10 +0900)]
webrtc_sink: Fix memory leak
[Version] 0.3.203
[Issue Type] Coverity defect (Resource leak)
Change-Id: I48e8d4a660ce618ac1b620f0b2e661a19c5398aa
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 12 Aug 2022 09:02:03 +0000 (18:02 +0900)]
Make webrtc_foreach_stats() synchronous function
It ensures that webrtc_foreach_stats() returns after invoking
all callbacks. It takes approximately under 30ms.
[Version] 0.3.202
[Issue Type] API
Change-Id: I5502ee3e948bad506279e34ba949bf99c5ed934c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 29 Jul 2022 14:34:37 +0000 (23:34 +0900)]
webrtc_test: Add menu to set/get encoder bitrate
[Version] 0.3.201
[Issue Type] Add
Change-Id: Ie860534ca58d2c31db6a49208e916a141023c0fc
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 15 Jul 2022 11:14:13 +0000 (20:14 +0900)]
webrtc_test: Add menu to set/get camera device id
[Version] 0.3.200
[Issue Type] Add
Change-Id: Id780ecee512987389d3fda68f9a86ee24e422630
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Sun, 7 Aug 2022 12:18:35 +0000 (21:18 +0900)]
webrtc_sink_dump: Add support for incoming stream dump
[Version] 0.3.199
[Issue Type] New feature
Change-Id: I106355ce8471d9ed21424329e31b0ee678045068
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Mon, 8 Aug 2022 05:21:10 +0000 (14:21 +0900)]
webrtc_ini: Add new item to enable to dump incoming streams
Default dump path is '/tmp'. If 'dump incoming streams' in ini file is
set to yes, then encoded streams received from a remote peer will be
dumped to files located in the dump path.
e.g)
[general]
dump path = /tmp
dump incoming streams = yes
[Version] 0.3.198
[Issue Type] New feature
Change-Id: Ifd3d8d445ad67e2e0d0ef588c266231e0d33dcdd
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Tue, 9 Aug 2022 02:22:57 +0000 (11:22 +0900)]
webrtc_private: Check prefix of STUN/TURN server URL
Doxygen is also improved.
[Version] 0.3.197
[Issue Type] Improvement
Change-Id: Ia3d2b0991cdef41709cd2d5c19d8e0c82bf09a40
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 5 Aug 2022 07:47:08 +0000 (16:47 +0900)]
webrtc_sink: Update 'config-interval' property value in case of h264parse
[Version] 0.3.196
[Issue Type] Improvement
Change-Id: I4a4d67d2b410f5cc5bc96195770773e04e276cb3
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Sangchul Lee [Fri, 5 Aug 2022 02:46:18 +0000 (11:46 +0900)]
webrtc_sink: Enable 'use-tbm' property of videosink if H/W decoder is used
It supports both WEBRTC_DISPLAY_TYPE_OVERLAY and
WEBRTC_DISPLAY_TYPE_ECORE_WL display types.
videoconvert is also excluded in this situation.
[Version] 0.3.195
[Issue Type] Improvement
Change-Id: If6e432762ee75b42a570a871342ce154400cf702
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
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>