@@ -673,22 +673,24 @@ void Transcoder::fillProcessStat(ProcessStat& processStat)
673
673
// uint8_t picture_type = coded_frame[4];
674
674
uint8_t error_count = coded_frame[5 ];
675
675
676
- uint64_t errors[error_count] ;
676
+ std::vector< uint64_t > errors;
677
677
for (int i = 0 ; i < error_count; ++i)
678
678
{
679
679
int index = 6 + i;
680
- errors[i] = (uint64_t ) coded_frame[index + 7 ] << 56 |
681
- (uint64_t ) coded_frame[index + 6 ] << 48 |
682
- (uint64_t ) coded_frame[index + 5 ] << 40 |
683
- (uint64_t ) coded_frame[index + 4 ] << 32 |
684
- (uint64_t ) coded_frame[index + 3 ] << 24 |
685
- (uint64_t ) coded_frame[2 ] << 16 |
686
- (uint64_t ) coded_frame[1 ] << 8 |
687
- (uint64_t ) coded_frame[0 ];
680
+ errors.push_back (
681
+ (uint64_t ) coded_frame[index + 7 ] << 56 |
682
+ (uint64_t ) coded_frame[index + 6 ] << 48 |
683
+ (uint64_t ) coded_frame[index + 5 ] << 40 |
684
+ (uint64_t ) coded_frame[index + 4 ] << 32 |
685
+ (uint64_t ) coded_frame[index + 3 ] << 24 |
686
+ (uint64_t ) coded_frame[2 ] << 16 |
687
+ (uint64_t ) coded_frame[1 ] << 8 |
688
+ (uint64_t ) coded_frame[0 ]
689
+ );
688
690
}
689
691
690
692
videoStat.setQuality (quality);
691
- videoStat.setPSNR ((double ) errors[ 0 ] /
693
+ videoStat.setPSNR ((double ) errors. at ( 0 ) /
692
694
(encoderContext.width * encoderContext.height * 255.0 * 255.0 ));
693
695
}
694
696
}
0 commit comments