annotate Sphinx/source/faq/transcoding.rst @ 416:5f6718e29fa5

note
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 18 May 2020 16:06:47 +0200
parents 83f36bc9e725
children 24b1c64002b8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
275
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 .. _transcoding:
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
2
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3 Transcoding of DICOM files
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4 ==========================
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5
411
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
6 .. contents::
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
7
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
8
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
9 Work-in-progress
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
10 ----------------
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
11
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
12 Forthcoming Orthanc 1.7.0 will feature transcoding. The information in
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
13 the sections below will thus soon become invalid!
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
14
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
15 To be documented for Orthanc 1.7.0:
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
16
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
17 * Explanation of DICOM protocol (transparent transcoding from
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
18 compressed transfer syntaxes to uncompressed transfer syntaxes).
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
19
414
83f36bc9e725 gdcm plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 411
diff changeset
20 * ``TranscodeDicomProtocol`` global configuration option
411
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
21
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
22 * ``AllowTranscoding`` in ``DicomModalities`` configuration option
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
23
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
24 * ``/instances/.../modify`` route: ``Transcode`` option
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
25
416
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
26 * ``IngestTranscoding``
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
27
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
28 * ``BuiltinDecoderTranscoderOrder``
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
29
414
83f36bc9e725 gdcm plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 411
diff changeset
30 * Routes to create archives: ``Transcode`` option
83f36bc9e725 gdcm plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 411
diff changeset
31
411
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 392
diff changeset
32
275
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
33 General information
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34 -------------------
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
35
392
0fb9369e893e Orthanc 1.6.1
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 360
diff changeset
36 As of release 1.6.1, Orthanc does not feature support for transcoding
275
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
37 DICOM instances yet. In other words, the Orthanc core never changes
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38 the :ref:`transfer syntax <dicom-pixel-data>` of some DICOM instance
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
39 when it has to send it to another modality using the DICOM protocol.
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
40
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
41 Adding support for transcoding is one of the features that is pending
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
42 on `our roadmap
360
d217af5e6cb3 links to hg
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 336
diff changeset
43 <https://hg.orthanc-server.com/orthanc/file/default/TODO>`__, and for which
275
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
44 we are looking for industrial sponsors.
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
45
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
46
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
47 Motivation for transcoding
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
48 --------------------------
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
49
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
50 Let's consider the following basic workflow, in which some imaging
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
51 workstation must access a medical image that originates from a PACS
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
52 and that is served through an Orthanc proxy:
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
53
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
54 .. image:: ../images/Transcoding1.svg
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
55 :align: center
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
56 :width: 700px
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
57
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
58 This is quite a common situation, e.g. in university hospitals where
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
59 researchers must access medical images without having authorization to
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
60 log in the clinical PACS. It is also common if the main PACS restricts
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
61 the number of workstations that can directly be connected to it, or if
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
62 Orthanc acts as gateway through Internet.
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
63
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
64 The problem is that the software running on workstations might not be
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
65 able to display some DICOM transfer syntaxes. This is especially true
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
66 in research software, that is often limited to uncompressed transfer
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
67 syntaxes. For instance, let's consider the following scenario where a
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
68 workstation wants to access an image from the PACS:
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
69
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
70 .. image:: ../images/Transcoding2.svg
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
71 :align: center
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
72 :width: 700px
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
73
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
74 A typical PACS system will decide, when requested to export an image
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
75 using DICOM C-Store, to compress the image in order to reduce the
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
76 network bandwidth and the storage requirements. Orthanc is fine with
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
77 it: As a vendor neutral archive, Orthanc can basically
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
78 receive/store/transmit any DICOM transfer syntax. Unfortunately, this
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
79 might not be the case of the target workstation, that is often limited
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
80 to some selected transfer syntaxes. As a consequence, the workstation
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
81 will complain about not being to read the DICOM file (in the situation
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
82 depicted above, because the PACS has decided to send the DICOM image
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
83 using the JPEG2k transfer syntax).
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
84
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
85
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
86 Solutions
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
87 ---------
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
88
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
89 There are basically 4 solutions to this issue. The first one, as
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
90 stated above, would be to **implement transcoding in Orthanc**. Feel
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
91 free to `get in touch with us
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
92 <https://www.orthanc-server.com/orthanc-pro.php>`__ if you want to
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
93 sponsor this development.
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
94
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
95 The second solution consists in making Orthanc **refuse to accept the
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
96 transfer syntaxes** that are not supported by the workstation. This
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
97 is depicted in the following diagram:
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
98
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
99 .. image:: ../images/Transcoding3.svg
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
100 :align: center
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
101 :width: 700px
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
102
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
103 .. highlight:: json
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
104
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
105 If Orthanc tells the PACS that is doesn't accept, say, DICOM JPEG2k,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
106 the source PACS will be aware of this, and will transcode the DICOM
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
107 file before it is sent to Orthanc. This is the role of the following
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
108 :ref:`configuration options <configuration>` that specifies which
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
109 transfer syntaxes are accepted by Orthanc::
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
110
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
111 {
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
112 "DeflatedTransferSyntaxAccepted" : true,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
113 "JpegTransferSyntaxAccepted" : true,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
114 "Jpeg2000TransferSyntaxAccepted" : true,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
115 "JpegLosslessTransferSyntaxAccepted" : true,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
116 "JpipTransferSyntaxAccepted" : true,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
117 "Mpeg2TransferSyntaxAccepted" : true,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
118 "RleTransferSyntaxAccepted" : true,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
119 "UnknownSopClassAccepted" : false
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
120 }
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
121
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
122 If all of those options are set to ``false``, Orthanc will only
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
123 receive uncompressed transfer syntaxes (obviously provided that the
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
124 source PACS supports DICOM transcoding).
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
125
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
126 The third solution consists in **applying an external conversion
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
127 tool** to every DICOM image that is received by Orthanc. The standard
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
128 command-line tools ``gdcmconv`` from `GDCM
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
129 <http://gdcm.sourceforge.net/html/gdcmconv.html>`__ or ``dcmconv``
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
130 from `DCMTK <https://support.dcmtk.org/docs/dcmconv.html>`__ can be
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
131 used to change the transfer syntax of a given DICOM file. These tools
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
132 can be invoked from a :ref:`Lua script <lua>` (check out
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
133 ``OnStoredInstance()`` callback) or from an :ref:`Orthanc plugin
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
134 <creating-plugins>` (check out
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
135 ``OrthancPluginRegisterOnStoredInstanceCallback()`` function). A
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
136 sample Lua script that converts every incoming DICOM file to the
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
137 JPEG2k transfer syntax is `part of the Orthanc sources
360
d217af5e6cb3 links to hg
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 336
diff changeset
138 <https://hg.orthanc-server.com/orthanc/file/default/Resources/Samples/Lua/AutomatedJpeg2kCompression.lua>`__.
275
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
139
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
140
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
141 Finally, as a fourth solution, it is possible to **combine two Orthanc
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
142 servers**, the first one being configured to accept any transfer
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
143 syntax, and the second one being responsible to serve the DICOM files
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
144 after conversion to uncompressed transfer syntax (which should be
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
145 compatible with any workstation):
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
146
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
147 .. image:: ../images/Transcoding4.svg
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
148 :align: center
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
149 :width: 700px
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
150
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
151 In this solution, a plugin or an external script continuously monitors
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
152 the content of the first Orthanc server thanks to its :ref:`REST API
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
153 <rest>`. Whenever a DICOM instance is received by the first Orthanc,
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
154 the plugin/script uses external conversion tools to convert the
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
155 instance to an uncompressed transfer syntax, then forward it to a
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
156 second Orthanc server. In other words, the first Orthanc server acts
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
157 as a transient buffer for decompression. Contrarily to the third
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
158 solution, this solution has the advantage of better scalability (as
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
159 decompression implemented in a Lua callback blocks Orthanc as long as
2946fcd2e7fa transcoding
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
160 the Lua script has not returned).