@@ -570,12 +570,12 @@ int main(int argc, char* argv[]) try {
570
570
fprintf (stderr, " Warning: virtual camera aspect ratio does not match capture device.\n " );
571
571
}
572
572
// calculate crop region, only if result always smaller
573
- if (expWidth != vidGeo. value (). first &&
574
- vidGeo. value (). first <= capGeo. value (). first &&
575
- vidGeo. value (). second <= capGeo. value (). second ) {
573
+ if (expWidth != vidGeo-> first &&
574
+ vidGeo-> first <= capGeo-> first &&
575
+ vidGeo-> second <= capGeo-> second ) {
576
576
crop_region = calcCropping (
577
- capGeo. value (). first , capGeo. value (). second ,
578
- vidGeo. value (). first , vidGeo. value (). second );
577
+ capGeo-> first , capGeo-> second ,
578
+ vidGeo-> first , vidGeo-> second );
579
579
}
580
580
581
581
// dump settings..
@@ -609,11 +609,11 @@ int main(int argc, char* argv[]) try {
609
609
}
610
610
}
611
611
// default green screen background (at capture true geometry)
612
- std::optional<std:: pair<size_t , size_t >> bg_dim = capGeo;
613
- if ( crop_region.height == 0 ) {
612
+ std::pair<size_t , size_t > bg_dim = * capGeo;
613
+ if (! crop_region.height ) {
614
614
bg_dim = {crop_region.width , crop_region.height };
615
615
}
616
- cv::Mat bg (bg_dim.value (). second , bg_dim. value () .first , CV_8UC3, cv::Scalar (0 , 255 , 0 ));
616
+ cv::Mat bg (bg_dim.second , bg_dim.first , CV_8UC3, cv::Scalar (0 , 255 , 0 ));
617
617
618
618
// Virtual camera (at specified geometry)
619
619
int lbfd = loopback_init (s_vcam, vidGeo.value ().first , vidGeo.value ().second , debug);
@@ -627,22 +627,22 @@ int main(int argc, char* argv[]) try {
627
627
});
628
628
629
629
// Processing components, all at capture true geometry
630
- std::optional<std:: pair<size_t , size_t >> mask_dim = capGeo;
631
- if ( crop_region.height ) {
630
+ std::pair<size_t , size_t > mask_dim = * capGeo;
631
+ if (crop_region.height ) {
632
632
mask_dim = {crop_region.width , crop_region.height };
633
633
}
634
- cv::Mat mask (mask_dim.value (). second , mask_dim. value () .first , CV_8U);
634
+ cv::Mat mask (mask_dim.second , mask_dim.first , CV_8U);
635
635
636
636
cv::Mat raw;
637
637
int aiw,aih;
638
- if ( crop_region.width == 0 ) {
639
- aiw=capGeo. value (). first ;
640
- aih=capGeo. value (). second ;
638
+ if (! crop_region.width ) {
639
+ aiw=capGeo-> first ;
640
+ aih=capGeo-> second ;
641
641
} else {
642
642
aiw=crop_region.width ;
643
643
aih=crop_region.height ;
644
644
}
645
- CalcMask ai (s_model. value () , threads, aiw, aih);
645
+ CalcMask ai (* s_model, threads, aiw, aih);
646
646
647
647
ti.lastns = timestamp ();
648
648
printf (" Startup: %ldns\n " , diffnanosecs (ti.lastns ,ti.bootns ));
@@ -660,7 +660,7 @@ int main(int argc, char* argv[]) try {
660
660
661
661
if (raw.rows == 0 || raw.cols == 0 ) continue ; // sanity check
662
662
663
- if ( crop_region.height ) {
663
+ if (crop_region.height ) {
664
664
raw (crop_region).copyTo (raw);
665
665
}
666
666
ai.set_input_frame (raw);
@@ -682,8 +682,8 @@ int main(int argc, char* argv[]) try {
682
682
tw = crop_region.width ;
683
683
th = crop_region.height ;
684
684
} else {
685
- tw = capGeo. value (). first ;
686
- th = capGeo. value (). second ;
685
+ tw = capGeo-> first ;
686
+ th = capGeo-> second ;
687
687
}
688
688
if (grab_background (pbk, tw, th, bg) < 0 )
689
689
throw " Failed to read background frame" ;
0 commit comments