21pages
a31a68ba17
If there is hardware ram encoder as fallback, not require all adapters ( #7987 )
...
support the codec format
Signed-off-by: 21pages <pages21@163.com>
2024-05-09 09:02:25 +08:00
21pages
5ba1c2587d
opt supported encoding update, consider multi connections ( #7978 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-05-08 20:31:39 +08:00
21pages
09f3850250
installed windows client save incoming recording to a specific directory ( #7974 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-05-08 17:04:53 +08:00
fufesou
5537c525ca
refact: comments, wayland, restore token ( #7947 )
...
We cannot store restore_token if the server is not running.
Because `org.freedesktop.portal.RemoteDesktop` does not support persist
mode for now.
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2024-05-08 09:49:16 +08:00
21pages
3746fd88b5
Show current codec in menu when auto codec is chosen ( #7942 )
...
* change negotiated codec name to negotiated codec format
Signed-off-by: 21pages <pages21@163.com>
* fallback to vp9 directly if failed to create encoder
Current fallback method is clear hwcodec config
Signed-off-by: 21pages <pages21@163.com>
* show current codec in menu when auto codec is chosen
Signed-off-by: 21pages <pages21@163.com>
---------
Signed-off-by: 21pages <pages21@163.com>
2024-05-07 20:34:23 +08:00
21pages
51813b7d7e
set vp9 as auto codec ( #7928 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-05-07 15:20:55 +08:00
21pages
4e30418f79
disable av1 for all 32 bit platforms ( #7921 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-05-06 23:09:09 +08:00
21pages
0af370d736
x86 sciter set not support av1 due to slow ( #7920 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-05-06 22:03:49 +08:00
21pages
991694aca5
update hwcodec, qsv support changing bitrate ( #7911 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-05-06 10:59:25 +08:00
rustdesk
08b7e036b4
test vcpkg new in android
2024-05-01 12:58:27 +08:00
21pages
34c7c25908
update hwcodec, add windows ffmpeg vram encoding ( #7876 )
...
* windows add ffmpeg vram encoding
* windows add missing nvenc and qsv ram encoding, linux add vaapi, current codec table: https://github.com/21pages/hwcodec?tab=readme-ov-file#codec
Signed-off-by: 21pages <pages21@163.com>
2024-05-01 00:07:09 +08:00
21pages
2626dcbc5f
fix black screen issue when controlling the second screen on versions that lack multiple display support while using vram decoding ( #7836 )
...
* avoid create unnecessary video decoder
Signed-off-by: 21pages <pages21@163.com>
* controlled side uses the most frequent selected codec
Signed-off-by: 21pages <pages21@163.com>
* fix black screen when control old version's second screen
For versions that do not support multiple displays, the display parameter is always 0, need set type of current display
Signed-off-by: 21pages <pages21@163.com>
---------
Signed-off-by: 21pages <pages21@163.com>
2024-04-26 19:42:47 +08:00
21pages
0e7e27f99d
update hwcodec, fix gpu/cpu stuck caused by nv codec ( #7826 )
...
* Disable all nv codec encoding on windows except nv sdk encoding,
because it doesn't use CUContext
* Keep nv codec on linux, because I didn't reproduce the stuck on it
* Add ffmpeg d3d11 vram decoding
Signed-off-by: 21pages <pages21@163.com>
2024-04-25 20:16:48 +08:00
21pages
4252b5e273
enable ffmpeg native h26x software decoders for all platforms ( #7750 )
...
* enable ffmpeg native h26x software decoders for all platforms
* h26x software decoders depend on hwcodec feature, so all platforms
enable it, software h26x decoders are always available like vpx, no available check and no option
* ffmpeg:
- build: mac arm64 build ffmpeg with my m1, others build with ci
- version: win/linux use ffmpeg release/5.1, becaues higher version require higher nvidia driver, other platforms use release/7.0
* test:
- ios not test.
- android: sometimes the screen will appear blurry, but it will recover after a while.
- arm64 linux: test a example of hwcodec repo
Signed-off-by: 21pages <pages21@163.com>
* check hwcodec only when enabled and immediately when clicked enabled
Signed-off-by: 21pages <pages21@163.com>
---------
Signed-off-by: 21pages <pages21@163.com>
2024-04-18 13:12:45 +08:00
rustdesk
c656c3c087
typo
2024-04-16 18:46:46 +08:00
rustdesk
44bce59777
more java_ffi_FFI
2024-04-16 18:22:36 +08:00
21pages
5c4d95ac0f
not use av1 as auto codec on x86 sciter ( #7714 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-04-13 21:10:36 +08:00
21pages
98df2b111e
hwcodec uses one repository ( #7701 )
...
* update hwcodec, gpucodec repo is merged to hwcodec
Signed-off-by: 21pages <pages21@163.com>
* rename gpucodec.rs to vram.rs
Signed-off-by: 21pages <pages21@163.com>
* rename all gpucodec to vram, because vram is a feature of hwcodec
Signed-off-by: 21pages <pages21@163.com>
* use one check process and one config file
* set check encode image size to 720p
Signed-off-by: 21pages <pages21@163.com>
---------
Signed-off-by: 21pages <pages21@163.com>
2024-04-12 17:26:24 +08:00
21pages
50d080d098
enable retina scale factor ( #7269 )
...
* enable retina scale factor
* enabled only when there are only one video service running
* scale mouse event
* scale cursor position
* scale remote menu display button
* adjust resolution
Signed-off-by: 21pages <pages21@163.com>
* Update server.rs
---------
Signed-off-by: 21pages <pages21@163.com>
Co-authored-by: RustDesk <71636191+rustdesk@users.noreply.github.com>
2024-02-27 22:28:23 +08:00
wangweijie
cce1ce0ee0
Add loongarch64 support ( #7244 )
...
Signed-off-by: wangweijie <wangweijie@loongson.cn>
2024-02-23 20:08:35 +08:00
21pages
5581248a1e
fix startup crash on windows without adapter ( #7093 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-02-09 16:53:15 +08:00
wesley800
c97cc15c0e
Warn on MIT-SHM not working on Linux X11 ( #6856 )
...
* Clarify video capture method
* fix improper level of pointer usage of xcb_generic_error_t
* add ffi of xcb_shm_query_version
* throw a warn about MIT-SHM not working
* add missing #[cfg]
* checks SHM validity on the fly, rather than cache on creation
---------
Co-authored-by: root <root@localhost>
Co-authored-by: rustdesk-fork <rustdesk@fork.com>
2024-01-31 17:49:09 +08:00
rustdesk
dd4b5349cb
revert https://github.com/rustdesk/rustdesk/pull/6980
2024-01-26 19:22:26 +08:00
rustdesk
3899e4e12e
add round to avoid precision problem
2024-01-26 12:59:47 +08:00
rustdesk
f016281e30
fix ci
2024-01-26 12:54:36 +08:00
Sahil Yeole
1d755c705b
Fix: Mac retina display video blur ( #6980 )
...
* fix mac retina display blur
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* Update display.rs
---------
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
Co-authored-by: RustDesk <71636191+rustdesk@users.noreply.github.com>
2024-01-26 12:50:13 +08:00
21pages
71d7398ae7
video handler holds only one decoder of the current codec format ( #6939 )
...
1. For example: when receiving h264 video frames, only 1 decoder is created, vram > ram
2. For creation and decoding failed:
* Remove real_supported_decodings, this will update real existing decoders, replace it with the "mark_unsupported" vector. After creating the decoder failure, marks the codec as unsupported and updates supported decoding to the controlled side
* Add `fail_counter` in the decoder. When decoding 10 consecutive frames failed, adding codec type to 'mark_unsupported' vector
* The controlled end always ignores the unavailability of VP9
Signed-off-by: 21pages <pages21@163.com>
2024-01-22 20:01:17 +08:00
RustDesk
804f035a87
Revert "disable ffmpeg ram codec temporarily" ( #6928 )
2024-01-20 17:20:08 +08:00
21pages
267342e7e6
disable ffmpeg ram codec temporarily ( #6927 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-01-20 17:19:30 +08:00
21pages
89150317e1
add zero copy mode hareware codec for windows ( #6778 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-01-02 16:58:10 +08:00
Sahil Yeole
20b4ce3213
Wayland: Skip remote desktop portal calls when uinput is available ( #6758 )
...
* skip rdp when uinput is available
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix is_server_running
* remove clones
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
---------
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-12-28 10:40:58 +08:00
RustDesk
4b581c385c
Revert "fix xdg portal verison check for persist_mode ( #6742 )" ( #6755 )
...
This reverts commit 57acadd52a
.
2023-12-27 11:28:17 +08:00
linuxrider
57acadd52a
fix xdg portal verison check for persist_mode ( #6742 )
2023-12-24 16:33:36 +08:00
Sahil Yeole
445fe6e714
Feat: Wayland flatpak input support | Remote desktop portal ( #6675 )
...
* autogen portal code
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use remote desktop portal
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove clipboard portal in favour of #6586
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove clipboard portal
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use select_devices for input capture
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove embedded cursor code as not being used | return session path for input capture
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* setup rdp input
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove simulate example
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* setup rdp input raw key events + mouse movements
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix rdp raw key input
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* refact rdp raw key inpuy & fix right meta key
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* refact and support rdp layout mode key input
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* support rdp mouse clicks
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* support rdp mouse scroll
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* support rdp key sequence input
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use rdp input only when uinput is not available
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* combine rdp input and get_capturables into a single rdp request
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* rdp fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* rdp fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix rdp caps lock
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* format pipewire.rs
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* format rdp_input.rs
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* revert #6628 as rdp request state is now managed (better solution)
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix rdp crash on arch kde
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* rdp_input.rs improvements
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* refact request_remote_desktop
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* improve unwraps
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove unwraps
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use session references instead of clones
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
---------
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-12-19 10:44:58 +08:00
RustDesk
ebb14af488
Revert "use fullrange by default for yuv420p if supported ( #6655 )" ( #6656 )
...
This reverts commit 80afa98d66
.
2023-12-11 22:46:32 +08:00
21pages
80afa98d66
use fullrange by default for yuv420p if supported ( #6655 )
...
1. Explicitly specify the color space as bt601
2. Use fullrange by default for yuv420p if supported
3. Use the pix_fmt space range format to identify codec capabilities, make i444 proto field deprecated, and cause the non-release version of 444 true color to fail.
Signed-off-by: 21pages <pages21@163.com>
2023-12-11 22:31:01 +08:00
21pages
2de1c62daf
wake lock for all connection type
...
Signed-off-by: 21pages <pages21@163.com>
2023-11-25 17:43:07 +08:00
21pages
bd81e4d0fb
android video service wakelock
...
Signed-off-by: 21pages <pages21@163.com>
2023-11-24 12:02:45 +08:00
Sahil Yeole
948db1451f
fix stream resolution mismatch/distortion on scaling
...
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-11-21 16:59:45 +05:30
fufesou
3e8c5d3b79
trivial changes
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:42:34 +08:00
fufesou
2aaca0c54a
Remove get_error() in windows.rs
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:38:53 +08:00
fufesou
c6d587f0c7
Refact, use std::io::Error::from_raw_os_error() to format message
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:22:14 +08:00
fufesou
c85682de8d
Refact, replace GetLastError() by std::io::Error::last_os_error()
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:15:15 +08:00
21pages
9847fc5c77
fix exceeding max allowed thread count, thread count <= available memory / 2
...
Signed-off-by: 21pages <pages21@163.com>
2023-11-19 11:36:23 +08:00
21pages
f9ee0189f0
format log, add space after colon
...
Signed-off-by: 21pages <pages21@163.com>
2023-11-18 09:52:46 +08:00
fufesou
182ee8f233
fix, order displays from dxgi
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-14 22:04:17 +08:00
21pages
eb58a39f57
replace System::new_all with System::new
...
Signed-off-by: 21pages <pages21@163.com>
2023-11-14 09:40:15 +08:00
RustDesk
627d21a00a
Revert "Fix, windows display orders"
2023-11-13 17:31:55 +08:00
fufesou
8f8c9ddc25
Fix, windows display orders
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-12 00:08:16 +08:00
Dennis Ploeger
b9bd79895f
fix: Fix sysinfo >=0.29.1 crashing the main view on macOS
2023-11-08 08:59:27 +01:00
RustDesk
a0337d399c
Merge pull request #6282 from basilgello/vcpkg-deps
...
Refactor vcpkg dependencies and get rid of thirdparty repos
2023-11-07 17:39:37 +08:00
Vasyl Gello
9f4a844c9b
Fix buildscripts
...
* Fix FDroid build on x86
* Fix CI build on arm
* Rename `install_oboe` to `install_android_deps`
... because we add ndk_compat and the function installs
android-specific dependencies.
Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
2023-11-07 06:27:43 +02:00
mcfans
b522de3b56
Merge remote-tracking branch 'upstream/master'
...
# Conflicts:
# Cargo.lock
# src/server/connection.rs
2023-11-07 12:13:15 +08:00
21pages
534bfad50f
opt codec
...
1. use src width/height to convert yuv
2. align dst yuv to avoid illegal memory access
3. init yuvfmt when new codec
4. move remote reset calls from empty conns judge to emtpy remote conns
judge
Signed-off-by: 21pages <pages21@163.com>
2023-11-03 11:52:41 +08:00
21pages
f05f86dc80
444
...
Signed-off-by: 21pages <pages21@163.com>
2023-10-30 18:46:56 +08:00
mcfans
7b24835c9e
Merge remote-tracking branch 'upstream/master'
...
# Conflicts:
# src/server/connection.rs
2023-10-29 23:32:43 +08:00
21pages
9ce58115ab
set timeout of hwcodec check to 30s
...
Signed-off-by: 21pages <pages21@163.com>
2023-10-23 16:12:49 +08:00
21pages
7a5bc864fa
fix client side record
...
Signed-off-by: 21pages <pages21@163.com>
2023-10-19 09:50:55 +08:00
mcfans
22165ec1a5
feat: legacy mode android keyboard support
2023-10-19 00:16:22 +08:00
21pages
510cffb305
av1 record, set zero codec private
...
Signed-off-by: 21pages <pages21@163.com>
2023-10-18 19:28:12 +08:00
21pages
c61fa71a70
Revert "hide recording button if using av1"
...
This reverts commit c2023e8ca3
.
2023-10-18 13:48:12 +08:00
mcfans
bbc241748b
feat: support android keyboard input
2023-10-17 22:12:52 +08:00
dignow
013d307bcd
feat, multi_flutter_ui_sessions
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-10-14 12:26:24 +08:00
21pages
bdb1fc2ed7
Give higher priority to AV1 over VP9 in the auto codec
...
Signed-off-by: 21pages <pages21@163.com>
2023-09-27 18:42:57 +08:00
dignow
e89ae475f6
fix build
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-10 14:54:29 +08:00
dignow
9476d7fdbb
try fix build
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-10 14:54:29 +08:00
dignow
da16a799fa
fix build
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-10 14:54:28 +08:00
dignow
d6f1abad95
tmp commit
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-10 14:54:28 +08:00
21pages
9905695699
enable keyframe interval when recording
...
Signed-off-by: 21pages <pages21@163.com>
2023-08-07 21:32:36 +08:00
21pages
2c619cbe41
quite if config file not found, remove HW_CODEC_CONFIG, option env LIBGL_ALWAYS_SOFTWARE=1
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-30 12:42:23 +08:00
21pages
61a48b5367
fix IDTextEditingController extra character
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-29 13:47:59 +08:00
21pages
0a29fa87f0
remove System::new_all in hwcodec check
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-29 11:41:44 +08:00
21pages
029e6a015e
minisize vpx/aom q_min for bitrate 200%
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-27 18:29:46 +08:00
21pages
e70f3f2125
fix qos and add auto_adjust_fps
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-25 15:49:50 +08:00
21pages
02456280d4
fix win cpu monitor run once
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-24 14:54:15 +08:00
21pages
aa740f4263
remove many unwrap and enum_value_or_default
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-23 20:00:58 +08:00
21pages
31b3c5d721
codec thread count depending on cpu condition
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-23 20:00:52 +08:00
21pages
2133f91089
codec set quality seperately and refactor network delay
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-23 19:54:42 +08:00
21pages
633c80d5e4
Revert "vpx use webrtc parameter"
...
This reverts commit d23fd902d7
.
2023-07-23 19:54:42 +08:00
21pages
22ca7177a6
Revert "fix ci"
...
This reverts commit a0e09d3e33
.
2023-07-23 19:54:42 +08:00
RustDesk
a24a7e8d0f
Merge pull request #5017 from 21pages/fix
...
clear hwcodec config rather than remove
2023-07-16 11:53:32 +08:00
21pages
ec34470284
clear hwcodec config rather than remove
...
Signed-off-by: 21pages <pages21@163.com>
2023-07-16 09:59:46 +08:00
fufesou
fa0b1436c2
try fix CI
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-16 09:35:11 +08:00
21pages
c2023e8ca3
hide recording button if using av1
...
Signed-off-by: 21pages <pages21@163.com>
2023-06-29 21:30:56 +08:00
21pages
5b1d2abb71
hwcodec stable branch
...
Signed-off-by: 21pages <pages21@163.com>
2023-06-29 13:37:21 +08:00
dignow
d15deabba5
better conditional compilation
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-06-24 21:09:45 +08:00
21pages
a0e09d3e33
fix ci
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-23 10:41:56 +08:00
21pages
d23fd902d7
vpx use webrtc parameter
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-23 09:42:36 +08:00
21pages
1ae2ebaa8c
allow set config err for android
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-21 17:28:43 +08:00
21pages
a11dee30ae
merge vpx/aom code
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-21 16:29:52 +08:00
21pages
99d3c47094
remove android unused VP8/VP9 Frame
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-21 16:29:50 +08:00
21pages
e482dc3e2b
aom encode/decode
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-21 16:26:18 +08:00
21pages
a3f3bb4751
aom vcpkg binding
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-21 16:26:16 +08:00
Lauren N. Liberda
100ea34baa
allow building scrap with pkg-config libraries
...
Signed-off-by: Lauren N. Liberda <lauren@selfisekai.rocks>
2023-05-20 07:29:59 +02:00
RustDesk
bc5d8ad040
Merge pull request #4421 from 21pages/hwcodec-nv12
...
hwcodec use nv12
2023-05-19 14:38:40 +08:00
21pages
9cce0798b6
set hw_pixfmt nv12 and wait more time for check porcess
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-19 12:03:16 +08:00
21pages
dc3104dac4
fix andriod jni update
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-13 12:49:35 +08:00
21pages
5738f3a949
fix android build
...
Signed-off-by: 21pages <pages21@163.com>
2023-05-12 14:01:56 +08:00
rustdesk
302f1c48d3
update crates, test on mac only
2023-05-11 12:04:38 +08:00
Kingtous
34314e50f7
feat: callbacks and flutter msg bridge
2023-05-04 13:18:19 +08:00