Try adding m_imageCapture.setCaptureDestination(QCameraImageCapture::CaptureToFile);.
P.S.
QCheckBox *cam = new QCheckBox(ci.description());
vailableCameras->setItemWidget(lwi, cam);
Hurts my feelings. See https://forum.qt.io/post/486329 it applies also to QListWidgetItem with the only difference that you don't, obviously, specify a column