source: git/src/moviemaker.h @ 53496ab3

RELEASE/1.2debug-cidebug-ci-sanitisersstereowalls-datawalls-data-hanging-as-warning
Last change on this file since 53496ab3 was ee3d89c, checked in by Olly Betts <olly@…>, 10 years ago

src/moviemaker.h: If we don't have libav or ffmpeg, omit all the
member variables from class MovieMaker?, to avoid "unused private
field" warnings from clang.

  • Property mode set to 100644
File size: 1.6 KB
RevLine 
[6a4cdcb6]1//
2//  moviemaker.h
3//
4//  Class for writing movies from Aven.
5//
[ee3d89c]6//  Copyright (C) 2004,2010,2011,2013,2014 Olly Betts
[6a4cdcb6]7//
8//  This program is free software; you can redistribute it and/or modify
9//  it under the terms of the GNU General Public License as published by
10//  the Free Software Foundation; either version 2 of the License, or
11//  (at your option) any later version.
12//
13//  This program is distributed in the hope that it will be useful,
14//  but WITHOUT ANY WARRANTY; without even the implied warranty of
15//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16//  GNU General Public License for more details.
17//
18//  You should have received a copy of the GNU General Public License
19//  along with this program; if not, write to the Free Software
[ecbc6c18]20//  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
[6a4cdcb6]21//
22
[ee3d89c]23#ifndef PACKAGE
24# error config.h must be included first in each C++ source file
25#endif
26
[1805274]27struct AVFormatContext;
28struct AVStream;
[6a4cdcb6]29struct AVFrame;
30struct AVPicture;
[9e516d0d]31struct SwsContext;
[6a4cdcb6]32
33class MovieMaker {
[ee3d89c]34#ifdef HAVE_LIBAVFORMAT_AVFORMAT_H
[1805274]35    AVFormatContext *oc;
[64d06c0]36    AVStream *video_st;
[6a4cdcb6]37    int out_size;
38    AVFrame *frame;
39    unsigned char *outbuf;
40    AVPicture *out;
41    unsigned char *pixels;
[9e516d0d]42    SwsContext *sws_ctx;
[091069f]43    int averrno;
[ee3d89c]44#endif
[6a4cdcb6]45 
[98fd937]46    void release();
47
[6a4cdcb6]48public:
[1805274]49    MovieMaker();
50    bool Open(const char *fnm, int width, int height);
[6a4cdcb6]51    unsigned char * GetBuffer() const;
52    int GetWidth() const;
53    int GetHeight() const;
[98fd937]54    bool AddFrame();
55    bool Close();
[6a4cdcb6]56    ~MovieMaker();
[091069f]57    const char * get_error_string() const;
[6a4cdcb6]58};
Note: See TracBrowser for help on using the repository browser.