Search found 1481 matches

by Marco Eichelberg
Mon, 2024-08-26, 15:50
Forum: DCMTK - General
Topic: Error while converting Video to DCM
Replies: 4
Views: 643

Re: Error while converting Video to DCM

I don't know how to pad a bitstream to even size for MPEG data. JPEG uses a marker format where the last two bytes of the bitstream are normally FF D9. However, the marker can also be written as FF FF D9, and this is used to pad a JPEG bitstream to even length. MPEG4 in DICOM is not a tag, but a tr...
by Marco Eichelberg
Mon, 2024-08-26, 15:41
Forum: DCMTK - General
Topic: Exception While Decompress the JPEG-LS Dicom file
Replies: 4
Views: 831

Re: Exception While Decompress the JPEG-LS Dicom file

I cannot see anything obviously wrong in your code. If the code works with DCMTK 3.6.8 but crashes with 3.6.4, then a bug fix in DCMTK is probably the cause of the difference in behavior. If you cannot migrate to DCMTK 3.6.8, then you will have to check each commit that affected the dcmjpls module t...
by Marco Eichelberg
Tue, 2024-08-13, 16:40
Forum: DCMTK - General
Topic: Error while converting Video to DCM
Replies: 4
Views: 643

Re: Error while converting Video to DCM

Unfortunately, DCMTK functions often return EC_IllegalCall whenever the developer of the class was too lazy to produce a more meaningful error message. So this could be all kind of things. The most probable reason is that your temp file has an odd number of bytes (i.e. length & 1 != 0 ). In DICO...
by Marco Eichelberg
Sat, 2024-07-27, 16:42
Forum: DCMTK - General
Topic: Optional module activation criteria
Replies: 2
Views: 1180

Re: Optional module activation criteria

It is correct that an optional module is considered present when any attribute is present that is exclusive to that module. So yes, NumberOfFrames (0028,0008) is type 1 in both the Multi-Frame module (which is mandatory for this SOP class) or the Multi-frame Functional Groups module (which is option...
by Marco Eichelberg
Sat, 2024-07-27, 16:29
Forum: DCMTK - General
Topic: I'm seeing link errors with items missing from DCMTK libraries
Replies: 6
Views: 1195

Re: I'm seeing link errors with items missing from DCMTK libraries

See the dependency graph at https://support.dcmtk.org/redmine/projects/dcmtk/wiki/Modules This represents DCMTK 3.6.4 (i.e. we should update it for 3.6.8 ), but it is still mostly correct. What is missing there is oficonv, which should be at the bottom between config and ofstd. That module was only ...
by Marco Eichelberg
Fri, 2024-07-26, 13:33
Forum: DCMTK - General
Topic: What replaces removed/renamed items from v3.5.4
Replies: 38
Views: 4377

Re: What replaces removed/renamed items from v3.5.4

OFBitmanipTemplate still exists, see ofstd/include/dcmtk/ofstd/ofbmanip.h.
There never was DIMSE_DATASET_NONE, as far as I know. It is called DIMSE_DATASET_NULL and still exists.
by Marco Eichelberg
Fri, 2024-07-26, 13:27
Forum: DCMTK - General
Topic: I'm seeing link errors with items missing from DCMTK libraries
Replies: 6
Views: 1195

Re: I'm seeing link errors with items missing from DCMTK libraries

The INSTALL file does not document library dependencies at all. If you port from a library version published in 2005 to one published in 2023, it should not be too surprising that some things have changed since then :wink:
by Marco Eichelberg
Fri, 2024-07-26, 13:24
Forum: DCMTK - General
Topic: INCLUDE_CCTYPE not supported error
Replies: 2
Views: 950

Re: INCLUDE_CCTYPE not supported error

We have removed some compatibility code for ancient C++ compilers that did not support the C++98 standard. This has standard now been available for 25 years, so it is probably safe to exclude compilers that do not support <cctype> and require <ctype.h> instead.
by Marco Eichelberg
Tue, 2024-07-16, 17:39
Forum: DCMJP2K
Topic: How to do Per frame jpeg2000 encoding?
Replies: 3
Views: 2324

Re: How to do Per frame jpeg2000 encoding?

In this case I completely misunderstood your initial post, sorry. In order to convert DICOM images to JPEG 2000 files, you should use class DicomImage, which also allows you to perform those pre-processing steps that DICOM requires but that are not possible in JPEG 2000. Look at the implementation o...
by Marco Eichelberg
Tue, 2024-07-16, 17:35
Forum: DCMTK - Installation
Topic: Self built OpenSSL version 3.0.8 names
Replies: 21
Views: 4220

Re: Self built OpenSSL version 3.0.8 names

We use a CMake script that modifies the makefile after OpenSSL's Perl configure script has generated it. Here are the relevant parts: file(READ "makefile" MAKEFILE) if(DEBUG) string(REGEX REPLACE "lib(crypto|ssl)([^ \n\t\r]*\\.)(dll|lib|def|pdb)" "dcmtk\\1_d\\2\\3" MAKE...
by Marco Eichelberg
Tue, 2024-07-02, 16:51
Forum: DCMJP2K
Topic: How to do Per frame jpeg2000 encoding?
Replies: 3
Views: 2324

Re: How to do Per frame jpeg2000 encoding?

We are actually talking about JPEG 2000 decoding here, which is good, because per-frame encoding is not supported in DCMTK, while per-frame decoding is. Loading the file with DcmFileFormat::loadFile() is a "lazy" operation that will leave the compressed pixel data in the file until it is a...
by Marco Eichelberg
Sat, 2024-06-29, 18:19
Forum: DCMTK - Installation
Topic: Self built OpenSSL version 3.0.8 names
Replies: 21
Views: 4220

Re: Self built OpenSSL version 3.0.8 names

When building the OpenSSL library, the library files will be named "libcrypto" and "libssl". We rename these in
our support library build to avoid the situation where a different application installs these DLLs in an
incompatible version and our binaries then load the wrong DLL.
by Marco Eichelberg
Sat, 2024-06-29, 18:12
Forum: DCMTK - Installation
Topic: Self built OpenSSL version 3.0.8 names
Replies: 21
Views: 4220

Re: Self built OpenSSL version 3.0.8 names

I cannot say what "nmake install" will do. We never use that, but manually copy the files needed by DCMTK into the directory structure that you find in our pre-compiled libraries (actually, nowadays there is a build script for that, but I used to do it manually for years. It's not that dif...
by Marco Eichelberg
Sat, 2024-06-29, 18:08
Forum: DCMTK - Installation
Topic: Changing version of OpenSSL for an already configured build system
Replies: 9
Views: 1659

Re: Changing version of OpenSSL for an already configured build system

The header and library files should be sufficient for DCMTK's configure tests. Make sure to create a new build directory since DCMTK will not notice that some header files have changed and some configure tests now may have different outcome. This has been tested and works with DCMTK 3.6.8 and OpenSS...
by Marco Eichelberg
Tue, 2024-06-25, 13:54
Forum: DCMTK - Installation
Topic: Warning after switching to use environment variables
Replies: 7
Views: 1695

Re: Warning after switching to use environment variables

To my knowlege, setting set(CMAKE_SUPPRESS_REGENERATION true) should suppress the generation of the ZERO_CHECK target, which might be preferrable over manually tinkering with the list of build targets in the solution file.