2017-03-20 7 views
0

Gstreamer를 처음 사용하고 비디오 스트림을 표시하기 전에 해상도를 변경하는 데 문제가 있습니다. Windows 7을 실행하는 컴퓨터에서 320x184 해상도의 RTP/RTSP 스트림을 수신합니다. 다음 명령을 사용하여 스트림을 표시 할 수 있습니다.gstreamer rtsp stream chance resolution

gst-launch-1.0 rtspsrc location = rtsp : //10.0.0.3 : 554/stream1 대기 시간 = 0! 디코드 빈! autovideosink

대기 시간없이 비디오 스트림을 보여주는 작은 창이 표시됩니다.
이것은 거의 달성하고자하는 것입니다. 창 테두리없이이 스트림을 1280 x 800 해상도로만 표시하려고합니다. 이를 달성하기 위해 Gstreamer 파이프 라인을 확장하는 방법을 모르겠습니다. 너희 중 몇 명이 나를 도울 수 있니?

감사합니다.

답변

0

명령 줄에서이 작업을 수행 할 수 없습니다. 이 목적을 위해 실제 GUI 응용 프로그램을 작성해야합니다. 그런 다음 GUI로 GStreamer 파이프 라인을 상호 작용해야합니다. 보다 정확하게하려면 파이프 라인 렌더러에게 비디오를 그릴 위치를 알려줘야합니다. 이를 위해 GstVideoOverlay 인터페이스가 필요합니다.

https://github.com/GStreamer/gst-plugins-base/tree/master/tests/examples/overlay

0

내 질문에 대한 답변을 찾을 :

https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideooverlay.html

은 또한 그것을 사용하는 방법에 대한 예제가 있습니다 추가 videoscale 트릭을했다.
전체 명령의 모양은 다음과 같습니다.

gst-launch-1.0 rtspsrc location = rtsp : //10.0.0.3 : 554/stream1 대기 시간 = 0! 디코드 빈! videoscale! video/x-raw, 너비 = 1280, 높이 = 800! autovideosink

감사합니다. 입력 해 주셔서 감사합니다.

+0

By the way :이 솔루션은 아직 국경과 함께 작업 중입니다! 데모에서는 GStreamer를 사용하기 때문에 특정 코드를 작성하거나이 데모 용 테두리를 유지하려고합니다. – Doojoo

+0

실제로 비디오 크기에서 작동합니다. 데모를 위해 이것은 ok 이상이어야합니다. 소프트웨어에서 비디오 스케일링을 수행하는 것은 원래 해상도에서 실행하는 것보다 비용이 많이 들지만 윈도우를 스케일링하는 것입니다.이 경우 GPU가 스케일링을 수행 할 가능성이 가장 높습니다 (사용되는 렌더러에 따라 다름). –