TRANSFER ISSUE

Hi, i have a trouble when i try to send MRs to other modality i get this error

E0215 10:44:46.310597 OrthancException.cpp:57] Not implemented yet: Cannot transcode from 1.2.840.10008.1.2.1 to one of [ ]


any body knows how to solve it

thanks

Maximiliano,
It would appear that the negotiation of an agreed upon transfer syntax between Orthanc and your “other modality” is failing. 1.2.840.10008.1.2.1 is Explicit VR Little Endian, but your other modality is potentially offering up a transfer syntax that Orthanc is (a) unable to understand, or (b) not configured to work with.

Check the full configuration file options (this is the latest I believe) and compare your orthanc.json configuration file - it’s likely that the answers you need are going to be close to the “AcceptedTransferSyntaxes” : [ “1.2.840.10008.1.*” ] config setting.

HTH

Dave

i have the same config and change this [ “1.2.840.10008.1.*” but i get the same error. any other idea???

thanks a lot dave

Hi Maximiliano,

I have seen this happening when a single transfer contains regular images like CT, MR, … and a few DICOM files that can not be transcoded e.g. RawStorageData but this also happens with other kind of data which I don’t remember.

I already have a reproducible scenario but could not work on it yet.

To workaround, you may try to transfer each series one by one or each instance one by one.

Best regards,

Alain.

Hi Alain, if i try to transfer one by one and get error.
E0217 08:27:30.339718 OrthancException.h:85] DicomUserConnection: No acceptable presentation context for modality: Unable to determine the accepted presentation contexts for C-STORE with AET VISUALSANMARTIN (MRe)
E0217 08:27:43.888021 OrthancException.h:85] DicomUserConnection: No acceptable presentation context for modality: Unable to determine the accepted presentation contexts for C-STORE with AET VISUALSANMARTIN (RAW)
Thanks
Maximiliano

Hi Maximiliano,

Could you possibly share some anonymized offending files ?

Best regards,

Alain.

Hi Alain
https://drive.google.com/file/d/1uLPfcQtJjewAPiRRtgCN3oWT2IylW47R/view?usp=sharing
And thanks for your support
Best Regards
Maximiliano

Hi Maximiliano,

I’ve tried to transfer it from Orthanc to:

  • another Orthanc
  • Radiant acting as a C-Store SCP
    Both transfers were successful without any tuning.

I would advise you to investigate with your PACS provider.
Note that you may also get more info in the logs by enabling detailed DCMTK logging by sending this command curl -X PUT http://localhost:8042/tools/log-level-dicom -d “trace” or launching orthanc with the --trace-dicom command line option

Best regards,

Alain

Hi Alain, i guess it has to do with raw images.
Is it possible to disable the sending of raw images?
Thanks Again
BR
Max

Hi Maximiliano,

No, you can not really disable sending of raw images. Alternate solutions are:

  • If you issue the C-Store command through the API, you can list individual instances to be transmitted (and therefore, not include the instances id of the Raw images)
  • You may discard Raw images when you receive them with a lua script.
  • If discarding is not an option, I may configure an Orthanc as a proxy between your orthanc and your modality and ask this proxy to discard Raw images and forward everything it receives to a given destination (sample script).

HTH,

Alain

Hi again!!! how can i discard raw images, i can discard PR but i dont know how to do it with raw images.
i put here my lua

function Initialize()

print “Auto-router initialising…”

end

function ReceivedInstanceFilter(dicom, origin, info)

if dicom.Modality == ‘PR’ then
return false
else
return true
end
end

function OnStoredInstance(instanceId, tags, metadata)

SendToModality(instanceId, ‘POSTDICOM’)
end

THANKS
Max

Hi,

The argument dicom corresponds to a Lua table (i.e. an associative array) that contains the DICOM tags of the incoming instance. For debugging purpose, you can print this structure as follows:

function ReceivedInstanceFilter(dicom, origin, info)
   PrintRecursive(dicom)
   -- Accept all incoming instances (default behavior)
   return true
end

So you can probably use dicom.SOPClassUID to discard the Raw Data Storage (ref)

HTH,

Alain.

thaks!! its works