Commit graph

379 commits

Author SHA1 Message Date
Marvin W 38584475a5
HTTP: Make LimitInputStream pollable for better async compatibility
Fixes #1307
2023-03-22 09:56:26 -06:00
Marvin W 322cafdc46 Automatically select appropriate libsoup version 2022-11-03 13:55:29 -06:00
Marvin W bf0fecf04f DTLS: Use ECDSA key 2022-11-02 10:38:40 -06:00
Marvin W 6c258c2f28 CMake: Fix version checks 2022-11-02 10:13:37 -06:00
Matthew Egeler aa90175852 Support devices with multiple framerate options in get_max_fps (#1224) 2022-11-02 10:07:39 -06:00
foucault d9c1eca888 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-11-02 10:07:31 -06:00
Marvin W 8b4b2b584f Prepare http-files plugin for libsoup-3 support
Note: ice plugin still depends on libsoup-2.4 and one can't have both
in the same process, so this remains disabled by default
2022-11-02 10:07:23 -06:00
Marvin W 565df4c237 Fix build of tests 2022-11-02 10:07:11 -06:00
Marvin W 8b508bb6de Allow cancellation of file transfers 2022-11-02 10:07:05 -06:00
Translations f5d1435182 Update translations 2022-02-12 22:08:07 +01:00
Marvin W b586aebbac
Calls: Fix OMEMO in group calls 2022-02-12 17:18:03 +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
Marvin W 28248607f0
DTLS: Handle DTLS fingerprint in transport-info before session-accept 2022-02-09 23:58:54 +01:00
Translations fb10aefefa Update translations 2022-02-08 22:17:26 +01:00
Marvin W 43ea088f64
Calls: Device picker 2022-02-08 21:58:18 +01:00
Translations 35526ab5a5 Update translations 2022-02-08 17:52:30 +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 51dc414631
Use uppercase hex for DTLS fingerprints 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
Translations f94d95fa44 Update translations 2022-02-02 13:08:05 +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
fiaxh f2ef2bcfe7 Only process PEP messages from bare JIDs 2022-01-10 17:11:24 +01:00
Marvin W 82a492b33f
Remove GStreamer dependencies from main
Fixes #1060
2022-01-09 17:04:34 +01:00
Marvin W 9490ffed6b
Fixes for older valac versions 2021-12-25 18:25:29 +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
fiaxh d02c5bc55d Merge branch groupcalls 2021-12-23 00:46:58 +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 b1c1751cc4 DTLS: Use own thread for connection establishment 2021-12-19 22:36:26 +01:00
Translations 4e9957deaf Update translations 2021-12-18 23:40:47 +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
Marvin W 09cd060889 ICE: Use non-blocking send 2021-12-18 21:39:19 +01:00
Marvin W 52698a23d3 ICE: Run receiver in own thread 2021-12-18 22:35:52 +01:00
fiaxh fa1ba2f83d Remove ContentFilters
fixes #1129 #573
2021-12-09 15:46:16 +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