mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/spice
synced 2025-12-26 22:48:19 +00:00
Add an utility to make possible to check various features of VideoEncoder. 2 GStreamer plugins are used in a chain like this: (1) input pipeline -> (2) video encoder -> (3) output pipeline While converting output from (1) is compared with output of (3) making sure the streaming is working correctly. You can set various options: - part of the input pipeline description to allow specifying different video from GStreamer test ones to a video file; - the encoder to use; - different image properties to use for (2) input: - different bit depth; - top/down or down/up; - initial bitrate. The idea is to use this helper in combination with a shell script and some video sources to make able to test various settings. Also can be used to extend the current encoder list. As an example you can use a command like $ ./test-gst -e gstreamer:vp8 -i \ 'filesrc location=bbb_sunflower_1080p_30fps_normal.mp4 \ ! decodebin ! videoconvert' to check vp8 encoding. Currently it does not emulate bandwidth changes as stream reports from the client are not coded. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Pavel Grunt <pgrunt@redhat.com> |
||
|---|---|---|
| .. | ||
| .gitignore | ||
| base_test.ppm | ||
| basic-event-loop.c | ||
| basic-event-loop.h | ||
| Makefile.am | ||
| README | ||
| regression-test.py | ||
| replay.c | ||
| stat-main.c | ||
| stat-test.c | ||
| test-agent-msg-filter.c | ||
| test-codecs-parsing.c | ||
| test-display-base.c | ||
| test-display-base.h | ||
| test-display-no-ssl.c | ||
| test-display-resolution-changes.c | ||
| test-display-streaming.c | ||
| test-display-width-stride.c | ||
| test-empty-success.c | ||
| test-fail-on-null-core-interface.c | ||
| test-gst.c | ||
| test-just-sockets-no-ssl.c | ||
| test-loop.c | ||
| test-multiple.py | ||
| test-options.c | ||
| test-playback.c | ||
| test-qxl-parsing.c | ||
| test-stat-file.c | ||
| test-stream.c | ||
| test-two-servers.c | ||
| test-vdagent.c | ||
What is here ============ This directory will contain a testsuite for the server including tetris drawing. Unfortunately tetris and most of the tests are not here right now. You can however run all the tests and use libtool to debug any of them thus: libtool --mode=execute gdb test_just_sockets_no_ssl Overview of tests ================= test_just_sockets_no_ssl A complete server, only provides the main and inputs channels. Doesn't actually produce anything on the channels. Essentially a test of the regular link code (reds.c), good for multiple connect/disconnect tests. test_empty_success tests calling test_fail_on_null_core_interface should abort when run (when spice tries to watch_add) basic_event_loop.c used by test_just_sockets_no_ssl, can be used by other tests. very crude event loop. Should probably use libevent for better tests, but this is self contained. Automated tests =============== test_display_streaming.c this test can be used to check regressions. For this, Spice needs to be compiled with --enable-automated-tests and test_display_streaming needs to be called passing --automated-tests as parameter