Hello!
I'm using QT5.7.
I have 2 labels that's used for video frame representation. For each label i pass frames correctly and it works with code below.
I just simply get new frames from my external source, than i convert them to Pixmap and call setPixmap(map);
Code looks like this :
QImage image = QImage(frame.data, frame.width, frame.height, QImage::Format_RGB888);
image = image.scaledToWidth(320, Qt::SmoothTransformation);
QPixmap map = QPixmap::fromImage(image);
QLabel *label = (QLabel *)ui->streamPlayerTable->cellWidget(x,y)->findChild<QLabel*>();
label->setPixmap(map);
Both videos goes correctly for 1min, 5min, sometimes 30min. But sometimes one of those videos just stop. Seemingly with no reason!! I see that new pixmaps are created for both labels. Frames are coming, gdb does not show any suspicious thread exiting messages, memory usage is constant and cpu is not very high at the moment when some video stops, also no console messages.
It seems that pixmap are stuck in some repaint request. But as i don't know a lot of QT framework internals, i please to help me to understand what might cause such behaviour.
Is there any way to force label to repaint pixmap with no crashes ?
If anyone had experienced in such behaviour on QT please share ideas to solve it.
Thanks in advance!
Bookmarks