diff --git a/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process.cpp b/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process.cpp index 00a12dfa6c2f0c9c8ff1715e8be51549074fd510..1a512ee08ee14747b96bec7565d3664b4ff80270 100644 --- a/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process.cpp +++ b/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process.cpp @@ -75,7 +75,7 @@ void ScaleConvertProcess::ReleaseProcessNode() int ScaleConvertProcess::ProcessData(std::vector>& inputBuffers) { - inputBuffers[0]->frameInfo_.timePonit.startScale = GetNowTimeStampUs(); + int64_t startScaleTime = GetNowTimeStampUs(); DHLOGD("Process data in ScaleConvertProcess."); if (!isScaleConvert_.load()) { DHLOGE("Scale Convert node occurred error or start release."); @@ -86,6 +86,7 @@ int ScaleConvertProcess::ProcessData(std::vector>& i DHLOGE("The input data buffers is empty."); return DCAMERA_BAD_VALUE; } + inputBuffers[0]->frameInfo_.timePonit.startScale = startScaleTime; if (!IsConvertible(sourceConfig_, processedConfig_)) { DHLOGD("The target resolution: %dx%d format: %d is the same as the source resolution: %dx%d format: %d", @@ -374,12 +375,13 @@ int32_t ScaleConvertProcess::ConvertFormatToRGBA(ImageUnitInfo& srcImgInfo, Imag int32_t ScaleConvertProcess::ConvertDone(std::vector>& outputBuffers) { - outputBuffers[0]->frameInfo_.timePonit.finishScale = GetNowTimeStampUs(); + int64_t startConvertDone = GetNowTimeStampUs(); DHLOGD("ScaleConvertProcess : Convert Done."); if (outputBuffers.empty()) { DHLOGE("The received data buffer is empty."); return DCAMERA_BAD_VALUE; } + outputBuffers[0]->frameInfo_.timePonit.finishScale = startConvertDone; if (nextDataProcess_ != nullptr) { DHLOGD("Send to the next node of the scale convert for processing."); diff --git a/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process_common.cpp b/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process_common.cpp index 418219466621adc89879e5c05dc48c6bb869e2eb..23adc3c9d4872dc5868b921daa7e7c14515108ed 100644 --- a/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process_common.cpp +++ b/services/data_process/src/pipeline_node/scale_conversion/scale_convert_process_common.cpp @@ -106,7 +106,7 @@ void ScaleConvertProcess::ReleaseProcessNode() int ScaleConvertProcess::ProcessData(std::vector>& inputBuffers) { - inputBuffers[0]->frameInfo_.timePonit.startScale = GetNowTimeStampUs(); + int64_t startScaleTime = GetNowTimeStampUs(); DHLOGD("Process data in ScaleConvertProcess."); if (!isScaleConvert_.load()) { DHLOGE("Scale Convert node occurred error or start release."); @@ -117,6 +117,7 @@ int ScaleConvertProcess::ProcessData(std::vector>& i DHLOGE("The input data buffers is empty."); return DCAMERA_BAD_VALUE; } + inputBuffers[0]->frameInfo_.timePonit.startScale = startScaleTime; if (!IsConvertible(sourceConfig_, processedConfig_)) { DHLOGD("The target resolution: %dx%d format: %d is the same as the source resolution: %dx%d format: %d", @@ -362,12 +363,13 @@ int32_t ScaleConvertProcess::CopyNV21SrcData(const ImageUnitInfo& srcImgInfo) int32_t ScaleConvertProcess::ConvertDone(std::vector>& outputBuffers) { - outputBuffers[0]->frameInfo_.timePonit.finishScale = GetNowTimeStampUs(); + int64_t startConvertDone = GetNowTimeStampUs(); DHLOGD("ScaleConvertProcess : Convert Done."); if (outputBuffers.empty()) { DHLOGE("The received data buffer is empty."); return DCAMERA_BAD_VALUE; } + outputBuffers[0]->frameInfo_.timePonit.finishScale = startConvertDone; if (nextDataProcess_ != nullptr) { DHLOGD("Send to the next node of the scale convert for processing.");