[MPEG2]
TransferSyntaxes = MPEG2
PresentationContexts = StorageCompressedAndUncompressed
Don't mix TransferSyntaxes into the profile secition.
Explained top down: You have some profiles under the [[Profiles]] section. For storescu and storescp, you select one of these profiles that specify the complete behaviour of these tools for association negotiation. One association consists of a set of Presentation Contexts proposed (storescp: accepted Presentation Contexts). So for a profile you introduce in this section, you specify then an identifier of a presentation context list. This identifier (or as many as you want) is defined in the [[PresentationContexts]] section. So, if you want to create a new profile in the standard configuration file, add under [[Profiles]]
Code: Select all
[HolleBolleMPEG2]
PresentationContexts = HolleBollesPresentationContexts
Now specify which presentation contexts you need in "HolleBollesPresentationContexts". You want to send VL Photographic Image SOP instances, using MPEG2 transfer syntax. So add under section [[PresentationContexts]]
Code: Select all
[HolleBollesPresentationContexts]
PresentationContext1 = VLPhotographicImageStorage\MPEG2
PresentationContext2 = VLPhotographicImageStorage\Uncompressed
In this definition you can use any Transfer Syntax identifier you can specify in section [[TransferSyntaxes]]. In my quote above, i select identifers "MPEG2" and "Uncompressed", which are already defined in the standard configuration file:
Code: Select all
[Uncompressed]
TransferSyntax1 = LittleEndianExplicit
TransferSyntax2 = BigEndianExplicit
TransferSyntax3 = LittleEndianImplicit
[MPEG2]
TransferSyntax1 = MPEG2MainProfile@MainLevel
I also added Uncompressed to also propose DICOM's Default Transfer Syntax (being part of "Uncompressed") (which can be left out if original data was already lossy compressed).
Then call storescu with parameter "-xf storescu.cfg HolleBolleMPEG2".
With that you get during association negotiation (small excerpt from debug mode):
Code: Select all
Presentation Contexts:
Context ID: 1 (Proposed)
Abstract Syntax: =VLPhotographicImageStorage
Proposed SCP/SCU Role: Default
Accepted SCP/SCU Role: Default
Proposed Transfer Syntax(es):
=MPEG2MainProfile@MainLevel
Context ID: 3 (Proposed)
Abstract Syntax: =VLPhotographicImageStorage
Proposed SCP/SCU Role: Default
Accepted SCP/SCU Role: Default
Proposed Transfer Syntax(es):
=LittleEndianExplicit
=BigEndianExplicit
=LittleEndianImplicit
storescp works the same way.
Regards,
Michael