nextgenhealthcare / connect

The swiss army knife of healthcare integration.
Other
929 stars 280 forks source link

Mirth Doesnt Support All Dicom Standard Sop Classes #4288

Open rbeckman-nextgen opened 4 years ago

rbeckman-nextgen commented 4 years ago

Mirth doesnt support some sopclasses that are part of the dicom standard.

We've been able to workaround this in the past by compiling our Mirth with the supported sop classes but this seems to be problematic with the new mirth launcher .

Ophthalmic Tomography Image Storage

1.2.840.10008.5.1.4.1.1.77.1.5.4

and Wide Field Ophthalmic Photography Stereographic Projection Image Storage

1.2.840.10008.5.1.4.1.1.77.1.5.5

These are listed here http://dicom.nema.org/medical/dicom/2016b/output/chtml/part04/sect_I.4.html

To add additional sopclasses there are just two changes that need to be made to DCMRCV - i dont have these offhand but can dig them up if need be. DCMRCV doesnt seem to have this option but in dcmtk there is a promiscuous option that will support all sopclasses regardless if they are known or not.

I've seen a couple threads in the forum regarding this issue.

Imported Issue. Original Details: Jira Issue Key: MIRTH-4413 Reporter: devinsoares Created: 2019-05-07T08:25:02.000-0700

rbeckman-nextgen commented 4 years ago

If you can dig up exactly what changes would need to be made to MirthDcmRcv, would be much appreciated!

Imported Comment. Original Details: Author: narupley Created: 2019-05-07T08:44:52.000-0700

rbeckman-nextgen commented 4 years ago

Sure thing,

So first we need to define the UID in DCM4che in dcm4che-core/src/main/java/org/dcm4che2/data/UID.java

IE: public static final String WideFieldOphthalmicPhotographyStereographicProjectionImageStorage = "1.2.840.10008.5.1.4.1.1.77.1.5.5";

Then compile dcm4che

Once finished you'll need to take your newly compiled dcm4che-core-2.0.29.jar dcm4che-filecache-2.0.29.jar dcm4che-net-2.0.29.jar dcm4che-tool-dcmrcv-2.0.29.jar dcm4che-tool-dcmsnd-2.0.29.jar and replace it with the ones mirth is using .

Then once we do that we need to define the UIDS in DCMRCV that mirth is using . In /connect/svr/source/org/dcm4che2/tool/dcmrcv/DcmRcv.java

CUIDS = {

....... UID.WideFieldOphthalmicPhotographyStereographicProjectionImageStorage, UID.OphthalmicTomographyImageStorage )

And that should be it! (Aside from resigning the jars if needed)

Let me know if i can be of any assistance.

Regards, Devin

Imported Comment. Original Details: Author: devinsoares Created: 2019-05-07T09:52:13.000-0700

prc9584 commented 3 years ago

Does Mirth plan to add missing SOPs such as Breast Tomo and those mentioned above?

evulhotdog commented 3 years ago

Whats the plan of adding configurable SOP classes?

sgoptos commented 3 years ago

Has there been any movement on this I am looking to add three additional SOP classes

evulhotdog commented 3 years ago

There are workarounds that include recompiling the DICOM module with changes, which is what @rbeckman-nextgen mentioned.

tonygermano commented 3 years ago

Which are the SOP classes that you need to add?

pladesma commented 3 years ago

@sgoptos We have created an internal issue to work on this, but the item has not been prioritized yet, so we don't have any timetable for when this will be done.

sgoptos commented 2 years ago

I need to add these: MPEG4AVCH264HighProfileLevel41 = "1.2.840.10008.1.2.4.102" MPEG2MainProfileHighLevel = "1.2.840.10008.1.2.4.101"; MPEG4AVCH264BDCompatibleHighProfileLevel41 = "1.2.840.10008.1.2.4.103";

I followed the steps to recompile DCM4CHE, do I need to completely recompile mirth for it to accept them or can I just drop them in place of the already existing ones?

iamtuxmeister commented 2 years ago

dmc4che now supports the proper class, it seems like it should be a matter of updating the mirth source to use the new libraries https://dcm4chee-arc-cs.readthedocs.io/en/latest/networking/specs/storage/storage.html

dnoodles commented 5 months ago

Any update on this?