Мне нужна помощь с этим парнем.
Я использую GStreamer 1.0 (14.2) для захвата и потоковой передачи экрана ПК (Windows 10) через udp и получения его на клиенте Ubuntu 12.4. Обновление Ubuntu не вариант.
Сервер:
gst-launch-1.0 -v gdiscreencapsrc ! queue ! video/x-raw,framerate=30/1 ! decodebin ! videoscale ! videoconvert ! \
openh264enc bitrate=3000000 ! \
h264parse ! video/x-h264 ! rtph264pay pt=96 config-interval=1 \
! udpsink host=224.1.1.1 port=5000 auto-multicast=true sync=false
Клиент:
gst-launch -v udpsrc port=5000 multicast-group=224.1.1.1 caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-level-id=(string)42c029, sprop-parameter-sets=(string)\"Z0LAKYyNQDwBEvLAPCIRqA\=\=\,aM48gA\=\=\", payload=(int)96" ! rtph264depay ! h264parse ! queue ! vaapidecode ! vaapisink sync=false
Если я получу 'наборы параметров sprop' из выходных данных сервера и добавлю их в заглавные буквы udpsrc клиента, все в порядке. Проблемы начинаются, когда я пытаюсь выполнить потоковую передачу с другого компьютера с тем же сценарием и той же версией GStreamer. 'Наборы параметров sprop' не совпадают, и я вижу только серый экран.
Я пытался без установки 'sprop-параметров-sets', и это работало, но только если я запускаю клиент перед сервером. В противном случае клиент получает EOS сразу после запуска и завершает работу. Установка 'sprop-параметров-sets' исправила эту проблему, но принесла другую.
Буду признателен за любую помощь!
P.S клиенты работают на системной плате Intel® для настольных ПК DN2800MT Innovation Series.