Blender  V2.93
BKE_writeffmpeg.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  *
16  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
17  * All rights reserved.
18  */
19 
20 #pragma once
21 
26 #ifdef WITH_FFMPEG
27 
28 # ifdef __cplusplus
29 extern "C" {
30 # endif
31 
32 enum {
33  FFMPEG_MPEG1 = 0,
34  FFMPEG_MPEG2 = 1,
35  FFMPEG_MPEG4 = 2,
36  FFMPEG_AVI = 3,
37  FFMPEG_MOV = 4,
38  FFMPEG_DV = 5,
39  FFMPEG_H264 = 6,
40  FFMPEG_XVID = 7,
41  FFMPEG_FLV = 8,
42  FFMPEG_MKV = 9,
43  FFMPEG_OGG = 10,
44  FFMPEG_INVALID = 11,
45  FFMPEG_WEBM = 12,
46 };
47 
48 enum {
49  FFMPEG_PRESET_NONE = 0,
50  FFMPEG_PRESET_DVD = 1,
51  FFMPEG_PRESET_SVCD = 2,
52  FFMPEG_PRESET_VCD = 3,
53  FFMPEG_PRESET_DV = 4,
54  FFMPEG_PRESET_H264 = 5,
55  FFMPEG_PRESET_THEORA = 6,
56  FFMPEG_PRESET_XVID = 7,
57 };
58 
59 struct RenderData;
60 struct ReportList;
61 struct Scene;
62 
63 int BKE_ffmpeg_start(void *context_v,
64  const struct Scene *scene,
65  struct RenderData *rd,
66  int rectx,
67  int recty,
68  struct ReportList *reports,
69  bool preview,
70  const char *suffix);
71 void BKE_ffmpeg_end(void *context_v);
72 int BKE_ffmpeg_append(void *context_v,
73  struct RenderData *rd,
74  int start_frame,
75  int frame,
76  int *pixels,
77  int rectx,
78  int recty,
79  const char *suffix,
80  struct ReportList *reports);
81 void BKE_ffmpeg_filepath_get(char *string,
82  const struct RenderData *rd,
83  bool preview,
84  const char *suffix);
85 
86 void BKE_ffmpeg_preset_set(struct RenderData *rd, int preset);
87 void BKE_ffmpeg_image_type_verify(struct RenderData *rd, struct ImageFormatData *imf);
88 void BKE_ffmpeg_codec_settings_verify(struct RenderData *rd);
89 bool BKE_ffmpeg_alpha_channel_is_supported(const struct RenderData *rd);
90 
91 int BKE_ffmpeg_property_add_string(struct RenderData *rd, const char *type, const char *str);
92 void BKE_ffmpeg_property_del(struct RenderData *rd, void *type, void *prop_);
93 
94 void *BKE_ffmpeg_context_create(void);
95 void BKE_ffmpeg_context_free(void *context_v);
96 
97 # ifdef __cplusplus
98 }
99 # endif
100 
101 #endif
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
Scene scene
#define str(s)
struct PreviewImage * preview