File indexing completed on 2024-04-21 04:49:03

0001 /*
0002     SPDX-FileCopyrightText: 2010 Dirk Vanden Boer <dirk.vdb@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "imagewriter.h"
0008 #include <iostream>
0009 
0010 extern void qt_imageTransform(QImage &src, QImageIOHandler::Transformations transforms);
0011 
0012 using namespace std;
0013 
0014 namespace ffmpegthumbnailer
0015 {
0016 
0017 ImageWriter::ImageWriter()
0018 {
0019 }
0020 
0021 void ImageWriter::writeFrame(VideoFrame& frame, QImage& image, const QImageIOHandler::Transformations transformations)
0022 {
0023     QImage previewImage(frame.width, frame.height, QImage::Format_RGB888);
0024     for (quint32 y = 0; y < frame.height; y++) {
0025         // Copy each line ..
0026         memcpy(previewImage.scanLine(y), &frame.frameData[y*frame.lineSize], frame.width*3);
0027     }
0028 
0029     qt_imageTransform(previewImage, transformations);
0030 
0031     image = previewImage;
0032 }
0033 }