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:36:32 +0300
committerPeter Schlaile <peter@schlaile.de>2006-02-05 22:36:32 +0300
commit680756393a7be40706826bbbd580269a2a71cc4a (patch)
tree0abcd40078c4c4bbcd568f4c7ca05048fa367715
parent6c29ba8494e58b704a34bf86e088c3ec86b6fd97 (diff)
- Header changes to support hdaudio, memcache limitor and framecount boost.
-rw-r--r--source/blender/blenloader/intern/readfile.c4
-rw-r--r--source/blender/blenloader/intern/writefile.c2
-rw-r--r--source/blender/blenpluginapi/iff.h6
-rw-r--r--source/blender/include/BIF_editsound.h20
-rw-r--r--source/blender/include/BIF_resources.h8
-rw-r--r--source/blender/include/BSE_seqaudio.h1
-rw-r--r--source/blender/include/BSE_sequence.h11
-rw-r--r--source/blender/include/blendef.h6
-rw-r--r--source/blender/python/api2_2x/sceneRender.c12
9 files changed, 50 insertions, 20 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index fbbc311e0d5..7b32a814f98 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -2639,6 +2639,7 @@ static void lib_link_scene(FileData *fd, Main *main)
}
}
seq->anim= 0;
+ seq->hdaudio = 0;
}
END_SEQ
}
@@ -2740,7 +2741,8 @@ static void direct_link_scene(FileData *fd, Scene *sce)
}
}
}
- else if(seq->type==SEQ_SOUND) {
+ else if(seq->type==SEQ_RAM_SOUND
+ || seq->type == SEQ_HD_SOUND) {
/* only first stripelem is in file */
se= newdataadr(fd, seq->strip->stripdata);
diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c
index f00e238314b..cb2abd71ca0 100644
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@ -1186,7 +1186,7 @@ static void write_scenes(WriteData *wd, ListBase *scebase)
if(seq->type==SEQ_IMAGE)
writestruct(wd, DATA, "StripElem", strip->len, strip->stripdata);
- else if(seq->type==SEQ_MOVIE || seq->type==SEQ_SOUND)
+ else if(seq->type==SEQ_MOVIE || seq->type==SEQ_RAM_SOUND || seq->type == SEQ_HD_SOUND)
writestruct(wd, DATA, "StripElem", 1, strip->stripdata);
strip->done= 1;
diff --git a/source/blender/blenpluginapi/iff.h b/source/blender/blenpluginapi/iff.h
index 456291e664b..f0d7a76f0f4 100644
--- a/source/blender/blenpluginapi/iff.h
+++ b/source/blender/blenpluginapi/iff.h
@@ -125,6 +125,8 @@
#define AN_INIT an_stringdec = stringdec; an_stringenc = stringenc;
+struct MEM_CacheLimiterHandle_s;
+
typedef struct ImBuf{
short x,y; /* width in pixels, height in scanlines */
short skipx; /* width in ints to get to the next scanline */
@@ -148,7 +150,11 @@ typedef struct ImBuf{
unsigned char *encodedbuffer;
unsigned int encodedsize;
unsigned int encodedbuffersize;
+
float *rect_float;
+
+ struct MEM_CacheLimiterHandle_s * c_handle;
+ int refcounter;
} ImBuf;
extern struct ImBuf *allocImBuf(short,short,uchar,uint,uchar);
diff --git a/source/blender/include/BIF_editsound.h b/source/blender/include/BIF_editsound.h
index e4b730aedc8..abeabdc3e06 100644
--- a/source/blender/include/BIF_editsound.h
+++ b/source/blender/include/BIF_editsound.h
@@ -37,6 +37,7 @@ struct bSound;
struct bSample;
struct ListBase;
struct PackedFile;
+struct hdaudio;
void sound_init_audio(void);
void sound_initialize_sounds(void);
@@ -64,8 +65,23 @@ void sound_play_sound(struct bSound *sound);
void sound_stop_all_sounds(void);
void sound_set_position(void *object,
- struct bSound *sound,
- float obmatrix[4][4]);
+ struct bSound *sound,
+ float obmatrix[4][4]);
+
+struct hdaudio * sound_open_hdaudio(char * name);
+struct hdaudio * sound_copy_hdaudio(struct hdaudio * c);
+
+long sound_hdaudio_get_duration(struct hdaudio * hdaudio, int frame_rate);
+void sound_hdaudio_extract(struct hdaudio * hdaudio,
+ short * target_buffer,
+ int sample_position /* units of target_rate */,
+ int target_rate,
+ int target_channels,
+ int nb_samples /* in target */);
+
+void sound_close_hdaudio(struct hdaudio * hdaudio);
+
+
#endif
diff --git a/source/blender/include/BIF_resources.h b/source/blender/include/BIF_resources.h
index ecf6f67331a..af721feafa8 100644
--- a/source/blender/include/BIF_resources.h
+++ b/source/blender/include/BIF_resources.h
@@ -293,10 +293,10 @@ typedef enum {
ICON_MOD_MIRROR,
ICON_MOD_SOFT,
ICON_MOD_SUBSURF,
- ICON_BLANK73,
- ICON_BLANK74,
- ICON_BLANK75,
- ICON_BLANK76,
+ ICON_SEQ_SEQUENCER,
+ ICON_SEQ_PREVIEW,
+ ICON_SEQ_LUMA_WAVEFORM,
+ ICON_SEQ_CHROMA_SCOPE,
ICON_ROTATE,
ICON_CURSOR,
ICON_ROTATECOLLECTION,
diff --git a/source/blender/include/BSE_seqaudio.h b/source/blender/include/BSE_seqaudio.h
index f395ac4b90e..985c4be73d2 100644
--- a/source/blender/include/BSE_seqaudio.h
+++ b/source/blender/include/BSE_seqaudio.h
@@ -43,6 +43,7 @@
void audio_mixdown();
void audio_makestream(bSound *sound);
void audiostream_play(Uint32 startframe, Uint32 duration, int mixdown);
+void audiostream_fill(Uint8* mixdown, int len);
void audiostream_start(Uint32 frame);
void audiostream_scrub(Uint32 frame);
void audiostream_stop(void);
diff --git a/source/blender/include/BSE_sequence.h b/source/blender/include/BSE_sequence.h
index df38389892a..686749b303d 100644
--- a/source/blender/include/BSE_sequence.h
+++ b/source/blender/include/BSE_sequence.h
@@ -123,16 +123,19 @@ void do_effect(int cfra, struct Sequence *seq, struct StripElem *se);
int evaluate_seq_frame(int cfra);
struct StripElem *give_stripelem(struct Sequence *seq, int cfra);
void set_meta_stripdata(struct Sequence *seqm);
-void do_seq_count_cfra(struct ListBase *seqbase, int *totseq, int cfra);
-void do_build_seqar_cfra(struct ListBase *seqbase, struct Sequence ***seqar, int cfra);
-struct ImBuf *give_ibuf_seq(int rectx, int recty, int cfra);
+struct ImBuf *give_ibuf_seq(int rectx, int recty, int cfra, int chansel);
+/* chansel: render this channel. Default=0 (renders end result)*/
+
+struct ImBuf *make_waveform_view_from_ibuf(struct ImBuf * ibuf);
+struct ImBuf *make_vectorscope_view_from_ibuf(struct ImBuf * ibuf);
+
void free_imbuf_effect_spec(int cfra);
void free_imbuf_seq_except(int cfra);
void free_imbuf_seq(void);
/* still bad level call... */
struct RenderResult;
-void do_render_seq(struct RenderResult *rr);
+void do_render_seq(struct RenderResult *rr, int cfra);
#endif
diff --git a/source/blender/include/blendef.h b/source/blender/include/blendef.h
index 52638e6f988..425d95cc112 100644
--- a/source/blender/include/blendef.h
+++ b/source/blender/include/blendef.h
@@ -34,8 +34,8 @@
/* **************** MAX ********************* */
-#define MAXFRAME 30000
-#define MAXFRAMEF 30000.0f
+#define MAXFRAME 300000
+#define MAXFRAMEF 300000.0f
#define MINFRAME 1
#define MINFRAMEF 1.0
@@ -277,6 +277,8 @@
#define B_UITHEMEIMPORT 323
#define B_UITHEMEEXPORT 324
+#define B_MEMCACHELIMIT 325
+
/* Definitions for the fileselect buttons in user prefs */
#define B_FONTDIRFILESEL 330
#define B_TEXTUDIRFILESEL 331
diff --git a/source/blender/python/api2_2x/sceneRender.c b/source/blender/python/api2_2x/sceneRender.c
index 01329dd36c4..10de6e05aee 100644
--- a/source/blender/python/api2_2x/sceneRender.c
+++ b/source/blender/python/api2_2x/sceneRender.c
@@ -1443,22 +1443,22 @@ PyObject *RenderData_GaussFilterSize( BPy_RenderData * self, PyObject * args )
//------------------------------------RenderData.StartFrame() -----------
PyObject *RenderData_StartFrame( BPy_RenderData * self, PyObject * args )
{
- return M_Render_GetSetAttributeShort( args, &self->renderContext->sfra,
- 1, MAXFRAME );
+ return M_Render_GetSetAttributeInt( args, &self->renderContext->sfra,
+ 1, MAXFRAME );
}
//------------------------------------RenderData.CurrentFrame() ---------
PyObject *RenderData_CurrentFrame( BPy_RenderData * self, PyObject * args )
{
- return M_Render_GetSetAttributeShort( args, &self->renderContext->cfra,
- 1, MAXFRAME );
+ return M_Render_GetSetAttributeInt( args, &self->renderContext->cfra,
+ 1, MAXFRAME );
}
//------------------------------------RenderData.EndFrame() -------------
PyObject *RenderData_EndFrame( BPy_RenderData * self, PyObject * args )
{
- return M_Render_GetSetAttributeShort( args, &self->renderContext->efra,
- 1, MAXFRAME );
+ return M_Render_GetSetAttributeInt( args, &self->renderContext->efra,
+ 1, MAXFRAME );
}
//------------------------------------RenderData.ImageSizeX() ----------