Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Schlaile <peter@schlaile.de>2006-02-05 22:12:25 +0300
committerPeter Schlaile <peter@schlaile.de>2006-02-05 22:12:25 +0300
commit1ce9e196f7c4b76da9a5cf3c789fe6ff2cada2e2 (patch)
tree9faa8ce7ac2cc377b28dd609d84b1120782cd731 /source/blender/blenkernel/intern/writeavi.c
parent4f59db9ca17630a0289a953574303b77fccb46ff (diff)
Adds support for frameserver rendering to blender. This is done by
integrating a mini-webserver (around 300 lines of code) into blender. Using the VFAPI-plugin in contrib/windows it enables blender to directly feed its output into TMPGEnc, a commercial high quality MPEG-Encoder. Since it is a mini-webserver, you can probably easily use it for other interfacing purposes.
Diffstat (limited to 'source/blender/blenkernel/intern/writeavi.c')
-rw-r--r--source/blender/blenkernel/intern/writeavi.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/writeavi.c b/source/blender/blenkernel/intern/writeavi.c
index eb559df89e7..8c39e5f46c9 100644
--- a/source/blender/blenkernel/intern/writeavi.c
+++ b/source/blender/blenkernel/intern/writeavi.c
@@ -57,6 +57,12 @@
#include "BIF_writeavicodec.h"
#endif
+#ifdef WITH_FFMPEG
+#include "BKE_writeffmpeg.h"
+#endif
+
+#include "BKE_writeframeserver.h"
+
bMovieHandle *BKE_get_movie_handle(int imtype)
{
static bMovieHandle mh;
@@ -65,6 +71,7 @@ bMovieHandle *BKE_get_movie_handle(int imtype)
mh.start_movie= start_avi;
mh.append_movie= append_avi;
mh.end_movie= end_avi;
+ mh.get_next_frame = 0;
/* do the platform specific handles */
#ifdef __sgi
@@ -86,6 +93,19 @@ bMovieHandle *BKE_get_movie_handle(int imtype)
mh.end_movie= end_qt;
}
#endif
+#ifdef WITH_FFMPEG
+ if (imtype == R_FFMPEG) {
+ mh.start_movie = start_ffmpeg;
+ mh.append_movie = append_ffmpeg;
+ mh.end_movie = end_ffmpeg;
+ }
+#endif
+ if (imtype == R_FRAMESERVER) {
+ mh.start_movie = start_frameserver;
+ mh.append_movie = append_frameserver;
+ mh.end_movie = end_frameserver;
+ mh.get_next_frame = frameserver_loop;
+ }
return &mh;
}