50 Commits

Author SHA1 Message Date
21pages
8919ea65e3
fix, mac hwcodec decoding align use dst_align (#8215)
Signed-off-by: 21pages <sunboeasy@gmail.com>
2024-05-30 23:40:25 +08:00
fufesou
72ec86b58d
refact: texture render as an option (#8168)
* refact: texture render as an option

Signed-off-by: fufesou <linlong1266@gmail.com>

* refact: texture render, translation

Signed-off-by: fufesou <linlong1266@gmail.com>

* refact: texture render as option

Signed-off-by: fufesou <linlong1266@gmail.com>

* Update ui_interface.rs

---------

Signed-off-by: fufesou <linlong1266@gmail.com>
Co-authored-by: RustDesk <71636191+rustdesk@users.noreply.github.com>
2024-05-28 16:42:30 +08:00
21pages
036d10cfbe
android: for software encoding and screen size > 1200, display size reduced to half (#8167)
Signed-off-by: 21pages <sunboeasy@gmail.com>
2024-05-28 12:43:13 +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
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
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
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 80afa98d667db773d9451aa1ecc9c1d53d2a5828.
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
f9ee0189f0 format log, add space after colon
Signed-off-by: 21pages <pages21@163.com>
2023-11-18 09:52:46 +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
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
e482dc3e2b aom encode/decode
Signed-off-by: 21pages <pages21@163.com>
2023-05-21 16:26:18 +08:00
Kingtous
34314e50f7 feat: callbacks and flutter msg bridge 2023-05-04 13:18:19 +08:00
fufesou
fc50a3e49d set fmt and stride to private in ImageRgb
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-04-28 12:35:46 +08:00
fufesou
6b1645f44d set width,height,stride together with the rgba data for rendering
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-04-28 11:44:52 +08:00
Kingtous
83e63d57e1 fix: ios build 2023-04-18 18:28:12 +08:00
21pages
c842650c11 vp8
Signed-off-by: 21pages <pages21@163.com>
2023-04-03 12:22:36 +08:00
RustDesk
83b7518897
Revert "vp8" 2023-04-01 10:13:39 +08:00
21pages
78748271ac vp8
Signed-off-by: 21pages <pages21@163.com>
2023-03-31 22:32:34 +08:00
fufesou
0b417ac479 start --server on gmd wayland, just for communications, no connections will be established
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-03-31 16:42:35 +08:00
21pages
5634b428ca fix build
Signed-off-by: 21pages <pages21@163.com>
2023-03-03 22:43:02 +08:00
RustDesk
29abda56df
Revert "Fix/macos texture stride align" 2023-03-03 13:18:34 +08:00
fufesou
c419819c0f rename all stride_align to stride
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-03-03 10:58:48 +08:00
fufesou
77c4a14845 flutter texture render, mid commit
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-02-23 17:06:51 +08:00
fufesou
d1090fc62c ensure init cursor embedded
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-01-29 12:41:16 +08:00
fufesou
c0adc14215 misspelling
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-01-29 12:41:16 +08:00
fufesou
b84f3ba1ee init wayland to update var 'cursor embeded'
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-01-29 12:41:16 +08:00
fufesou
b723f8472d fix linux to mac, keyboard input
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-01-05 15:00:52 +08:00
fufesou
b114ebf350 fix some misspellings
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-12-31 21:41:16 +08:00
rustdesk
0d0957cea5 remove u128 compare 2022-12-26 17:44:29 +08:00
fufesou
4d044ca57a wayland cursor embeded
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-11-29 16:36:35 +08:00
fufesou
2da5401fd4 add global init and update wayland error map
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-10-17 21:55:26 +08:00
21pages
9489877c78 video record
Signed-off-by: 21pages <pages21@163.com>
2022-09-22 09:57:52 +08:00
csf
f310251cfc feat mediacodec: Android H264/H265 decoder support 2022-09-15 20:40:29 +08:00
fufesou
f3d10dd420 fix build without wayland feature
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-07-27 06:34:27 -07:00
fufesou
d19a8fdc43 fix_capturer_trait_name_shadowing: build win
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-07-21 20:38:15 +08:00
fufesou
aae6e2b16b linux_wayland_support: init merge, windows build
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-07-20 09:16:13 -07:00
21pages
847c4acb07 Merge branch 'hwcodec' into master 2022-06-14 13:08:39 +08:00
21pages
399ddc8bef scrap: rename coder.rs to codec.rs
Signed-off-by: 21pages <pages21@163.com>
2022-06-02 11:32:55 +08:00
21pages
6677fc9b30 scrap: rename codec.rs to vpxcodec.rs
Signed-off-by: 21pages <pages21@163.com>
2022-06-02 11:32:55 +08:00
21pages
70968638bf scrap: add hwcodec
Signed-off-by: 21pages <pages21@163.com>
2022-06-02 11:32:50 +08:00
csf
16fd96aa96 fix android bit rate 2022-06-01 17:52:21 +08:00
rustdesk
c1bad84a86 100% open source 2022-05-12 17:35:25 +08:00
rustdesk
4d5d0a4c62 improve video, ignore same image 2022-04-24 02:50:28 +08:00
rustdesk
609996005f STRIDE_ALIGN 16 -> 64 2022-04-12 23:31:42 +08:00
rustdesk
c15c44788c try out wayland 2021-07-23 17:52:38 +08:00
rustdesk
d1013487e2 source code 2021-03-29 15:59:14 +08:00