@@ -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
}