1storescu(1) OFFIS DCMTK storescu(1)
2
3
4
6 storescu - DICOM storage (C-STORE) SCU
7
8
10 storescu [options] peer port dcmfile-in...
11
13 The storescu application implements a Service Class User (SCU) for the
14 Storage Service Class. For each DICOM file on the command line it sends
15 a C-STORE message to a Storage Service Class Provider (SCP) and waits
16 for a response. The application can be used to transmit DICOM images
17 and other DICOM composite objects.
18
20 peer hostname of DICOM peer
21
22 port tcp/ip port number of peer
23
24 dcmfile-in DICOM file or directory to be transmitted
25
27 general options
28 -h --help
29 print this help text and exit
30
31 --version
32 print version information and exit
33
34 --arguments
35 print expanded command line arguments
36
37 -q --quiet
38 quiet mode, print no warnings and errors
39
40 -v --verbose
41 verbose mode, print processing details
42
43 -d --debug
44 debug mode, print debug information
45
46 -ll --log-level [l]evel: string constant
47 (fatal, error, warn, info, debug, trace)
48 use level l for the logger
49
50 -lc --log-config [f]ilename: string
51 use config file f for the logger
52
53 +v --verbose-pc
54 show presentation contexts in verbose mode
55
56 input options
57 input file format:
58
59 +f --read-file
60 read file format or data set (default)
61
62 +fo --read-file-only
63 read file format only
64
65 -f --read-dataset
66 read data set without file meta information
67
68 input files:
69
70 +sd --scan-directories
71 scan directories for input files (dcmfile-in)
72
73 +sp --scan-pattern [p]attern: string (only with --scan-directories)
74 pattern for filename matching (wildcards)
75
76 # possibly not available on all systems
77
78 -r --no-recurse
79 do not recurse within directories (default)
80
81 +r --recurse
82 recurse within specified directories
83
84 -rn --no-rename
85 do not rename processed files (default)
86
87 +rn --rename
88 append .done/.bad to processed files
89
90 network options
91 application entity titles:
92
93 -aet --aetitle [a]etitle: string
94 set my calling AE title (default: STORESCU)
95
96 -aec --call [a]etitle: string
97 set called AE title of peer (default: ANY-SCP)
98
99 association negotiation profile from configuration file:
100
101 -xf --config-file [f]ilename, [p]rofile: string
102 use profile p from config file f
103
104 proposed transmission transfer syntaxes (not with --config-file):
105
106 -x= --propose-uncompr
107 propose all uncompressed TS, explicit VR
108 with local byte ordering first (default)
109
110 -xe --propose-little
111 propose all uncompressed TS, explicit VR little endian first
112
113 -xb --propose-big
114 propose all uncompressed TS, explicit VR big endian first
115
116 -xi --propose-implicit
117 propose implicit VR little endian TS only
118
119 -xs --propose-lossless
120 propose default JPEG lossless TS
121 and all uncompressed transfer syntaxes
122
123 -xy --propose-jpeg8
124 propose default JPEG lossy TS for 8 bit data
125 and all uncompressed transfer syntaxes
126
127 -xx --propose-jpeg12
128 propose default JPEG lossy TS for 12 bit data
129 and all uncompressed transfer syntaxes
130
131 -xv --propose-j2k-lossless
132 propose JPEG 2000 lossless TS
133 and all uncompressed transfer syntaxes
134
135 -xw --propose-j2k-lossy
136 propose JPEG 2000 lossy TS
137 and all uncompressed transfer syntaxes
138
139 -xt --propose-jls-lossless
140 propose JPEG-LS lossless TS
141 and all uncompressed transfer syntaxes
142
143 -xu --propose-jls-lossy
144 propose JPEG-LS lossy TS
145 and all uncompressed transfer syntaxes
146
147 -xm --propose-mpeg2
148 propose MPEG2 Main Profile @ Main Level TS only
149
150 -xh --propose-mpeg2-high
151 propose MPEG2 Main Profile @ High Level TS only
152
153 -xn --propose-mpeg4
154 propose MPEG4 AVC/H.264 High Profile / Level 4.1 TS only
155
156 -xl --propose-mpeg4-bd
157 propose MPEG4 AVC/H.264 BD-compatible HP / Level 4.1 TS only
158
159 -x2 --propose-mpeg4-2-2d
160 propose MPEG4 AVC/H.264 HP / Level 4.2 TS for 2D Videos only
161
162 -x3 --propose-mpeg4-2-3d
163 propose MPEG4 AVC/H.264 HP / Level 4.2 TS for 3D Videos only
164
165 -xo --propose-mpeg4-2-st
166 propose MPEG4 AVC/H.264 Stereo HP / Level 4.2 TS only
167
168 -x4 --propose-hevc
169 propose HEVC H.265 Main Profile / Level 5.1 TS only
170
171 -x5 --propose-hevc10
172 propose HEVC H.265 Main 10 Profile / Level 5.1 TS only
173
174 -xr --propose-rle
175 propose RLE lossless TS
176 and all uncompressed transfer syntaxes
177
178 -xd --propose-deflated
179 propose deflated explicit VR little endian TS
180 and all uncompressed transfer syntaxes
181
182 -R --required
183 propose only required presentation contexts
184 (default: propose all supported)
185
186 # This will also work with storage SOP classes that are
187 # supported by DCMTK but are not in the list of SOP classes
188 # proposed by default.
189
190 +C --combine
191 combine proposed transfer syntaxes
192 (default: separate presentation context for each TS)
193
194 post-1993 value representations:
195
196 +u --enable-new-vr
197 enable support for new VRs (UN/UT) (default)
198
199 -u --disable-new-vr
200 disable support for new VRs, convert to OB
201
202 deflate compression level (only with --propose-deflated or --config-file):
203
204 +cl --compression-level [l]evel: integer (default: 6)
205 0=uncompressed, 1=fastest, 9=best compression
206
207 user identity negotiation:
208
209 -usr --user [u]ser name: string
210 authenticate using user name u
211
212 -pwd --password [p]assword: string (only with --user)
213 authenticate using password p
214
215 -epw --empty-password
216 send empty password (only with --user)
217
218 -kt --kerberos [f]ilename: string
219 read kerberos ticket from file f
220
221 --saml [f]ilename: string
222 read SAML request from file f
223
224 --jwt [f]ilename: string
225 read JWT data from file f
226
227 -rsp --pos-response
228 expect positive response
229
230 other network options:
231
232 -to --timeout [s]econds: integer (default: unlimited)
233 timeout for connection requests
234
235 -ts --socket-timeout [s]econds: integer (default: 60)
236 timeout for network socket (0 for none)
237
238 -ta --acse-timeout [s]econds: integer (default: 30)
239 timeout for ACSE messages
240
241 -td --dimse-timeout [s]econds: integer (default: unlimited)
242 timeout for DIMSE messages
243
244 -pdu --max-pdu [n]umber of bytes: integer (4096..131072)
245 set max receive pdu to n bytes (default: 16384)
246
247 --max-send-pdu [n]umber of bytes: integer (4096..131072)
248 restrict max send pdu to n bytes
249
250 --repeat [n]umber: integer
251 repeat n times
252
253 --abort
254 abort association instead of releasing it
255
256 -nh --no-halt
257 do not halt if unsuccessful store encountered
258 (default: do halt)
259
260 -up --uid-padding
261 silently correct space-padded UIDs
262
263 +II --invent-instance
264 invent a new SOP instance UID for every image sent
265
266 +IR --invent-series [n]umber: integer (implies --invent-instance)
267 invent a new series UID after n images have been sent
268 (default: 100)
269
270 +IS --invent-study [n]umber: integer (implies --invent-instance)
271 invent a new study UID after n series have been sent
272 (default: 50)
273
274 +IP --invent-patient [n]umber: integer (implies --invent-instance)
275 invent a new patient ID and name after n studies have been sent
276 (default: 25)
277
278 transport layer security (TLS) options
279 transport protocol stack:
280
281 -tls --disable-tls
282 use normal TCP/IP connection (default)
283
284 +tls --enable-tls [p]rivate key file, [c]ertificate file: string
285 use authenticated secure TLS connection
286
287 +tla --anonymous-tls
288 use secure TLS connection without certificate
289
290 private key password (only with --enable-tls):
291
292 +ps --std-passwd
293 prompt user to type password on stdin (default)
294
295 +pw --use-passwd [p]assword: string
296 use specified password
297
298 -pw --null-passwd
299 use empty string as password
300
301 key and certificate file format:
302
303 -pem --pem-keys
304 read keys and certificates as PEM file (default)
305
306 -der --der-keys
307 read keys and certificates as DER file
308
309 certification authority:
310
311 +cf --add-cert-file [f]ilename: string
312 add certificate file to list of certificates
313
314 +cd --add-cert-dir [d]irectory: string
315 add certificates in d to list of certificates
316
317 security profile:
318
319 +px --profile-bcp195
320 BCP 195 TLS Profile (default)
321
322 +py --profile-bcp195-nd
323 Non-downgrading BCP 195 TLS Profile
324
325 +pz --profile-bcp195-ex
326 Extended BCP 195 TLS Profile
327
328 +pb --profile-basic
329 Basic TLS Secure Transport Connection Profile (retired)
330
331 +pa --profile-aes
332 AES TLS Secure Transport Connection Profile (retired)
333
334 +pn --profile-null
335 Authenticated unencrypted communication
336 (retired, was used in IHE ATNA)
337
338 ciphersuite:
339
340 +cc --list-ciphers
341 show list of supported TLS ciphersuites and exit
342
343 +cs --cipher [c]iphersuite name: string
344 add ciphersuite to list of negotiated suites
345
346 pseudo random generator:
347
348 +rs --seed [f]ilename: string
349 seed random generator with contents of f
350
351 +ws --write-seed
352 write back modified seed (only with --seed)
353
354 +wf --write-seed-file [f]ilename: string (only with --seed)
355 write modified seed to file f
356
357 peer authentication:
358
359 -rc --require-peer-cert
360 verify peer certificate, fail if absent (default)
361
362 -ic --ignore-peer-cert
363 don't verify peer certificate
364
366 Scanning Directories
367 Adding directories as a parameter to the command line only makes sense
368 if option --scan-directories is also given. If the files in the
369 provided directories should be selected according to a specific name
370 pattern (e.g. using wildcard matching), option --scan-pattern has to be
371 used. Please note that this file pattern only applies to the files
372 within the scanned directories, and, if any other patterns are
373 specified on the command line outside the --scan-pattern option (e.g.
374 in order to select further files), these do not apply to the specified
375 directories.
376
377 DICOM Conformance
378 The storescu application supports the following Storage SOP Classes as
379 an SCU:
380
381 ComputedRadiographyImageStorage 1.2.840.10008.5.1.4.1.1.1
382 DigitalXRayImageStorageForPresentation 1.2.840.10008.5.1.4.1.1.1.1
383 DigitalXRayImageStorageForProcessing 1.2.840.10008.5.1.4.1.1.1.1.1
384 DigitalMammographyXRayImageStorageForPresentation 1.2.840.10008.5.1.4.1.1.1.2
385 DigitalMammographyXRayImageStorageForProcessing 1.2.840.10008.5.1.4.1.1.1.2.1
386 DigitalIntraOralXRayImageStorageForPresentation 1.2.840.10008.5.1.4.1.1.1.3
387 DigitalIntraOralXRayImageStorageForProcessing 1.2.840.10008.5.1.4.1.1.1.3.1
388 CTImageStorage 1.2.840.10008.5.1.4.1.1.2
389 EnhancedCTImageStorage 1.2.840.10008.5.1.4.1.1.2.1
390 UltrasoundMultiframeImageStorage 1.2.840.10008.5.1.4.1.1.3.1
391 MRImageStorage 1.2.840.10008.5.1.4.1.1.4
392 EnhancedMRImageStorage 1.2.840.10008.5.1.4.1.1.4.1
393 MRSpectroscopyStorage 1.2.840.10008.5.1.4.1.1.4.2
394 UltrasoundImageStorage 1.2.840.10008.5.1.4.1.1.6.1
395 SecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7
396 MultiframeSingleBitSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.1
397 MultiframeGrayscaleByteSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.2
398 MultiframeGrayscaleWordSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.3
399 MultiframeTrueColorSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.4
400 TwelveLeadECGWaveformStorage 1.2.840.10008.5.1.4.1.1.9.1.1
401 GeneralECGWaveformStorage 1.2.840.10008.5.1.4.1.1.9.1.2
402 AmbulatoryECGWaveformStorage 1.2.840.10008.5.1.4.1.1.9.1.3
403 HemodynamicWaveformStorage 1.2.840.10008.5.1.4.1.1.9.2.1
404 CardiacElectrophysiologyWaveformStorage 1.2.840.10008.5.1.4.1.1.9.3.1
405 BasicVoiceAudioWaveformStorage 1.2.840.10008.5.1.4.1.1.9.4.1
406 GrayscaleSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.1
407 ColorSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.2
408 PseudoColorSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.3
409 BlendingSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.4
410 XRayAngiographicImageStorage 1.2.840.10008.5.1.4.1.1.12.1
411 EnhancedXAImageStorage 1.2.840.10008.5.1.4.1.1.12.1.1
412 XRayRadiofluoroscopicImageStorage 1.2.840.10008.5.1.4.1.1.12.2
413 EnhancedXRFImageStorage 1.2.840.10008.5.1.4.1.1.12.2.1
414 NuclearMedicineImageStorage 1.2.840.10008.5.1.4.1.1.20
415 RawDataStorage 1.2.840.10008.5.1.4.1.1.66
416 SpatialRegistrationStorage 1.2.840.10008.5.1.4.1.1.66.1
417 SpatialFiducialsStorage 1.2.840.10008.5.1.4.1.1.66.2
418 RealWorldValueMappingStorage 1.2.840.10008.5.1.4.1.1.67
419 VLEndoscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.1
420 VLMicroscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.2
421 VLSlideCoordinatesMicroscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.3
422 VLPhotographicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.4
423 OphthalmicPhotography8BitImageStorage 1.2.840.10008.5.1.4.1.1.77.1.5.1
424 OphthalmicPhotography16BitImageStorage 1.2.840.10008.5.1.4.1.1.77.1.5.2
425 StereometricRelationshipStorage 1.2.840.10008.5.1.4.1.1.77.1.5.3
426 OphthalmicTomographyImageStorage 1.2.840.10008.5.1.4.1.1.77.1.5.4
427 BasicTextSRStorage 1.2.840.10008.5.1.4.1.1.88.11
428 EnhancedSRStorage 1.2.840.10008.5.1.4.1.1.88.22
429 ComprehensiveSRStorage 1.2.840.10008.5.1.4.1.1.88.33
430 ProcedureLogStorage 1.2.840.10008.5.1.4.1.1.88.40
431 MammographyCADSRStorage 1.2.840.10008.5.1.4.1.1.88.50
432 KeyObjectSelectionDocumentStorage 1.2.840.10008.5.1.4.1.1.88.59
433 ChestCADSRStorage 1.2.840.10008.5.1.4.1.1.88.65
434 XRayRadiationDoseSRStorage 1.2.840.10008.5.1.4.1.1.88.67
435 ColonCADSRStorage 1.2.840.10008.5.1.4.1.1.88.69
436 EncapsulatedPDFStorage 1.2.840.10008.5.1.4.1.1.104.1
437 PositronEmissionTomographyImageStorage 1.2.840.10008.5.1.4.1.1.128
438 RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
439 RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
440 RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
441 RTBeamsTreatmentRecordStorage 1.2.840.10008.5.1.4.1.1.481.4
442 RTPlanStorage 1.2.840.10008.5.1.4.1.1.481.5
443 RTBrachyTreatmentRecordStorage 1.2.840.10008.5.1.4.1.1.481.6
444 RTTreatmentSummaryRecordStorage 1.2.840.10008.5.1.4.1.1.481.7
445
446 The default behavior of storescu is to propose two presentation
447 contexts for each supported SOP class (abstract syntax) - one with the
448 preferred transfer syntax and one with all other uncompressed transfer
449 syntaxes. The default preferred transfer syntax is explicit VR with
450 byte ordering corresponding to the local byte ordering of the machine
451 on which storescu is running. This behavior can be changed with the
452 --propose, --combine and --required options, see above. Depending on
453 these options, the following transfer syntaxes are supported:
454
455 LittleEndianImplicitTransferSyntax 1.2.840.10008.1.2
456 LittleEndianExplicitTransferSyntax 1.2.840.10008.1.2.1
457 DeflatedExplicitVRLittleEndianTransferSyntax 1.2.840.10008.1.2.1.99
458 BigEndianExplicitTransferSyntax 1.2.840.10008.1.2.2
459 JPEGProcess1TransferSyntax 1.2.840.10008.1.2.4.50
460 JPEGProcess2_4TransferSyntax 1.2.840.10008.1.2.4.51
461 JPEGProcess14SV1TransferSyntax 1.2.840.10008.1.2.4.70
462 JPEGLSLosslessTransferSyntax 1.2.840.10008.1.2.4.80
463 JPEGLSLossyTransferSyntax 1.2.840.10008.1.2.4.81
464 JPEG2000LosslessOnlyTransferSyntax 1.2.840.10008.1.2.4.90
465 JPEG2000TransferSyntax 1.2.840.10008.1.2.4.91
466 MPEG2MainProfileAtMainLevelTransferSyntax 1.2.840.10008.1.2.4.100
467 MPEG2MainProfileAtHighLevelTransferSyntax 1.2.840.10008.1.2.4.101
468 MPEG4HighProfileLevel4_1TransferSyntax 1.2.840.10008.1.2.4.102
469 MPEG4BDcompatibleHighProfileLevel4_1TransferSyntax 1.2.840.10008.1.2.4.103
470 MPEG4HighProfileLevel4_2_For2DVideoTransferSyntax 1.2.840.10008.1.2.4.104
471 MPEG4HighProfileLevel4_2_For3DVideoTransferSyntax 1.2.840.10008.1.2.4.105
472 MPEG4StereoHighProfileLevel4_2TransferSyntax 1.2.840.10008.1.2.4.106
473 HEVCMainProfileLevel5_1TransferSyntax 1.2.840.10008.1.2.4.107
474 HEVCMain10ProfileLevel5_1TransferSyntax 1.2.840.10008.1.2.4.108
475 RLELosslessTransferSyntax 1.2.840.10008.1.2.5
476
477 Additional Storage SOP Classes and Transfer Syntaxes can be used with
478 the so-called 'association negotiation profiles' (see below).
479
480 The storescu application does not support extended negotiation by
481 default. However, using an appropriate association negotiation profile
482 (see below) the optional support for extended negotiation can be added
483 to particular SOP classes.
484
485 Association Negotiation Profiles and Configuration Files
486 storescu supports a flexible mechanism for specifying the DICOM network
487 association negotiation behavior, based on so-called 'association
488 negotiation profiles' which may be read from a configuration file. The
489 format and semantics of this configuration file are documented in
490 asconfig.txt.
491
493 The level of logging output of the various command line tools and
494 underlying libraries can be specified by the user. By default, only
495 errors and warnings are written to the standard error stream. Using
496 option --verbose also informational messages like processing details
497 are reported. Option --debug can be used to get more details on the
498 internal activity, e.g. for debugging purposes. Other logging levels
499 can be selected using option --log-level. In --quiet mode only fatal
500 errors are reported. In such very severe error events, the application
501 will usually terminate. For more details on the different logging
502 levels, see documentation of module 'oflog'.
503
504 In case the logging output should be written to file (optionally with
505 logfile rotation), to syslog (Unix) or the event log (Windows) option
506 --log-config can be used. This configuration file also allows for
507 directing only certain messages to a particular output stream and for
508 filtering certain messages based on the module or application where
509 they are generated. An example configuration file is provided in
510 <etcdir>/logger.cfg.
511
513 All command line tools use the following notation for parameters:
514 square brackets enclose optional values (0-1), three trailing dots
515 indicate that multiple values are allowed (1-n), a combination of both
516 means 0 to n values.
517
518 Command line options are distinguished from parameters by a leading '+'
519 or '-' sign, respectively. Usually, order and position of command line
520 options are arbitrary (i.e. they can appear anywhere). However, if
521 options are mutually exclusive the rightmost appearance is used. This
522 behavior conforms to the standard evaluation rules of common Unix
523 shells.
524
525 In addition, one or more command files can be specified using an '@'
526 sign as a prefix to the filename (e.g. @command.txt). Such a command
527 argument is replaced by the content of the corresponding text file
528 (multiple whitespaces are treated as a single separator unless they
529 appear between two quotation marks) prior to any further evaluation.
530 Please note that a command file cannot contain another command file.
531 This simple but effective approach allows one to summarize common
532 combinations of options/parameters and avoids longish and confusing
533 command lines (an example is provided in file <datadir>/dumppat.txt).
534
536 The storescu utility will attempt to load DICOM data dictionaries
537 specified in the DCMDICTPATH environment variable. By default, i.e. if
538 the DCMDICTPATH environment variable is not set, the file
539 <datadir>/dicom.dic will be loaded unless the dictionary is built into
540 the application (default for Windows).
541
542 The default behavior should be preferred and the DCMDICTPATH
543 environment variable only used when alternative data dictionaries are
544 required. The DCMDICTPATH environment variable has the same format as
545 the Unix shell PATH variable in that a colon (':') separates entries.
546 On Windows systems, a semicolon (';') is used as a separator. The data
547 dictionary code will attempt to load each file specified in the
548 DCMDICTPATH environment variable. It is an error if no data dictionary
549 can be loaded.
550
552 <docdir>/asconfig.txt - configuration file documentation
553 <etcdir>/storescu.cfg - example association negotiation profile
554
556 storescp(1)
557
559 Copyright (C) 1996-2021 e.V., Escherweg 2, 26121 Oldenburg, Germany.
560
561
562
563Version 3.6.6 Thu Jan 14 2021 storescu(1)