pngocthach
8ced132538
Add support for VP8 and VP9 video encoders
...
Fixes #6763 <https://github.com/Genymobile/scrcpy/issues/6763 >
PR #6769 <https://github.com/Genymobile/scrcpy/pull/6769 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-05-27 23:06:26 +02:00
Romain Vimont
4d79fb5b26
Improve protocol documentation schema
...
For consistency, name the "client resize" flag 'R' and add the "frame
header" arrow to make the schemas in `app/src/demuxer.c` and
`doc/develop.md` identical.
Refs #6772 comment <https://github.com/Genymobile/scrcpy/pull/6772#discussion_r3305729151 >
Refs #6772 comment <https://github.com/Genymobile/scrcpy/pull/6772#discussion_r3305729425 >
2026-05-27 21:30:51 +02:00
Romain Vimont
2322868e9e
Update links to 4.0
2026-05-12 21:35:47 +02:00
Romain Vimont
2c3d5cbfd9
Remove experimental note for static builds
...
The static builds have been used for a long time, so the "experimental"
wording is no longer accurate.
2026-05-12 19:54:59 +02:00
Romain Vimont
a34e121a2b
Update doc/develop.md links to latest version
...
Refs #6772 comment <https://github.com/Genymobile/scrcpy/pull/6772#issuecomment-4413041141 >
Refs #6776 comment <https://github.com/Genymobile/scrcpy/pull/6776#discussion_r3105677909 >
2026-05-12 00:12:26 +02:00
Jah-yee
19057b48af
Fix multiple issues in documentation
...
Fixes #6817 <https://github.com/Genymobile/scrcpy/issues/6817 >
PR #6819 <https://github.com/Genymobile/scrcpy/pull/6819 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-05-11 23:38:27 +02:00
Romain Vimont
d678988a5a
Merge branch 'master' into dev
2026-05-11 23:27:27 +02:00
Romain Vimont
5830dedbe4
Restore retry capture at lower resolution
...
The mechanism to retry capture at a lower resolution on error was
removed in favor of using video encoder capabilities instead.
However, an encoder configuration that is compatible with the declared
capabilities may still fail, either because the declared capabilities
are incorrect or because some resources are unavailable.
Restore the downsize-on-error behavior for such cases.
This reverts commit 4f97e2e30b .
Refs #2947 <https://github.com/Genymobile/scrcpy/pull/2947 >
Refs #6766 <https://github.com/Genymobile/scrcpy/pull/6766 >
PR #6822 <https://github.com/Genymobile/scrcpy/pull/6822 >
2026-05-11 23:06:57 +02:00
Romain Vimont
8691113682
Complete --max-size documentation
...
The `--max-size` option behaves slightly differently depending on the
mode.
Refs #6772 comment <https://github.com/Genymobile/scrcpy/pull/6772#issuecomment-4364562978 >
PR #6772 <https://github.com/Genymobile/scrcpy/pull/6772 >
2026-05-09 17:28:52 +02:00
Romain Vimont
9b4ede0919
Document render fit
...
PR #6772 <https://github.com/Genymobile/scrcpy/pull/6772 >
2026-05-09 17:28:52 +02:00
Romain Vimont
f0b11a3d9e
Document flex display
...
PR #6772 <https://github.com/Genymobile/scrcpy/pull/6772 >
2026-05-09 17:28:52 +02:00
Romain Vimont
9e0d2a1bc9
Signal client resize in session packets
...
So far, scrcpy always resized the window whenever a frame with a new
size was received. However, with the upcoming "flex display" feature,
the size of the virtual display can change either on its own (e.g.,
due to app rotation) or as a result of a client window resize.
Track the cause of each resize and signal it in the session metadata.
Resize the window only if the change was not triggered by a client
request to prevent resize loops and stuttering.
PR #6772 <https://github.com/Genymobile/scrcpy/pull/6772 >
2026-05-09 17:28:52 +02:00
Romain Vimont
7577871480
Set default background color to dark gray
...
Refs #6772 comment <https://github.com/Genymobile/scrcpy/pull/6772#issuecomment-4374943892 >
PR #6807 <https://github.com/Genymobile/scrcpy/pull/6807 >
2026-05-05 23:39:46 +02:00
Romain Vimont
b4d5dd753b
Add option to change the background color
...
Introduce a `--background-color` option that accepts hexadecimal color
codes (3-digit or 6-digit formats):
scrcpy --background-color=#234567
scrcpy --background-color=234567 # leading '#' is optional
scrcpy --background-color=#567 # equivalent to #556677
Fixes #5855 <https://github.com/Genymobile/scrcpy/issues/5855 >
Refs #6772 comment <https://github.com/Genymobile/scrcpy/pull/6772#issuecomment-4374943892 >
PR #6807 <https://github.com/Genymobile/scrcpy/pull/6807 >
2026-05-05 23:39:22 +02:00
zhanlong9890
693ee7aa36
Add bash language identifiers to docs snippets
...
Fixes #6790 <https://github.com/Genymobile/scrcpy/issues/6790 >
PR #6797 <https://github.com/Genymobile/scrcpy/pull/6797 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-05-01 11:46:53 +02:00
Doehyun Baek
3de3325b98
Add missing dependency libv4l-dev to doc/build.md
...
Fixes #6803 <https://github.com/Genymobile/scrcpy/issues/6803 >
PR #6804 <https://github.com/Genymobile/scrcpy/pull/6804 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-05-01 11:09:48 +02:00
Romain Vimont
19c4d0b4e9
Document release signature verification
...
Fixes #6800 <https://github.com/Genymobile/scrcpy/issues/6800 >
PR #6801 <https://github.com/Genymobile/scrcpy/pull/6801 >
2026-05-01 10:58:54 +02:00
Romain Vimont
bf8bff430f
Rename virtual_display.md to virtual-display.md
2026-04-30 12:59:09 +02:00
Romain Vimont
9b2498c852
Add --keep-active
...
An an option to simulate user activity to prevent the screen from
turning off due to inactivity.
Fixes #6787 <https://github.com/Genymobile/scrcpy/issues/6787 >
PR #6792 <https://github.com/Genymobile/scrcpy/pull/6792 >
2026-04-27 09:26:07 +02:00
Romain Vimont
6235289e77
Update protocol documentation
...
The protocol changed in commit 78cba1b7c2 .
Update the documentation accordingly.
Refs #6159 <https://github.com/Genymobile/scrcpy/pull/6159 >
PR #6776 <https://github.com/Genymobile/scrcpy/pull/6776 >
2026-04-24 12:16:12 +02:00
Romain Vimont
330b4c439f
Replace v2.0 with 2.0 in doc
...
Refs #6776 comment <https://github.com/Genymobile/scrcpy/pull/6776#discussion_r3105660913 >
PR #6776 <https://github.com/Genymobile/scrcpy/pull/6776 >
2026-04-24 12:15:53 +02:00
Romain Vimont
12b129a17d
Add MOD+q shortcut to quit
...
Fixes #6612 <https://github.com/Genymobile/scrcpy/issues/6612 >
PR #6780 <https://github.com/Genymobile/scrcpy/pull/6780 >
2026-04-24 12:11:41 +02:00
Romain Vimont
175134c0ca
Add F11 as fullscreen shortcut
...
PR #6777 <https://github.com/Genymobile/scrcpy/pull/6777 >
2026-04-20 18:38:53 +02:00
Romain Vimont
4671927c34
Add missing language identifier in v4l2.md
...
Refs #6725 comment <https://github.com/Genymobile/scrcpy/pull/6725#discussion_r3105651796 >
2026-04-19 11:19:30 +02:00
Satyam Kashyap
cbc5917050
Clarify MSYS2 MinGW terminal requirement
...
PR #6254 <https://github.com/Genymobile/scrcpy/pull/6254 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-04-17 23:11:11 +02:00
Romain Vimont
db013aa7a7
Fix macOS spelling in documentation
2026-04-17 23:06:34 +02:00
Managor
158cae3237
Add instructions for creating v4l2loopback device
...
PR #6725 <https://github.com/Genymobile/scrcpy/pull/6725 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-04-17 22:22:20 +02:00
Romain Vimont
b5cc6f2be5
Set default audio-output-buffer to 10ms
...
Change the default value of `--audio-output-buffer` from 5ms to 10ms.
In practice, the audio output backends do not support values below 10ms.
When the setting is set to 5ms, several successive calls are made every
10ms or more.
Additionally, a 5ms output buffer can cause audio glitches on some
computers.
Refs SDL/#13319 <https://github.com/libsdl-org/SDL/issues/13319 >
Refs SDL/#13397 <https://github.com/libsdl-org/SDL/issues/13397 >
Fixes #3793 <https://github.com/Genymobile/scrcpy/issues/3793 >
PR #6775 <https://github.com/Genymobile/scrcpy/pull/6775 >
2026-04-17 21:34:18 +02:00
Romain Vimont
4f97e2e30b
Disable retry capture at lower resolution
...
A mechanism was introduced to retry capture at a lower resolution to
support devices unable to encode at the device screen resolution.
While useful, this approach is inherently limited and will not be able
to handle the dynamic resizing required for resizable virtual displays.
Disable this mechanism entirely. Further commits will add support for
adjusting the size in advance according to video encoder capabilities.
Refs #2947 <https://github.com/Genymobile/scrcpy/pull/2947 >
PR #6766 <https://github.com/Genymobile/scrcpy/pull/6766 >
2026-04-14 22:50:28 +02:00
Tech-Tac
65153a09c3
Add option to disable window aspect ratio lock
...
By default, the window aspect ratio is preserved when resizing.
Add `--no-window-aspect-ratio-lock` to disable this behavior.
PR #6761 <https://github.com/Genymobile/scrcpy/pull/6761 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-04-10 19:35:43 +02:00
Romain Vimont
de3db42997
Document video codec alignment
...
PR #6746 <https://github.com/Genymobile/scrcpy/pull/6746 >
2026-04-07 19:47:21 +02:00
Benjamin Loison
247a37d57b
Fix typo in doc/develop.md
...
PR #6752 <https://github.com/Genymobile/scrcpy/pull/6752 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-04-06 11:40:35 +02:00
Romain Vimont
10e0c3226c
Fix typo in documentation
...
Refs #6667 comment <https://github.com/Genymobile/scrcpy/pull/6667#pullrequestreview-3848495119 >
Suggested-by: anotheruserofgithub
2026-02-24 16:01:00 +01:00
Romain Vimont
8b0206f7be
Keep Windows terminal open on error
...
If scrcpy is launched by double-clicking scrcpy.exe in Windows Explorer,
automatically set --pause-on-exit=if-error.
Without this, the terminal would close immediately, preventing the user
from seeing the error.
Also remove scrcpy-console.bat, which is now useless.
PR #6667 <https://github.com/Genymobile/scrcpy/pull/6667 >
2026-02-21 12:17:31 +01:00
Almog Kurtser
3fcc177da5
Use OpenJDK instead of Adoptium on Mac
...
PR #6621 <https://github.com/Genymobile/scrcpy/pull/6621 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-02-12 17:59:11 +01:00
Romain Vimont
5607f12f2a
Document camera torch and zoom features
...
PR #6243 <https://github.com/Genymobile/scrcpy/pull/6243 >
2026-01-13 20:41:09 +01:00
Tommie
8ac04d39f4
Add shortcuts to change the camera zoom
...
MOD+up and MOD+zoom change the camera zoom.
PR #6243 <https://github.com/Genymobile/scrcpy/pull/6243 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2026-01-13 20:40:58 +01:00
Romain Vimont
48fcfdd104
Add shortcuts to switch the camera torch
...
MOD+t turns on the camera torch, MOD+Shift+t turns it off.
PR #6243 <https://github.com/Genymobile/scrcpy/pull/6243 >
Co-authored-by: Tommie <teh420@gmail.com >
2026-01-13 20:35:52 +01:00
Romain Vimont
1015b42e53
Rename "codec meta" to "stream meta"
...
The stream metadata will contain both:
- the codec ID at the start of the stream
- the session metadata (video width and height) at the start of each
"session" (typically on rotation)
PR #6159 <https://github.com/Genymobile/scrcpy/pull/6159 >
2026-01-10 11:53:22 +01:00
Romain Vimont
02989249f6
Migrate from SDL2 to SDL3
...
Refs <https://wiki.libsdl.org/SDL3/README-migration >
PR #6216 <https://github.com/Genymobile/scrcpy/pull/6216 >
2026-01-06 16:22:48 +01:00
Romain Vimont
db2f72a58a
Merge branch 'master' into dev
2025-12-17 20:27:11 +01:00
Romain Vimont
fb6381f5b9
Upgrade links to 3.3.4
2025-12-17 20:21:05 +01:00
paradoxskin
b08093d1c0
Fix incorrect icon filename in build documentation
...
The installed icon was listed as `icon.png`, but the actual
filename is `scrcpy.png`.
PR #6490 <https://github.com/Genymobile/scrcpy/pull/6490 >
Signed-off-by: Romain Vimont <rom@rom1v.com >
2025-11-19 17:13:40 +01:00
Romain Vimont
e5e58b1b30
Upgrade links to 3.3.3
2025-09-27 16:10:10 +02:00
Romain Vimont
f663bbec12
Update links to 3.3.2
2025-09-06 14:54:36 +02:00
Romain Vimont
f01231dff8
Update links to 3.3.1
2025-06-20 20:14:42 +02:00
Romain Vimont
696402c68c
Update links to 3.3
2025-06-11 22:15:30 +02:00
Romain Vimont
db9dc6ae83
Make the snap version as obsolete
...
The version of scrcpy packaged in snap is currently 1.25.
Refs <https://snapcraft.io/scrcpy >
2025-04-01 11:04:34 +02:00
Romain Vimont
e0f37f834b
Update links to 3.2
2025-03-29 16:15:14 +01:00
Romain Vimont
79227af89f
Merge branch 'master' into release
2025-03-29 15:44:29 +01:00