summaryrefslogtreecommitdiff
path: root/TESTING
blob: 1c9d5add084a05bdc40d1b1a88e1e7492a9a1422 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Testing latency
===============

The following commands can be used for testing the end-to-end latency of the server:

Server:
-------
  $ ./stp-server -p 8000

PUT stream:
-----------
  $ gst-launch-1.0 -e videotestsrc is-live=TRUE ! videoscale ! \
      video/x-raw, height=120, width=160 ! timeoverlay font-desc="80px" ! tee name=t \
      t. ! queue ! videoconvert ! theoraenc ! oggmux ! \
      	souphttpclientsink location="http://localhost:8000/stream/somepath?type=http" \
      t. ! queue ! videoconvert ! xvimagesink

GET stream:
-----------
  $ gst-launch-1.0 souphttpsrc location="http://localhost:8000/stream/somepath" ! \
      decodebin ! videoconvert ! videoscale ! autovideosink

Launch as many GET streams as necessary. For multiple PUT streams, just change "somepath" to something else.

If you start seeing messages such as this on the GET stream, you've exceeded the
computer's realtime encoding/decoding capability:

  gstbasesink.c(2791): gst_base_sink_is_too_late ():
  /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXvImageSink:autovideosink0-actual-sink-xvimage:
  There may be a timestamping problem, or this computer is too slow.