Pracuję nad gstreamerem po raz pierwszy i próbuję przesyłać strumieniowo plik wideo MP4 z serwera do klienta za pomocą Gstreamer (RTP i UDP). Linia poleceń, które staram się używać:Przesyłanie strumieniowe plików wideo MP4 na Gstreamer
Na Server Side:
gst-launch-1.0 -v filesrc location = file_name.mp4 ! decodebin ! x264enc ! rtph264pay ! udpsink host=192.1XX.XX.XX port=9001
po stronie klienta:
gst-launch-1.0 -v udpsrc port=9001 caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96" ! rtpstreamdepay ! decodebin ! videoconvert ! autovideosink
jestem w stanie strumienia wideo pomyślnie. Ale nie chcę wykonywać operacji po stronie serwera: decodebin
i x264enc
. Więc usunąłem te operacje i używane ten wiersz polecenia po stronie serwera
gst-launch-1.0 -v filesrc location =file_name.MP4 ! rtpstreampay ! udpsink host=192.1XX.XX.XX port=9001
na którym nie był w stanie strumienia wideo.
Czy ktokolwiek mógłby mnie prowadzić, dlaczego potrzebujemy mieć dekodowania i kodowania operacji w tym scenariuszu podczas wysyłania danych. Czy istnieje sposób przesyłania danych bez użycia tych operacji.
Dzięki.