Cannot achieve fullscreen output with GStreamer sinks on Raspberry Pi 5

Hi,
I have tried many times to enable fullscreen display for the output of a real-time segmentation app using GStreamer on Raspberry Pi 5. I have used all available community suggestions including:

  • xvimagesink fullscreen=true

  • glimagesink, gtksink, and even appsink

  • Manual window resizing, gtk_widget_set_fullscreen(), and related API calls

  • Running with or without X11, on Wayland and via direct framebuffer

None of these methods actually display the video in fullscreen — even manually maximizing the window does not work.
Could you please provide a minimal working example that shows how to launch a GStreamer-based video output in actual fullscreen (not just maximized window) on Raspberry Pi 5?

Thank you very much!

Hey @Chin_Hsu ,

Welcome to the Hailo Community!

You’ll need to update the DISPLAY_PIPELINE call in your pipeline code.

Instead of using the default video sink, change it to this:

display_pipeline = DISPLAY_PIPELINE(  
    video_sink="kmssink fullscreen=true",  # This replaces self.video_sink  
    sync=self.sync,  
    show_fps=self.show_fps,  
)

You have a few different sinks to choose from:

  1. KMS Sink (this is your best bet for Pi 5): kmssink fullscreen=true

  2. Wayland Sink: waylandsink fullscreen=true

Thanks for sharing. I’m using Wayland mode and have tried waylandsink fullscreen=true. I also tried video_sink="kmssink fullscreen=true".
However, I encountered the following error:
Error creating pipeline: gst_parse_error: no property “fullscreen” in element “fpsdisplaysink”.

this can be fullscreen.

/home/pi/hailo-rpi5-examples/venv_hailo_rpi_examples/lib/python3.11/site-packages/hailo_apps/hailo_app_python/apps/instance_segmentation/instance_segmentation_pipeline.py

Set process title for easy identification

setproctitle.setproctitle(INSTANCE_SEGMENTATION_APP_TITLE)

Force fullscreen display using waylandsink

self.video_sink = ‘fpsdisplaysink video-sink=“waylandsink fullscreen=true” sync=false’

Build the GStreamer pipeline

self.create_pipeline()

moreover, modify

self.video_width = 1280
self.video_height = 720

2 Likes