@@ -347,36 +347,40 @@ int vmaf_feature_collector_append(VmafFeatureCollector *feature_collector,
347
347
348
348
VmafCallbackItem * metadata_iter = feature_collector -> metadata ?
349
349
feature_collector -> metadata -> head : NULL ;
350
- while (metadata_iter )
351
- {
352
- VmafPredictModel * model_iter = feature_collector -> models ;
353
- while (model_iter )
354
- {
355
- VmafModel * model = model_iter -> model ;
356
- pthread_mutex_unlock (& (feature_collector -> lock ));
357
- res = vmaf_feature_collector_get_score (feature_collector , model -> name ,
358
- & score , picture_index );
359
- pthread_mutex_lock (& (feature_collector -> lock ));
360
- if (!res ) {
361
- model_iter = model_iter -> next ;
362
- continue ;
363
- }
364
- pthread_mutex_unlock (& (feature_collector -> lock ));
365
- res = vmaf_predict_score_at_index (model , feature_collector , picture_index ,
366
- & score , true, true, 0 );
367
- pthread_mutex_lock (& (feature_collector -> lock ));
368
- if (res ) goto unlock ;
369
-
370
- VmafMetadata data = {
371
- .feature_name = model -> name ,
350
+ while (metadata_iter ) {
351
+ VmafPredictModel * model_iter = feature_collector -> models ;
352
+ while (model_iter ) {
353
+ VmafModel * model = model_iter -> model ;
354
+
355
+ pthread_mutex_unlock (& (feature_collector -> lock ));
356
+ res = vmaf_feature_collector_get_score (feature_collector ,
357
+ metadata_iter -> metadata_cfg .feature_name ,
358
+ & score , picture_index );
359
+ pthread_mutex_lock (& (feature_collector -> lock ));
360
+
361
+ if (!res ) {
362
+ model_iter = model_iter -> next ;
363
+ continue ;
364
+ }
365
+
366
+ pthread_mutex_unlock (& (feature_collector -> lock ));
367
+ res = vmaf_predict_score_at_index (model , feature_collector ,
368
+ picture_index , & score , true, true, 0 );
369
+ pthread_mutex_lock (& (feature_collector -> lock ));
370
+
371
+ if (res ) goto unlock ;
372
+
373
+ VmafMetadata data = {
374
+ .feature_name = metadata_iter -> metadata_cfg .feature_name ,
372
375
.picture_index = picture_index ,
373
376
.score = score ,
374
- };
377
+ };
378
+
379
+ metadata_iter -> metadata_cfg .callback (metadata_iter -> metadata_cfg .data , & data );
380
+ model_iter = model_iter -> next ;
381
+ }
375
382
376
- metadata_iter -> metadata_cfg .callback (metadata_iter -> metadata_cfg .data , & data );
377
- model_iter = model_iter -> next ;
378
- }
379
- metadata_iter = metadata_iter -> next ;
383
+ metadata_iter = metadata_iter -> next ;
380
384
}
381
385
382
386
unlock :
0 commit comments