Blender V2.61 - r43446

BKE_writeffmpeg.h

Go to the documentation of this file.
00001 /*
00002  * ***** BEGIN GPL LICENSE BLOCK *****
00003  *
00004  * This program is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU General Public License
00006  * as published by the Free Software Foundation; either version 2
00007  * of the License, or (at your option) any later version.
00008  *
00009  * This program is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  * GNU General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU General Public License
00015  * along with this program; if not, write to the Free Software Foundation,
00016  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00017  *
00018  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
00019  * All rights reserved.
00020  *
00021  * The Original Code is: all of this file.
00022  *
00023  * Contributor(s): none yet.
00024  *
00025  * ***** END GPL LICENSE BLOCK *****
00026  */
00027 
00028 #ifndef BKE_WRITEFFMPEG_H
00029 #define BKE_WRITEFFMPEG_H
00030 
00035 #ifdef WITH_FFMPEG
00036 
00037 #ifdef __cplusplus
00038 extern "C" {
00039 #endif
00040 
00041 #define FFMPEG_MPEG1    0
00042 #define FFMPEG_MPEG2    1
00043 #define FFMPEG_MPEG4    2
00044 #define FFMPEG_AVI  3
00045 #define FFMPEG_MOV  4
00046 #define FFMPEG_DV   5
00047 #define FFMPEG_H264     6
00048 #define FFMPEG_XVID     7
00049 #define FFMPEG_FLV      8
00050 #define FFMPEG_MKV      9
00051 #define FFMPEG_OGG      10
00052 #define FFMPEG_WAV      11
00053 #define FFMPEG_MP3      12
00054 
00055 #define FFMPEG_PRESET_NONE      0
00056 #define FFMPEG_PRESET_DVD       1
00057 #define FFMPEG_PRESET_SVCD      2
00058 #define FFMPEG_PRESET_VCD       3
00059 #define FFMPEG_PRESET_DV        4
00060 #define FFMPEG_PRESET_H264      5
00061 #define FFMPEG_PRESET_THEORA    6
00062 #define FFMPEG_PRESET_XVID      7
00063 
00064 struct IDProperty;
00065 struct RenderData;  
00066 struct ReportList;
00067 struct Scene;
00068 
00069 extern int start_ffmpeg(struct Scene *scene, struct RenderData *rd, int rectx, int recty, struct ReportList *reports);
00070 extern void end_ffmpeg(void);
00071 extern int append_ffmpeg(struct RenderData *rd, int start_frame, int frame, int *pixels,
00072                          int rectx, int recty, struct ReportList *reports);
00073 void filepath_ffmpeg(char* string, struct RenderData* rd);
00074 
00075 extern void ffmpeg_set_preset(struct RenderData *rd, int preset);
00076 extern void ffmpeg_verify_image_type(struct RenderData *rd, struct ImageFormatData *imf);
00077 extern void ffmpeg_verify_lossless_format(struct RenderData *rd, struct ImageFormatData *imf);
00078 
00079 extern struct IDProperty *ffmpeg_property_add(struct RenderData *Rd, const char *type, int opt_index, int parent_index);
00080 extern int ffmpeg_property_add_string(struct RenderData *rd, const char *type, const char *str);
00081 extern void ffmpeg_property_del(struct RenderData *rd, void *type, void *prop_);
00082 
00083 #ifdef __cplusplus
00084 }
00085 #endif
00086 
00087 #endif
00088 
00089 #endif
00090