How to prioritise a transfer syntax?

I am using Orthanc as part of a long-term image archiving solution. Our production PACS is IntelePACS, and I have all images autoroute to our Orthanc system. The images are all being sent uncompressed. It seems that when IntelePACS attempts to send a series, it sends a single presentation context proposal per abstract syntax in the series and includes all relevant transfer syntaxes in that proposal - in this case the TS options are implicit VR little endian, explicit VR little endian, JPEG Lossless, and JPEG 2000 Lossless. Because it’s a single proposal, Orthanc must choose one TS to accept and is choosing one of the little endian options.

When I use storescp to receive images, I can use the +xv argument and it will choose JPEG 2000 Lossless when presented with that list. It even seems to reliably choose lossless compressed TS options when run with the “accept all” (+xa) argument. Is there a way to have Orthanc prefer a particular TS or set up a priority order for them?

Hi Christopher,

No, this is currently not possible and, indeed, Orthanc will always favor the little endian options.

I understand that this feature makes a lot of sense to reduce the disk usage. Do not hesitate to introduce an enhancement request in the orthanc issue tracker or to contribute.

As a workaround, you may add an Orthanc ‘middleman’ that will be placed between your IntelePACS and your Orthanc archive. It can recompress all images to JP2K before pushing them to the archive. We have added an example implementation of such a setup here:
https://bitbucket.org/osimis/orthanc-setup-samples/src/master/docker/orthanc-transcode-middleman

Br,

Alain