@ -151,7 +151,7 @@ bool StreamPublishEngine::openSource(const StreamPublishConfig& config) {
}
if ( best . isNull ( ) ) { DEBUG_ERROR ( DEBUG_CATEGORY_VIDEO , " desktop camera lacks requested fps=%d " , config . video . fps ) ; return false ; }
m - > camera - > setCameraFormat ( best ) ; m - > session - > setCamera ( m - > camera . get ( ) ) ;
connect ( m - > camera . get ( ) , & QCamera : : errorOccurred , this , [ failed ] ( QCamera : : Error , const QString & error ) { failed ( error ) ; } ) ;
connect ( m - > camera . get ( ) , & QCamera : : errorOccurred , this , [ failed ] ( QCamera : : Error , const QString & error ) { failed ( error ) ; } , Qt : : QueuedConnection ) ;
m - > camera - > start ( ) ;
} else if ( config . source . kind = = StreamVideoSource : : Screen ) {
m - > screen = std : : make_unique < QScreenCapture > ( ) ;
@ -162,13 +162,13 @@ bool StreamPublishEngine::openSource(const StreamPublishConfig& config) {
m - > screen - > setScreen ( selected ) ;
}
m - > session - > setScreenCapture ( m - > screen . get ( ) ) ;
connect ( m - > screen . get ( ) , & QScreenCapture : : errorOccurred , this , [ failed ] ( QScreenCapture : : Error , const QString & error ) { failed ( error ) ; } ) ;
connect ( m - > screen . get ( ) , & QScreenCapture : : errorOccurred , this , [ failed ] ( QScreenCapture : : Error , const QString & error ) { failed ( error ) ; } , Qt : : QueuedConnection ) ;
m - > screen - > start ( ) ;
} else {
auto window = config . source . window . value < QCapturableWindow > ( ) ;
if ( ! window . isValid ( ) ) { DEBUG_ERROR ( DEBUG_CATEGORY_VIDEO , " desktop window is unavailable " ) ; return false ; }
m - > window = std : : make_unique < QWindowCapture > ( ) ; m - > window - > setWindow ( window ) ; m - > session - > setWindowCapture ( m - > window . get ( ) ) ;
connect ( m - > window . get ( ) , & QWindowCapture : : errorOccurred , this , [ failed ] ( QWindowCapture : : Error , const QString & error ) { failed ( error ) ; } ) ;
connect ( m - > window . get ( ) , & QWindowCapture : : errorOccurred , this , [ failed ] ( QWindowCapture : : Error , const QString & error ) { failed ( error ) ; } , Qt : : QueuedConnection ) ;
m - > window - > start ( ) ;
}
DEBUG_INFO ( DEBUG_CATEGORY_VIDEO , " desktop capture started generation=%llu kind=%d source=%s target=%dx%d/%dfps " ,