I'm having a problem with my Query/Retrieve SCP. I built my own a few months ago, and has been working well until we've recently added more jpg2000 studies. The problem I'm having is my lack of complete understanding of how the dicom protocol works for this part of things.
A bit of background: I have a complete PACS server built around my company's needs built on top of ClearCanvas, after scrapping version 1 built on a proprietary dicom toolkit. jpg2000 C-Stores and viewing with a custom lightweight viewer work fine. C-Move with non-jpg2000 files work fine.
The only issue I seem to have is retrieving a jpg2000 study via a C-Move request. I can verify (using efilm) that the files saved via C-Store work fine, so I'm confident it's in the query/retrieve, not the storage itself.
When I C-Move the study from a PACS system, the transfer syntax is reported as jpg2000 lossless (1.2.840.10008.1.2.4.90). However, I always get Implicit Vr (1.2.840.10008.1.2) from my SCP. I've tried forcing the transfersyntax for the C-Move's returning SCU to be jpg2000, but the efilm station I use for testing doesn't seem to recognize it. If I return it using Implicit Vr, I only get static for the image, but the dicom fields are correct (suggesting a problem with image decompression/format).
My question is two-fold. 1) Where is the transfer syntax set for the C-Move operation? Ie- is it negotiated / sent when the initial C-Find response is sent? 2) If not, then how should I know how to set the transfer syntax?
If I'm unclear, please let me know - this is hard to explain without a whiteboard!