diff --git a/Code/IO/otbJPEG2000ImageIO.cxx b/Code/IO/otbJPEG2000ImageIO.cxx index dcff11b104aec22c45f516a0d1744f157b56185a..d3d87c785ddd766c892c1e03ecfe977eb2bcc40f 100644 --- a/Code/IO/otbJPEG2000ImageIO.cxx +++ b/Code/IO/otbJPEG2000ImageIO.cxx @@ -388,6 +388,7 @@ boost::shared_ptr<opj_image_t> JPEG2000InternalReader::DecodeTile(unsigned int t // Setting default parameters opj_dparameters_t parameters; otbopenjpeg_opj_set_default_decoder_parameters(¶meters); + parameters.cp_reduce = static_cast<int>(this->m_ResolutionFactor); // Set default event mgr opj_event_mgr_t eventManager; @@ -415,13 +416,6 @@ boost::shared_ptr<opj_image_t> JPEG2000InternalReader::DecodeTile(unsigned int t boost::shared_ptr<opj_image_t> image = boost::shared_ptr<opj_image_t>(unsafeOpjImgPtr,OpjImageDestroy); - if(!otbopenjpeg_opj_set_decoded_resolution_factor(codec.get(),static_cast<int>(this->m_ResolutionFactor))) - { - this->Clean(); - return boost::shared_ptr<opj_image_t>(); - } - - if( otbopenjpeg_opj_get_decoded_tile(codec.get(), stream.get(), image.get(), tileIndex)) { otbMsgDevMacro(<<"Tile "<<tileIndex<<" read from file"); @@ -464,6 +458,7 @@ int JPEG2000InternalReader::Initialize() // Setting default parameters opj_dparameters_t parameters; otbopenjpeg_opj_set_default_decoder_parameters(¶meters); + parameters.cp_reduce = static_cast<int>(this->m_ResolutionFactor); // Set default event mgr opj_event_mgr_t eventManager;