diff options
Diffstat (limited to 'tracker-ht/ht_video_widget.cpp')
-rw-r--r-- | tracker-ht/ht_video_widget.cpp | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/tracker-ht/ht_video_widget.cpp b/tracker-ht/ht_video_widget.cpp deleted file mode 100644 index b62b9892..00000000 --- a/tracker-ht/ht_video_widget.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright (c) 2014 Stanislaw Halik - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - */ - -#include "ht_video_widget.h" - -void HTVideoWidget::update_image(unsigned char *frame, int width_, int height_) -{ - QMutexLocker foo(&mtx); - if (!fresh) - { - width = width_; - height = height_; - fresh = true; - memcpy(fb, frame, width_ * height_ * 3); - } -} - -void HTVideoWidget::update_and_repaint() -{ - QImage qframe; - { - QMutexLocker foo(&mtx); - if (width*height <= 0 || !fresh) - return; - fresh = false; - qframe = QImage(width, height, QImage::Format_RGB888); - uchar* data = qframe.bits(); - const int pitch = qframe.bytesPerLine(); - for (int y = 0; y < height; y++) - { - const int part = y*width; - for (int x = 0; x < width; x++) - { - const int pos = 3 * (part + x); - const int x_ = x * 3; - data[x_ + 0] = fb[pos + 2]; - data[x_ + 1] = fb[pos + 1]; - data[x_ + 2] = fb[pos + 0]; - } - data += pitch; - } - } - qframe = qframe.scaled(size(), Qt::IgnoreAspectRatio, Qt::FastTransformation); - { - QMutexLocker foo(&mtx); - texture = qframe; - } - update(); -} |