diff --git a/source/App/DecoderApp/DecApp.cpp b/source/App/DecoderApp/DecApp.cpp
index 79be9930cf9bec81e11caa4395df4c58b6691b2c..4ee4e10ba7f615236e5c5591a3bf02dd0c8d8795 100644
--- a/source/App/DecoderApp/DecApp.cpp
+++ b/source/App/DecoderApp/DecApp.cpp
@@ -1074,9 +1074,11 @@ void DecApp::xWriteOutput( PicList* pcListPic, uint32_t tId )
                                                          NUM_CHROMA_FORMAT, m_bClipOutputVideoToRec709Range );
 #endif
 #if NNVC_USE_REC_AFTER_UPSAMPLING
-            m_cVideoIOYuvReconAfterUpsamplingFile[pcPic->layerId].writeUpscaledPicture( *sps, *pcPic->cs->pps, pcPic->getRecoBuf(), m_outputColourSpaceConvert, 
-            m_packedYUVMode, m_upscaledOutput, NUM_CHROMA_FORMAT, m_bClipOutputVideoToRec709Range
-            );
+            m_cVideoIOYuvReconAfterUpsamplingFile[pcPic->layerId].writeUpscaledPicture(
+              *sps, *pcPic->cs->pps, pcPic->getRecoBuf(), m_outputColourSpaceConvert, m_packedYUVMode,
+              pcPic->cs->slice->getSliceQp(), pcPic->cs->pps->getPicInitQPMinus26() + 26,
+              pcPic->getNNInputSr(*sps, *pcPic->cs->pps), "default_rpr", m_upscaledOutput,
+              NUM_CHROMA_FORMAT, m_bClipOutputVideoToRec709Range);
 #endif
 #if NNVC_USE_REC_AFTER_DBF
           m_cVideoIOYuvReconAfterDbfFile[pcPic->layerId].write(
@@ -1411,9 +1413,11 @@ void DecApp::xFlushOutput( PicList* pcListPic, const int layerId )
             NUM_CHROMA_FORMAT, m_bClipOutputVideoToRec709Range );
 #endif
 #if NNVC_USE_REC_AFTER_UPSAMPLING
-            m_cVideoIOYuvReconAfterUpsamplingFile[pcPic->layerId].writeUpscaledPicture( *sps, *pcPic->cs->pps, pcPic->getRecoBuf(), m_outputColourSpaceConvert, 
-            m_packedYUVMode, m_upscaledOutput, NUM_CHROMA_FORMAT, m_bClipOutputVideoToRec709Range 
-            );
+            m_cVideoIOYuvReconAfterUpsamplingFile[pcPic->layerId].writeUpscaledPicture(
+              *sps, *pcPic->cs->pps, pcPic->getRecoBuf(), m_outputColourSpaceConvert, m_packedYUVMode,
+              pcPic->cs->slice->getSliceQp(), pcPic->cs->pps->getPicInitQPMinus26() + 26,
+              pcPic->getNNInputSr(*sps, *pcPic->cs->pps), "default_rpr", m_upscaledOutput,
+              NUM_CHROMA_FORMAT, m_bClipOutputVideoToRec709Range);
 #endif
 #if NNVC_USE_REC_BEFORE_DBF
             m_cVideoIOYuvReconBeforeDbfFile[pcPic->layerId].write(
diff --git a/source/App/EncoderApp/EncAppCfg.cpp b/source/App/EncoderApp/EncAppCfg.cpp
index 3cc0ae54e6a885c4f2b4fbd34d5afb7278e26da6..aeeb622f84e5d29f912e409996886a64473bf6d8 100644
--- a/source/App/EncoderApp/EncAppCfg.cpp
+++ b/source/App/EncoderApp/EncAppCfg.cpp
@@ -1934,6 +1934,7 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] )
 #if JVET_AH0099_RPR
   if (m_nnsrOption)
   {
+#if !SR_DATA_DUMP
     if (!(m_iSourceWidth >= NNSR_ENABLING_WIDTH && m_iSourceHeight >= NNSR_ENABLING_HEIGHT))
     {
       m_nnsrOption = false;
@@ -1944,6 +1945,7 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] )
       m_scalingRatioVer2 = 1.0;
 #endif
     }
+#endif
 #if !JVET_AI0074_MULTIRATIO_RPR_NNSR
     CHECK(m_nnsrOption && m_nnModel[NnModel::SUPER_RESOLUTION] != "default_rpr" && (m_scalingRatioHor != 2.0 || m_scalingRatioVer != 2.0), "NNSR does not support this specified scaling ratio.");
 #endif
diff --git a/source/Lib/CommonLib/Picture.h b/source/Lib/CommonLib/Picture.h
index 3e9105dd361df81db801c3b31f900384f134df63..c1d43cedf6a2f7a67604cb9c53c434a28c338c46 100644
--- a/source/Lib/CommonLib/Picture.h
+++ b/source/Lib/CommonLib/Picture.h
@@ -50,7 +50,7 @@
 #include "MCTS.h"
 #include <deque>
 
-#if JVET_AG0130_UNIFIED_SR
+#if JVET_AG0130_UNIFIED_SR || JVET_AI0074_MULTIRATIO_RPR_NNSR
 #include "NNSRUnified.h"
 #endif