Мне нужно это для работы в локальной сети небольшой площади, поэтому я попробовал это:
gst-launch-1.0 --gst-plugin-path=./gst-timestampoverlay \
ximagesrc display-name=":0" \
! videoconvert \
! videoscale \
! video/x-raw,framerate=60/1 \
! queue max-size-time=1000000 leaky=2 \
! vaapih264enc \
! queue max-size-time=1000000 leaky=2 \
! tcpclientsink host=$1 port=5000 sync=false
и
gst-launch-1.0 --gst-plugin-path=./gst-timestampoverlay \
tcpserversrc host=0.0.0.0 port=5000 \
! h264parse \
! queue max-size-time=1000000 leaky=2 \
! vaapih264dec low-latency=true base-only=true \
! queue max-size-time=1000000 leaky=2 \
! videoconvert \
! ximagesink sync=false
Я также написал небольшое приложение для проверки задержки каждого кадра и обнаружил, что средняя задержка при использовании Wi-Fi для преобразования экрана меньше, чем при использовании проводной сети.
Более того, когда я использовал другое программное обеспечение с закрытым исходным кодом для тестирования, я обнаружил, что задержка каждого кадра значительно отличается, в то время как при использовании gstreamer задержка каждого кадра всегда находится в относительно узкой области.
Может кто-нибудь помочь мне объяснить это несоответствие в поведении.