Hi,
Try the following:
org.csstudio.display.builder.runtime/update_throttle=10
org.csstudio.display.builder.representation/update_accumulation_time = 10
org.csstudio.display.builder.representation/update_delay = 10
org.csstudio.display.builder.representation/plot_update_delay = 1
org.csstudio.display.builder.representation/image_update_delay = 1
Those are the settings we use on one of our beamlines. We have an areaDetector driver that can buffer images, export them via PVA (with lossless compression), and then ‘scroll’ through them like a movie, and
the updates are quite fast.
The only downside is that they are global settings, so it affects every other PV, whether you want it to or not. I suppose if that’s an issue then a separate Phoebus instance could be run, dedicated for the
image displays.
Cheers,
Matt
From: Tech-talk <tech-talk-bounces at aps.anl.gov>
On Behalf Of Jure Varlec via Tech-talk
Sent: Tuesday, May 12, 2026 10:50 AM
To: EPICS Tech Talk <tech-talk at aps.anl.gov>
Subject: [EXTERNAL] Phoebus image frame rate
Dear all, I have made a Phoebus display consisting of nothing but an image widget. All axes off, interpolation disabled. A color video streamed
over PVA is unpleasant to look at, I'd say it has about 5 FPS, maybe. The IOC is on the same machine,
Dear all,
I have made a Phoebus display consisting of nothing but an image widget. All axes off, interpolation disabled. A color video streamed over PVA is unpleasant to look at, I'd say it has about 5 FPS, maybe. The IOC is on the same machine, so there's plenty of "network" bandwidth. I have tried pvmonitor and c2dataviewer, both had no issues streaming at 30 FPS. I've tried Phoebus 4.7.3 and 5.0.0.
I'm aware of Phoebus' delay settings, which have been set to:
org.csstudio.display.builder.representation/image_update_delay=10
org.csstudio.display.builder.representation/update_delay=10
No effect. Actually, there is an effect: if I set the image update delay to 1000 ms, I get 1 FPS as expected. But reducing it below ~200 ms doesn't increase it beyond ~5 FPS.
I consulted both artificial and natural intelligence and, after the AI had a look at verbose Phoebus logs and results of Java async-profiler, both agreed that the culprit is probably image decoding in Phoebus. I find that hard to believe. I reduced image resolution to 640x480 (the camera I use refused to go lower than that) and frame rate stayed at about 5 FPS. That makes no sense to me. I'd rather believe that there's some setting I don't know about.
Is there? Please?
Thanks,
Jure