Je suis aux prises avec du code gstreamer en C, que je ne peux pas écrire. Je vous demande de me donner un exemple simple de code de syntaxe C de deux vidéos qui seront affichées dans une fenêtre en utilisant gst_child_proxy_set -> xpos, ypos. Je ne peux pas le comprendre à cause du manque d'exemples, je suis assez nouveau à Gstreamer mais vraiment besoin de le faire de cette façon. Je sais que pour certains d'entre vous c'est juste un moment pour écrire cela et j'essaye depuis quelques jours maintenant ... Cordialement!gstreamer gst_child_proxy_set C syntaxe
gst-launch-1.0 -e \
videomixer name=mix \
sink_0::xpos=0 sink_0::ypos=0 sink_0::alpha=0\
sink_1::xpos=0 sink_1::ypos=0 \
sink_2::xpos=640 sink_2::ypos=0 \
sink_3::xpos=0 sink_3::ypos=360 \
sink_4::xpos=640 sink_4::ypos=360 \
! autovideosink \
videotestsrc pattern="black" \
! video/x-raw,format=AYUV,width=1280,height=720 \
! mix.sink_0 \
uridecodebin uri=rtsp://10.0.0.121:554/video.h264 \
! videoconvert ! videoscale \
! video/x-raw,format=AYUV,width=640,height=360 \
! mix.sink_1 \
uridecodebin uri=rtsp://10.0.0.122:554/video.h264 \
! videoconvert ! videoscale \
! video/x-raw,format=AYUV,width=640,height=360 \
! mix.sink_2 \
uridecodebin uri=rtsp://10.0.0.123:554/video.h264 \
! videoconvert ! videoscale \
! video/x-raw,format=AYUV,width=640,height=360 \
! mix.sink_3 \
uridecodebin uri=rtsp://10.0.0.124:554/video.h264 \
! videoconvert ! videoscale \
! video/x-raw,format=AYUV,width=640,height=360 \
! mix.sink_4 \
Vous ne trouverez peut-être pas cela utile, mais je ne pense pas que GstChildProxy soit le bon outil pour ce que vous essayez d'accomplir ici. Peut-être essayer de définir deux surfaces différentes comme puits vidéo, et mettre l'un à côté de l'autre. –
Je ne sais pas comment réaliser ce que j'essaie de faire, mais j'ai créé un liner qui fonctionne bien, et maintenant j'ai besoin d'écrire même en C pour l'utiliser pour d'autres applications. Peut-être pourriez-vous m'aider à «traduire» ma ligne de commande en C? – JFCorleone
Bien! Je suppose que vous faites référence à une commande 'gst-launch', n'est-ce pas? Si c'est un bon début, vous devriez le coller dans votre message. :) –