Commit graph

69 commits

Author SHA1 Message Date
LAGonauta c29032bcc6 :Merge remote-tracking branch 'upstream/master' into master-windows-changes 2022-06-05 11:12:23 -03:00
Matthew Egeler f25bfb0096
Support devices with multiple framerate options in get_max_fps (#1224) 2022-05-17 14:12:32 +02:00
foucault 186361fd8a Fix calculation of best camera framerate
When the algorithm iterates over all the available v4l2 capabilities it tries to determine the best framerate for each one of YUYV (video/x-raw) modes presented by the hardware (best_fraction, line 357 in device.vala). Regardless of what's determined to be the "best" YUYV mode from within the conditional right after (line 385) the best fractional framerate will always point to the last iterated framerate, which might be an extremely low one, like 7 or 5 FPS. When the framerate is then stored in the Gst.Structure (line 394) the fractional framerate will always be that last value which might be different than the correct one as calculated by best_fps (line 386). This workaround solves this issue by only updating best_fraction when the conditional in line 385 is satisfied.

from issue #1195
2022-05-17 14:08:22 +02:00
LAGonauta 90bd9df891 Merge remote-tracking branch 'upstream/master' into master-windows-changes 2022-02-25 07:02:20 -03:00
LAGonauta d10badd690 Ignore wasapi devices as they do not work well yet 2022-02-25 07:02:06 -03:00
mjk 3719fcbefb RTP: clarify codec support warning 2022-02-13 21:32:28 +01:00
Marvin W 369d0c79d7
Calls: Fix device selector for multi-party calls, allow picking device before call started 2022-02-12 14:36:26 +01:00
Marvin W 6532c2b160
RTP: Only display SSRC mismatch warning for GLib versions supporting warning_once 2022-02-11 20:33:06 +01:00
Marvin W e768c40e11
RTP: Make codec and hardware support compile-time configurable 2022-02-11 19:55:19 +01:00
fiaxh dbc6d87cb9 Various call fixes
- Don't create incoming CIM calls twice
- Fix is_color check for video devices w/ multiple formats
- Tolerate mismatching content creator on jingle responses
- Change MUJI namespace to urn:xmpp:jingle:muji:0
2022-02-10 15:43:34 +01:00
LAGonauta 11828cc2cf no need to ignore wasapi 2022-02-09 21:09:44 -03:00
Marvin W 28248607f0
DTLS: Handle DTLS fingerprint in transport-info before session-accept 2022-02-09 23:58:54 +01:00
LAGonauta dd71e943c3 Merge remote-tracking branch 'upstream/master' into master-windows-changes 2022-02-08 20:32:22 -03:00
LAGonauta b8b74817f7 Merge remote-tracking branch 'upstream/master' into master-windows-changes
# Conflicts:
#	main/src/ui/conversation_content_view/file_widget.vala
#	plugins/CMakeLists.txt
#	plugins/rtp/src/device.vala
#	plugins/rtp/src/plugin.vala
2022-02-08 18:33:09 -03:00
Marvin W 43ea088f64
Calls: Device picker 2022-02-08 21:58:18 +01:00
fiaxh 4ef50db3e5 Various call UI/UX improvements 2022-02-07 01:21:11 +01:00
Marvin W 5ed8d28a27
RTP: Use two channels for Opus
Fixes: #1189
2022-02-06 00:19:27 +01:00
Marvin W bfd089516a
RTP: Add support for G.722 2022-02-06 00:19:26 +01:00
Marvin W 460c520db7
RTP: Restrict number of recaps to save resources 2022-02-06 00:19:26 +01:00
Marvin W 0c524cdc4a
RTP: Workaround drawing issues on resolution change 2022-01-27 22:09:53 +01:00
fiaxh b123800f26 Small cleanup 2022-01-23 19:50:01 +01:00
Marvin W f270fc7686
RTP: VAAPI seems to not support VBR and low-power mode at the same time 2022-01-21 15:34:06 +01:00
Marvin W 37cfbd8c76
RTP: Use VP8 wait-for-keyframe only for GStreamer 1.18+ 2022-01-21 15:23:38 +01:00
Marvin W 1c47652814
Fix build with older Vala compilers
- Older versions seem to assume a wrong type for Nice messages
- Older versions have broken bindings for Gst.Value.set_fraction
2021-12-23 07:06:07 +01:00
Marvin W 8e99ed1e9c RTP: Disable VP9 2021-12-19 22:38:27 +01:00
Marvin W cd6d501c23 RTP: Improve screen resolution update logic 2021-12-19 22:38:00 +01:00
Marvin W b07c4187ef RTP: Less log spam 2021-12-18 21:47:50 +01:00
Marvin W 9aeff4bf9e SRTP: Do not continue processing data after encrypt/decrypt failed
RTP: Copy less
2021-12-18 21:45:36 +01:00
Marvin W 4f80a9f5cc RTP: Correctly handle timestamp after re-enabling a stream 2021-12-18 21:43:12 +01:00
fiaxh 2b3d150949 Improve call details dialog + small multi-party call fixes 2021-11-15 13:29:13 +01:00
Marvin W ec65415186
Optimize encoder for low cpu usage 2021-11-15 23:49:48 +01:00
Marvin W 0b828a0ae5
Add maximum bitrate and adjust video resolution based on bitrate 2021-11-15 22:49:44 +01:00
Marvin W 9958cfbe7b
Log probe for decode QOS 2021-11-11 22:49:48 +01:00
Marvin W 9e5a3895ae
Limit REMB target bitrate to 2x maximum actually seen value 2021-11-11 22:35:45 +01:00
fiaxh e205743f0c Display target bitrates in connection details UI 2021-11-11 21:54:55 +01:00
Marvin W 1b157a20ab
Fix REMB calculation 2021-11-10 23:13:33 +01:00
Marvin W cfe43de5d5
Make elements sync to get proper qos data 2021-11-10 23:13:33 +01:00
Marvin W f398135bc8 RTP: Make opus mono-channel 2021-11-10 11:05:34 +01:00
Marvin W ea19a9c5cb RTP: Only start gstreamer pipeline once needed 2021-11-10 11:05:34 +01:00
Marvin W b593aa05ef RTP: Encode with device 2021-11-10 11:05:34 +01:00
Marvin W 083f73b0ca Split payloader off encoder chain 2021-11-10 11:05:34 +01:00
Marvin W 72569ea52f Improve codec support 2021-11-10 11:05:34 +01:00
Marvin W aae13b9ea6 Crop video to match widget ratio 2021-11-10 11:05:34 +01:00
fiaxh 237081e573 Fix compiler warnings ('Switch does not handle .. of enum ..') 2021-10-12 19:43:57 +02:00
fiaxh e8c162eae3 Fix misc compiler warnings 2021-10-12 19:43:57 +02:00
LAGonauta d7118c1b93 Allow devices with properties and use has_classes 2021-06-18 07:46:39 -03:00
LAGonauta ee11a2dbcf Do not allow selection of WASAPI devices
Dino would have to resample it own audio, do more book keeping and
somehow find out manually which is the default device.
2021-06-09 07:20:45 -03:00
LAGonauta 064541dd2b Prefer primary DirectSound device on Windows
It automatically selects the default device for use,
there is no book keeping necessary and things just work

The primary DirectSound device has a (NULL) guid, making
it wasy to be found.
2021-06-09 07:20:33 -03:00
Marvin W 686035ca1e
RTP: Handle missing rtp pay/depay elements 2021-05-15 19:55:44 +02:00
Marvin W 3bfd407843
Calls: Use vp8depay.wait-for-keyframe only with GStreamer 1.16+ 2021-05-11 22:11:44 +02:00