source: git/src/moviemaker.h @ 98fd937

RELEASE/1.2debug-cidebug-ci-sanitisersstereowalls-data
Last change on this file since 98fd937 was 98fd937, checked in by Olly Betts <olly@…>, 11 years ago

src/gfxcore.cc,src/moviemaker.cc,src/moviemaker.h: Improve reporting
of errors during the process of exporting a movie.

  • Property mode set to 100644
File size: 1.4 KB
Line 
1//
2//  moviemaker.h
3//
4//  Class for writing movies from Aven.
5//
6//  Copyright (C) 2004,2010,2011,2013 Olly Betts
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
20//  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
21//
22
23struct AVFormatContext;
24struct AVStream;
25struct AVFrame;
26struct AVPicture;
27struct SwsContext;
28
29class MovieMaker {
30    AVFormatContext *oc;
31    AVStream *video_st;
32    int out_size;
33    AVFrame *frame;
34    unsigned char *outbuf;
35    AVPicture *out;
36    unsigned char *pixels;
37    SwsContext *sws_ctx;
38    int averrno;
39 
40    void release();
41
42public:
43    MovieMaker();
44    bool Open(const char *fnm, int width, int height);
45    unsigned char * GetBuffer() const;
46    int GetWidth() const;
47    int GetHeight() const;
48    bool AddFrame();
49    bool Close();
50    ~MovieMaker();
51    const char * get_error_string() const;
52};
Note: See TracBrowser for help on using the repository browser.