EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  2025  <2026 Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  2025  <2026
<== Date ==> <== Thread ==>

Subject: Re: Compressed image without NDPluginCodec
From: Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
To: Pedro Nariyoshi <nariyosh at frib.msu.edu>
Cc: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Sat, 14 Feb 2026 14:23:44 +0000
Hi Pedro,

You might look at NDDriverStdArrays. It might be the glue layer that can convert your waveform records to NDArrays, and then you can run them through NDPluginCodec.

That being said the compression support in Phoebus is pretty limited. It works only for JPEG and LZ4, and does not support RGB images with JPEG, so no color cameras. I should say my Phoebus version is a couple years old, so maybe it has been improved?

The ImageJ NTDAViewer plugin supports all the codecs in NDPluginCodec. It uses the codec shareable libraries built in ADSupport, rather than using native Java codecs. It would be nice if Phoebus could optionally use these libraries as well. For example, the best codec for Dectris Eiger detectors is often bslz4, but Phoebus can’t display that, while ImageJ can. They are both written in Java.

Mark


Sent from my iPhone

On Feb 13, 2026, at 2:29 PM, Nariyoshi, Pedro via Tech-talk <tech-talk at aps.anl.gov> wrote:



Hello all,


I have been trying to create a records to display an image on a CS-Studio Phoebus screen. The problem is that transmitting the waveforms directly is quite bandwidth intensive. For our cameras, we tend to use NDPluginCodec with NDPluginPva, which works fairly well, but I would like to avoid having to write some glue code to send the waveforms to a dummy asynNDArrayDriver. I have been trying (without much success) to do it. I have tried creating a json to load via dbLoadGroup and via p4p, but as soon as I set the codec to jpeg and try to send compressed data, everything stops working: nt.wrap doesn't like the compressed data, and I am having trouble getting the json to have a structure that Phoebus will recognize. Does anyone have experience with this? Or maybe a suggestion on how to get compressed data to display on Phoebus screens?


Best regards,

Pedro Nariyoshi

Software Controls Engineer

Facility for Rare Isotope Beams

Michigan State University

640 South Shaw Lane

East Lansing, MI 48824, USA

Tel. 517-908-7352

Email: nariyosh at frib.msu.edu

<OutlookEmoji-1633986722804c1d92827-78e5-4fb8-a88f-762893e3547d.jpg>


JPEG image


References:
Compressed image without NDPluginCodec Nariyoshi, Pedro via Tech-talk

Navigate by Date:
Prev: Re: Yes, Base 7.0.10 was released! Han Lee via Tech-talk
Next: Re: Record TIME field taken from another record's VAL Majer Karel via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  2025  <2026
Navigate by Thread:
Prev: Re: Compressed image without NDPluginCodec Sukhanov, Andrei via Tech-talk
Next: ecat2 module Konrad Gajewski via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  2025  <2026
ANJ, 19 Mar 2026 · Home · News · About · Talk · Base · Modules · Extensions ·
· Distributions · Download · Documents · Links · Licensing ·