- 16 7月, 2021 1 次提交
-
-
由 Romain Vimont 提交于
Make the code fit into 80 columns.
-
- 14 7月, 2021 15 次提交
-
-
由 Romain Vimont 提交于
The first frames are typically received and decoded with more delay than the others, causing a wrong slope estimation on start. To compensate, assume an initial slope of 1, then progressively use the estimated slope.
-
由 Romain Vimont 提交于
Output buffering and clock logs by disabling a compilation flag.
-
由 Romain Vimont 提交于
The clock rolling sum is not trivial. Test it.
-
由 Romain Vimont 提交于
Add --display-buffer and --v4l2-buffer options to configure buffering time.
-
由 Romain Vimont 提交于
To minimize latency (at the cost of jitter), scrcpy always displays a frame as soon as it available, without waiting. However, when recording (--record), it still writes the captured timestamps to the output file, so that the recorded file can be played correctly without jitter. Some real-time use cases might benefit from adding a small latency to compensate for jitter too. For example, few tens of seconds of latency for live-streaming are not important, but jitter is noticeable. Therefore, implement a buffering mechanism (disabled by default) to add a configurable latency delay. PR #2417 <https://github.com/Genymobile/scrcpy/issues/2417>
-
由 Romain Vimont 提交于
Currently, a frame is available to the consumer as soon as it is pushed by the producer (which can detect if the previous frame is skipped). Notify the new frames (and frame skipped) via callbacks instead. This paves the way to add (optional) buffering, which will introduce a delay between the time when the frame is produced and the time it is available to be consumed.
-
由 Romain Vimont 提交于
The current video buffer only stores one pending frame. In order to add a new buffering feature, move this part to a separate "frame buffer". Keep the video_buffer, which currently delegates all its calls to the frame_buffer.
-
由 Romain Vimont 提交于
Add a scrcpy-specific prefix.
-
由 Romain Vimont 提交于
To fix a data race, commit 5caeab5f called video_buffer_push() and video_buffer_consume() under the v4l2_sink lock. Instead, use the previous_skipped indication (initialized with video buffer locked) to lock only for protecting the has_frame flag. This enables the possibility for the video_buffer to notify new frames via callbacks without lock inversion issues.
-
由 Romain Vimont 提交于
The function sc_cond_timedwait() accepted a parameter representing the max duration to wait, because it internally uses SDL_CondWaitTimeout(). Instead, accept a deadline, to be consistent with pthread_cond_timedwait().
-
由 Romain Vimont 提交于
This avoids to use the SDL timer API directly, and will allow to handle generic ticks (possibly negative).
-
由 Romain Vimont 提交于
Log video buffer initialization failure in v4l2_sink.
-
由 Romain Vimont 提交于
The fps_counter is not used from video_buffer.
-
由 Romain Vimont 提交于
Commit 2a94a2b1 removed video_buffer callbacks, the comment is now meaningless.
-
由 Romain Vimont 提交于
Add a scrcpy-specific prefix.
-
- 07 7月, 2021 2 次提交
-
-
由 Romain Vimont 提交于
-
由 Romain Vimont 提交于
Commit f76fe2c0 fixed README and tests. Fix command line help and manpage.
-
- 04 7月, 2021 1 次提交
-
-
由 Romain Vimont 提交于
av_packet_free() already calls av_packet_unref().
-
- 26 6月, 2021 4 次提交
-
-
由 Romain Vimont 提交于
The v4l2_sink implementation directly read the internal video_buffer field "pending_frame_consumed", which is protected by the internal video_buffer mutex. But this mutex was not locked, so reads were racy. Lock using the v4l2_sink mutex in addition, and use a separate field to avoid depending on the video_buffer internal data.
-
由 Romain Vimont 提交于
To avoid data races. Reported by TSAN.
-
由 Romain Vimont 提交于
Commit 21d206f3 added mutex assertions. However, the "locker" variable to trace the locker thread id was read and written by several threads without any protection, so it was racy. Reported by TSAN.
-
由 Romain Vimont 提交于
The options --no-display and --no-control are independent. The controller was not initialized when no display was requested, because it was assumed that no control could occur without display. But that's not true (anymore): for example, it is possible to pass --turn-screen-off. Fixes #2426 <https://github.com/Genymobile/scrcpy/issues/2426>
-
- 21 6月, 2021 9 次提交
-
-
由 Romain Vimont 提交于
Make the install script download the new prebuilt server (v1.18). Fixes #2409 <https://github.com/Genymobile/scrcpy/issues/2409>
-
由 Romain Vimont 提交于
-
由 Romain Vimont 提交于
Make the versionCode a decimal representation of the scrcpy version. This will for example allow to correctly number the versionCode of v1.17.1 after a v1.18 is released: - v1.18 -> 11800 - v1.17.1 -> 11701 - v1.18.1 -> 11801
-
由 Romain Vimont 提交于
Include the latest version of adb in Windows releases.
-
由 Romain Vimont 提交于
-
由 Wirtos_new 提交于
And increase the command buffer size. Refs #1358 <https://github.com/Genymobile/scrcpy/issues/1358#issuecomment-862989748> PR #2405 <https://github.com/Genymobile/scrcpy/pull/2405> Signed-off-by: NRomain Vimont <rom@rom1v.com>
-
由 Wirtos_new 提交于
This is more explicit. PR #2405 <https://github.com/Genymobile/scrcpy/pull/2405> Signed-off-by: NRomain Vimont <rom@rom1v.com>
-
由 Romain Vimont 提交于
For consistency with other functions in the codebase.
-
由 Romain Vimont 提交于
The short option -F has been deprecated by ff061b4f. On error, suggest the long option --record-format instead.
-
- 20 6月, 2021 8 次提交
-
-
由 Romain Vimont 提交于
If the log level is not verbose, there is no need to attempt to log control messages at all.
-
由 Romain Vimont 提交于
This will allow to avoid unnecessary processing for creating logs which will be discarded anyway.
-
由 Romain Vimont 提交于
-
由 Romain Vimont 提交于
On Windows, PRIu64 is defined to "llu", which is not supported: error: unknown conversion type character 'l' in format
-
由 Marti Raudsepp 提交于
PR #2371 <https://github.com/Genymobile/scrcpy/pull/2371> Signed-off-by: NRomain Vimont <rom@rom1v.com>
-
由 Marti Raudsepp 提交于
PR #2371 <https://github.com/Genymobile/scrcpy/pull/2371> Signed-off-by: NRomain Vimont <rom@rom1v.com>
-
由 Romain Vimont 提交于
Mouse motion events were forwarded as soon as any mouse button was pressed. Instead, only consider left-click (and also middle-click and right-click if --forward-all-clicks is enabled).
-
由 Romain Vimont 提交于
-