0

Trying to use ffplay along with window manager commands to build a CMS out of a Pi 4B. IP camera streams are delivered through rtsp with UDP transport and streams can be opened successfully and played with less than half a second latency with several buffering and framing tweaks (exact command options are probably irrelevant to the full screen toggle situation).

Tried to toggle full screen by double clicking the ffplay window. Full screen mode is completely blank. Toggling back results in the disappearance of the original ffplay window.

Used xwininfo to locate the ffplay window, which is still existent in the X server. Used xdotool to search and windowmove the ffplay window to 0 0 position does not result in the apperance of the ffplay window. xdotool windowmap results a flash of blank screen followed by nothing.

So, is the disapperance of ffplay window an issue of the window manager, ffplay, or both?

Two HDMI outputs on the Pi 4B board are not used and a DisplayLink USB dongle is used to provide a sole VGA based display. DisplayLink driver was installed and xorg.conf was manually written to support a single 1366x768 display.

Further investigation on June 4, 2022

Ran ffplay with -v verbose option both on a DisplayLink USB dongle powered display and xrdp remote session. The output is similar; however, opening on DisplayLink USB dongle caused an additional message Xlib: extension "RANDR" missing on display ":0.0". So this seems to be a X11 compatibility issue with DisplayLink driver rather than a ffplay issue.

Further investigationn on June 6, 2022

Read https://wiki.archlinux.org/title/DisplayLink, I am using udlfb driver for DisplayLink dongle, which does not support xrandr extension. For this reason, I hardcoded a xorg.conf to manually configure the DisplayLink monitor along with a native HDMI0 monitor. This works quite well for other application full-screens, except ffplay. Udl driver is a DRM rewrite of udlfb, which supports configuration by xrandr. I saw udl module is loaded in the system, so I unbind'ed the dongle from udlfb and new_id'ed onto udl. Enabled DisplayLink monitor using xrandr, and the screens are horribly slow at a refreshing rate of 1fps. This is unusable. There are xorg patches over on DisplayLink Forums but none said to have tested with success on RPi4. I am afraid to try it as the Pi is serving other purposes.

I seem to stuck at a catch-22 situation. Want ffplay to full-screen correctly, I need xrandr extension. To use DisplayLink smoothly, cannot use the driver that supports xrandr. So either I need to dig out ffplay's source code to disable the double click or change the program to use xwintool to maximize the window.

2
  • What does ffplay log say? Rerun with -v debug and redirect all stdout/err to a file and check.
    – Gyan
    May 31, 2022 at 4:07
  • Sorry. I was busy with other projects. I did re-run the command with -v verbose option and compared the outputs between opening ffplay on a DisplayLink USB dongle and opening ffplay on a xrdp remote session. I will update the question shortly to reflect the further investigations.
    – L. Cang
    Jun 4, 2022 at 23:33

0

You must log in to answer this question.

Browse other questions tagged .