]> git.sesse.net Git - kdenlive/blob - renderer/kdenlive_render.cpp
Use detached rendering process, render progress is shown in KDE's Job Viewer.
[kdenlive] / renderer / kdenlive_render.cpp
1 /****************************************************************************
2 **
3 ** Copyright (C) 2006-2008 Trolltech ASA. All rights reserved.
4 **
5 ** This file is part of the tools applications of the Qt Toolkit.
6 **
7 ** This file may be used under the terms of the GNU General Public
8 ** License versions 2.0 or 3.0 as published by the Free Software
9 ** Foundation and appearing in the files LICENSE.GPL2 and LICENSE.GPL3
10 ** included in the packaging of this file.  Alternatively you may (at
11 ** your option) use any later version of the GNU General Public
12 ** License if such license has been publicly approved by Trolltech ASA
13 ** (or its successors, if any) and the KDE Free Qt Foundation. In
14 ** addition, as a special exception, Trolltech gives you certain
15 ** additional rights. These rights are described in the Trolltech GPL
16 ** Exception version 1.2, which can be found at
17 ** http://www.trolltech.com/products/qt/gplexception/ and in the file
18 ** GPL_EXCEPTION.txt in this package.
19 **
20 ** Please review the following information to ensure GNU General
21 ** Public Licensing requirements will be met:
22 ** http://trolltech.com/products/qt/licenses/licensing/opensource/. If
23 ** you are unsure which license is appropriate for your use, please
24 ** review the following information:
25 ** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
26 ** or contact the sales department at sales@trolltech.com.
27 **
28 ** In addition, as a special exception, Trolltech, as the sole
29 ** copyright holder for Qt Designer, grants users of the Qt/Eclipse
30 ** Integration plug-in the right for the Qt/Eclipse Integration to
31 ** link to functionality provided by Qt Designer and its related
32 ** libraries.
33 **
34 ** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
35 ** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
36 ** A PARTICULAR PURPOSE. Trolltech reserves all rights not expressly
37 ** granted herein.
38 **
39 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
40 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
41 **
42 ****************************************************************************/
43
44 #include <stdio.h>
45 #include <QCoreApplication>
46 #include <QStringList>
47 #include <QString>
48
49 #include "renderjob.h"
50
51 int main(int argc, char **argv) {
52     QCoreApplication app(argc, argv);
53     QStringList args = app.arguments();
54     if (!args.isEmpty()) args.takeFirst();
55     if (args.count() >= 4) {
56         bool erase = false;
57         if (args.at(0) == "-erase") {
58             erase = true;
59             args.takeFirst();
60         }
61         QString render = args.at(0);
62         args.takeFirst();
63         QString player = args.at(0);
64         args.takeFirst();
65         QString src = args.at(0);
66         args.takeFirst();
67         QString dest = args.at(0);
68         args.takeFirst();
69         RenderJob *job = new RenderJob(erase, render, player, src, dest, args);
70         job->start();
71         app.exec();
72     } else {
73         fprintf(stderr, "Kdenlive video renderer for MLT.\nUsage: "
74                 "kdenlive_render [-erase] [renderer] [player] [src] [dest] [[arg1] [arg2] ...]\n"
75                 "  -erase: if that parameter is present, src file will be erased at the end\n"
76                 "  render: path to inigo rendrer\n"
77                 "  player: path to video player to play when rendering is over, use '-' to disable playing\n"
78                 "  src: source file (usually westley playlist)\n"
79                 "  dest: destination file\n"
80                 "  args: space separated libavformat arguments\n");
81     }
82 }
83