# HG changeset patch # User Sebastien Jodogne # Date 1586260497 -7200 # Node ID abd3a1d114c0e9ee3a052ef213fa03ed860e3b94 # Parent 890af7156f1977ef44cad708bd103731827b6ed2 transcoding to 1.2.840.10008.1.2.4.51 diff -r 890af7156f19 -r abd3a1d114c0 UnitTestsSources/FromDcmtkTests.cpp --- a/UnitTestsSources/FromDcmtkTests.cpp Tue Apr 07 08:40:30 2020 +0200 +++ b/UnitTestsSources/FromDcmtkTests.cpp Tue Apr 07 13:54:57 2020 +0200 @@ -2133,10 +2133,18 @@ } else if (syntaxes.find(DicomTransferSyntax_JPEGProcess1) != syntaxes.end() && allowNewSopInstanceUid && + GetBitsStored() == 8 && FromDcmtkBridge::Transcode(target, *dicom_, DicomTransferSyntax_JPEGProcess1, &rpLossy)) { return true; } + else if (syntaxes.find(DicomTransferSyntax_JPEGProcess2_4) != syntaxes.end() && + allowNewSopInstanceUid && + GetBitsStored() <= 12 && + FromDcmtkBridge::Transcode(target, *dicom_, DicomTransferSyntax_JPEGProcess2_4, &rpLossy)) + { + return true; + } else { return false; @@ -2234,8 +2242,8 @@ Orthanc::DcmtkTranscoder transcoder(s.c_str(), s.size()); - if (transcoder.GetBitsStored() != 8) // TODO - return; + /*if (transcoder.GetBitsStored() != 8) // TODO + return; */ { char buf[1024]; @@ -2272,10 +2280,11 @@ { std::set syntaxes; - syntaxes.insert(DicomTransferSyntax_JPEGProcess1); + syntaxes.insert(DicomTransferSyntax_JPEGProcess2_4); + //syntaxes.insert(DicomTransferSyntax_LittleEndianExplicit); std::string t; - bool ok = transcoder.Transcode(t, syntaxes, false); + bool ok = transcoder.Transcode(t, syntaxes, true); printf("Transcoding: %d\n", ok); if (ok) @@ -2337,7 +2346,7 @@ SystemToolbox::WriteFile(t, "target.dcm"); } - if (0) + if (1) { const char* const PATH = "/home/jodogne/Subversion/orthanc-tests/Database/TransferSyntaxes"; @@ -2357,7 +2366,7 @@ TestFile("/home/jodogne/Subversion/orthanc-tests/Database/Issue44/Monochrome1-Jpeg.dcm"); } - if (1) + if (0) { TestFile("/home/jodogne/Subversion/orthanc-tests/Database/TransferSyntaxes/1.2.840.10008.1.2.1.dcm"); }