1
/** ===========================================================
4
* This file is a part of digiKam project
5
* <a href="http://www.digikam.org">http://www.digikam.org</a>
8
* @brief encode images to video
10
* @author Copyright (C) 2012 by A Janardhan Reddy <annapareddyjanardhanreddy at gmail dot com>
12
* This program is free software; you can redistribute it
13
* and/or modify it under the terms of the GNU General
14
* Public License as published by the Free Software Foundation;
15
* either version 2, or (at your option)
18
* This program is distributed in the hope that it will be useful,
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
* GNU General Public License for more details.
23
* ============================================================ */
25
#ifndef ENCODERDECODER_H
26
#define ENCODERDECODER_H
30
#include <QStringList>
33
// QtGstreamer includes
35
#include <QGst/Pipeline>
36
#include <QGst/Utils/ApplicationSource>
38
namespace KIPIVideoSlideShowPlugin
71
class EncoderDecoder : public QObject
79
void encodeVideo(const QString& destination, const QString& audiFile, VIDEO_FORMAT format, VIDEO_TYPE type,
80
const QString& imagePath, ASPECT_RATIO ratio);
85
void encoderError(const QString& message);
89
void onBusMessage(const QGst::MessagePtr& message);
91
//QGst::BinPtr createAudioSrcBin(QString file, AUDIO_TYPE type, int sampleRate, int bitRate);
92
//QGst::BinPtr createVideoSrcBin(VIDEO_TYPE type, VIDEO_FORMAT format);
96
QGst::PipelinePtr pipeline;
97
QStringList audioPipelines;
98
QStringList videoPipelines;
100
QGst::Utils::ApplicationSource src;
103
} // namespace KIPIVideoSlideShowPlugin
105
#endif // ENCODERDECODER_H