Romain Vimont
73e8ec1b35
Remove path argument from cmd_execute()
...
It is always equal to argv[0] (or not used on Windows).
2019-11-27 21:11:52 +01:00
Romain Vimont
8dc11a0286
Fix warnings on Windows
...
fix warnings reported with -Dwarning_level=2 on Windows.
2019-11-27 21:11:52 +01:00
Romain Vimont
06104a701b
Fix windows build
...
Utilities have been moved to util/, but includes had not been updated
in Windows-specific files.
Ref: dfd0707a29
2019-11-27 13:25:56 +01:00
Romain Vimont
31d9d56117
Fix warnings
...
Fix warnings reported with -Dwarning_level=2.
2019-11-26 09:10:41 +01:00
Romain Vimont
dfd0707a29
Move utilities to util/
2019-11-24 11:53:23 +01:00
Romain Vimont
83ace84280
Restore the .jar extension on the device side
...
Commit 3da95b52bd
renamed
'scrcpy-server.jar' to 'scrcpy-server' to avoid issues on the client
side.
However, removing the extension may cause issues with app_process, so
restore the extension only on the device side.
Fixes <https://github.com/Genymobile/scrcpy/issues/944 >
2019-11-22 15:23:57 +01:00
Romain Vimont
c9d886f38b
Use the existing constants for device server path
2019-11-22 15:16:00 +01:00
Romain Vimont
c2116082ab
Remove deprecated options from help and manpage
...
Ref: ff061b4f30
2019-11-19 23:05:39 +01:00
Romain Vimont
3599fcaae5
Fix help for --window-width and --window-height
...
The default value is 0 (automatic), not -1.
2019-11-19 22:58:18 +01:00
senta2006
7aed5d5b60
Fix typos
...
PR <https://github.com/Genymobile/scrcpy/pull/927 >
Signed-off-by: Romain Vimont <rom@rom1v.com>
2019-11-18 17:45:52 +01:00
Romain Vimont
1d97d7213d
Add option --max-fps
...
Add an option to limit the capture frame rate. It only works for devices
with Android >= 10.
Fixes <https://github.com/Genymobile/scrcpy/issues/488 >
2019-11-17 22:10:39 +01:00
Romain Vimont
1b78a77962
Fix error message
2019-11-17 22:08:34 +01:00
Diego Fernando Díaz A
59bc5bc1f5
Add option to disable window decoration
...
Add --window-borderless parameter.
Signed-off-by: Romain Vimont <rom@rom1v.com>
2019-11-15 18:59:40 +01:00
Romain Vimont
9fd7a80a89
Add option to specify the initial window size
...
Add --window-width and --window-height parameters.
If only one is provided, the other is computed so that the aspect ratio
is preserved.
2019-11-15 18:52:58 +01:00
Diego Fernando Díaz A
ce5635f28c
Add option to specify the initial window position
...
Add --window-x and --window-y parameters.
Signed-off-by: Romain Vimont <rom@rom1v.com>
2019-11-15 18:50:49 +01:00
Romain Vimont
771bd8404d
Do not write invalid packet duration
...
Configuration packets have no PTS. Do not compute a packet duration from
their PTS.
Fixes recording to mp4 on device rotation.
2019-11-13 16:14:46 +01:00
Yu-Chen Lin
b963a3b9d5
Check client and server mismatch
...
Send client version as first parameter and check it at server start.
Signed-off-by: Yu-Chen Lin <npes87184@gmail.com>
Signed-off-by: Romain Vimont <rom@rom1v.com>
2019-11-13 12:00:50 +01:00
Romain Vimont
aa0f77c898
Accept resize shortcuts on maximized window
...
Allow "resize to fit" and "resize to pixel-perfect" on maximized window:
restore the window to normal size then resize.
2019-11-11 21:49:23 +01:00
Romain Vimont
35c05bb3ce
Fix rotation while the window is maximized
...
Keep the windowed window size to handle maximized window the same way as
fullscreen window.
Fixes <https://github.com/Genymobile/scrcpy/issues/750 >
2019-11-11 21:49:23 +01:00
Romain Vimont
f6f2868868
Handle window events from screen.c
...
Only the screen knows what to do on window events.
This paves the way to handle more window events.
2019-11-11 15:02:26 +01:00
Romain Vimont
6996cbf5d3
Log device disconnection
...
If scrcpy closes due to socket disconnection, log a warning.
2019-11-09 21:17:03 +01:00
Romain Vimont
b08a98324d
Fix segfault on empty file recorded
...
Write the file trailer only if the file header have been written, to
avoid a segfault in libav.
Fixes <https://github.com/Genymobile/scrcpy/issues/918 >.
2019-11-07 21:58:57 +01:00
Romain Vimont
c916af0984
Add --prefer-text option
...
Expose an option to configure how key/text events are forwarded to the
Android device.
Enabling the option avoids issues when combining multiple keys to enter
special characters, but breaks the expected behavior of alpha keys in
games (typically WASD).
Fixes <https://github.com/Genymobile/scrcpy/issues/650 >
2019-11-07 19:01:35 +01:00
Romain Vimont
ff061b4f30
Deprecate short options for advanced features
...
The short options will be removed in the future (and may be reused for
other features).
2019-11-07 10:01:59 +01:00
Romain Vimont
157c60feb4
Fix indentation
2019-11-07 09:48:48 +01:00
Romain Vimont
2d90e1befd
Fix include recorder.h
2019-11-06 22:22:46 +01:00
Romain Vimont
0e301ddf19
Factorize scrcpy options and command-line args
...
Do not duplicate all scrcpy options fields in the structure storing the
parsed command-line arguments.
2019-11-06 22:06:54 +01:00
Romain Vimont
c42ff75b74
Pass screen to mouse event converters
...
Mouse events coordinates depend on the screen size and location, so the
converter need to access the screen.
The fact that it needs the position or the size is an internal detail,
so pass a pointer to the whole screen structure.
2019-11-06 21:24:36 +01:00
Romain Vimont
b0db1178d1
Move event conversion to input_manager
...
Only keep helper functions separated.
This will help to convert coordinates internally when necessary.
2019-11-06 21:24:36 +01:00
Romain Vimont
8d601d3210
Rename "input_manager" variables to "im"
...
It is used a lot, a short name improves readability.
2019-11-06 21:24:36 +01:00
Romain Vimont
683f7ca848
Document how to attach a debugger to the server
2019-11-03 19:42:37 +01:00
Romain Vimont
95fd64b5de
Add scrcpy version in recorded video metadata
...
It might help to understand problems in recorded videos.
2019-10-31 20:57:57 +01:00
Romain Vimont
3da95b52bd
Rename scrcpy-server.jar to scrcpy-server
...
The server name ending with .jar has several drawbacks:
- meson requires the jar executable to attempt to modify it:
<https://github.com/Genymobile/scrcpy/issues/404#issuecomment-456065923 >
<https://github.com/mesonbuild/meson/issues/4844 >
- meson warns during "ninja install"
<https://github.com/Genymobile/scrcpy/issues/458 >
- some users try to execute it on the computer as a java executable
Removing the extension solves all these problems.
2019-10-31 10:54:29 +01:00
Romain Vimont
c72f677435
Merge branch 'master' into dev
2019-10-30 23:29:44 +01:00
Romain Vimont
1380f6e00f
Fix help for --record-format
...
Record format requires a parameter.
2019-10-30 22:51:40 +01:00
Romain Vimont
17d53be3ef
Fix mouse events conversion
...
The conversion from SDL mouse state to Android mouse state used wrong
constants as mask.
Fixes <https://github.com/Genymobile/scrcpy/issues/635 >
2019-10-25 11:09:06 +02:00
Romain Vimont
f6c8460ebb
Rename window size functions for clarity
...
Now, get_window_size() returns the current window size (fullscreen or
not), while get_windowed_window_size() always returned the windowed size
(the size when fullscreen is disabled).
2019-10-20 16:08:16 +02:00
Romain Vimont
6220456def
Merge mouse and touch events
...
Both are handled the very same way on the device.
2019-10-03 20:37:49 +02:00
Romain Vimont
30168f0428
Ignore duplicate mouse events
...
In SDL, a touch event may simulate an identical mouse event. Since we
already handle touch event, ignore these duplicates.
2019-10-03 20:05:29 +02:00
Romain Vimont
b5a2d99bc2
Send touch events from the client
...
On SDL touch events, send control messages to the server.
2019-10-03 20:05:29 +02:00
Romain Vimont
77f876e29c
Add "inject touch" control message
...
Add a control message type in the protocol to forward touch events to
the device.
2019-10-03 20:05:27 +02:00
Romain Vimont
810ff80ba7
Add buffer_write64be()
...
Add a function to write 64 bits in big-endian from a uint64_t.
2019-10-02 21:40:26 +02:00
Romain Vimont
1f8ba1ca79
Include config.h everywhere
...
Ref: <https://github.com/Genymobile/scrcpy/issues/829 >
Suggested-by: Louis Kruger <louisk@gmail.com>
2019-09-29 22:39:53 +02:00
Louis Kruger
129dabcfa4
Include config.h to fix HIDPI support
...
Ref: <https://github.com/Genymobile/scrcpy/issues/829 >
Signed-off-by: Romain Vimont <rom@rom1v.com>
2019-09-29 22:39:47 +02:00
Yu-Chen Lin
795d103032
input_manager.c: Correct log
...
Signed-off-by: Yu-Chen Lin <npes87184@gmail.com>
2019-09-28 10:37:25 +08:00
Ta-da
513d1ac96d
Fix option "record-format" related short opt
2019-09-27 10:04:41 +08:00
Romain Vimont
ffdbf5990b
Rename event converter functions
...
Rename "XXX_from_sdl_to_android" to "convert_XXX", to avoid huge
function names.
2019-09-15 17:29:03 +02:00
Romain Vimont
9463850c24
Rename "convert.h" to "event_converter.h"
...
The filename gave no hint about what was converted.
2019-09-15 17:29:03 +02:00
Romain Vimont
a9c8fa305d
Fix segfault on recording with old FFmpeg
...
The AVPacket fields side_data and side_data_elems were not initialized
by av_packet_ref() in old FFmpeg versions (prior to [1]).
As a consequence, on av_packet_unref(), side_data was freed, causing a
segfault.
Fixes <https://github.com/Genymobile/scrcpy/issues/707 >
[1]: <http://git.videolan.org/gitweb.cgi/ffmpeg.git/?p=ffmpeg.git;a=commitdiff;h=3b4026e15110547892d5d770b6b43c9e34df458f >
2019-08-13 18:58:36 +02:00
Romain Vimont
8507fea271
Record a packet with its duration
...
Record a packet only once the following has been received, so that we
can set its duration before muxing it.
Fixes <https://github.com/Genymobile/scrcpy/issues/702 >
2019-08-08 18:57:52 +02:00