scrcpy/app/src
Romain Vimont 5cfa159e16 Move decoder frame to decoder
The video buffer held 3 frames:
 - the producer frame (for decoding)
 - the pending frame (to exchange between the producer and consumer)
 - the consumer frame (for rendering)

It worked well, but it prevented video buffers to be chained, because
the consumer frame of the first video buffer must be the same as the
producer frame of the second video buffer.

To solve this problem, make the decoder handle its decoding frame, and
keep only the pending and consumer frames in the video_buffer.

    decoder -> pending -> consumer -> pending -> consumer
             |---------------------||---------------------|
                  video_buffer 1         video_buffer 2

This paves the way to support asynchronous swscale.
2021-02-21 22:52:24 +01:00
..
android Remove AINPUT_SOURCE_ANY value 2018-08-12 15:35:29 +02:00
sys Replace SDL_strdup() by strdup() 2021-02-17 09:54:03 +01:00
util Assert non-recursive usage of mutexes 2021-02-17 09:54:03 +01:00
adb.c Replace SDL_strdup() by strdup() 2021-02-17 09:54:03 +01:00
adb.h Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
cli.c Group common includes into common.h 2021-01-08 19:22:10 +01:00
cli.h Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
common.h Group common includes into common.h 2021-01-08 19:22:10 +01:00
compat.c Provide strdup() compat 2021-02-17 09:53:25 +01:00
compat.h Provide strdup() compat 2021-02-17 09:53:25 +01:00
control_msg.c Replace SDL_strdup() by strdup() 2021-02-17 09:54:03 +01:00
control_msg.h Replace SDL_strdup() by strdup() 2021-02-17 09:54:03 +01:00
controller.c Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
controller.h Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
coords.h Move common structs to coords.h 2021-01-08 19:22:10 +01:00
decoder.c Move decoder frame to decoder 2021-02-21 22:52:24 +01:00
decoder.h Move decoder frame to decoder 2021-02-21 22:52:24 +01:00
device.c Group common includes into common.h 2021-01-08 19:22:10 +01:00
device.h Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
device_msg.c Replace SDL_strdup() by strdup() 2021-02-17 09:54:03 +01:00
device_msg.h Replace SDL_strdup() by strdup() 2021-02-17 09:54:03 +01:00
event_converter.c Group common includes into common.h 2021-01-08 19:22:10 +01:00
event_converter.h Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
events.h Remove unused custom event 2021-02-14 14:44:05 +01:00
file_handler.c Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
file_handler.h Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
fps_counter.c Expose skipped frames to the consumer 2021-02-21 22:52:24 +01:00
fps_counter.h Expose skipped frames to the consumer 2021-02-21 22:52:24 +01:00
icon.xpm Add window icon 2018-02-05 14:46:00 +01:00
input_manager.c Move fps counter out of video buffer 2021-02-21 22:52:24 +01:00
input_manager.h Move fps counter out of video buffer 2021-02-21 22:52:24 +01:00
main.c Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
opengl.c Enable trilinear filtering for OpenGL 2020-04-15 17:39:51 +02:00
opengl.h Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
receiver.c Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
receiver.h Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
recorder.c Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
recorder.h Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
scrcpy.c Handle frame available from screen.c 2021-02-21 22:52:24 +01:00
scrcpy.h Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
screen.c Handle frame available from screen.c 2021-02-21 22:52:24 +01:00
screen.h Handle frame available from screen.c 2021-02-21 22:52:24 +01:00
server.c Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
server.h Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
stream.c Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
stream.h Wrap SDL thread functions into scrcpy-specific API 2021-02-17 09:54:03 +01:00
tiny_xpm.c Group common includes into common.h 2021-01-08 19:22:10 +01:00
tiny_xpm.h Define feature test macros in common.h 2021-01-17 14:08:48 +01:00
video_buffer.c Move decoder frame to decoder 2021-02-21 22:52:24 +01:00
video_buffer.h Move decoder frame to decoder 2021-02-21 22:52:24 +01:00