This patch adds prefetch buffering to the sequencer (see the tracker for additional details: https://projects.blender.org/tracker/?func=detail&aid=7307&group_id=9&atid=127 ) We create seperate render threads (currently one, because of the fact, that sequence rendering modifies global structures...), that render up to the defined userpref value "Prefetch frames" in advance. (Pressing Alt-A will _first_ fill the buffer and then start playing.) Bassam and I did some extensive testing, so it should work. If you don't configure your number of prefetch frames, prefetching is disabled! (Sane defaults... :) Also: if the machine is definitely too slow and runs out of the prefetch area, prefetching is disabled automatically and we are back to good old frame skipping mode. My Dual Athlon is able to handle 4 parallel DV streams at once (sometimes a little bit choppy, but prefetching is never disabled!) I fixed also a long standing bug in the audio code, that made playback run backwards at the beginning...
47 lines
1.5 KiB
C++
47 lines
1.5 KiB
C++
/**
|
|
* $Id$
|
|
*
|
|
* ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License
|
|
* as published by the Free Software Foundation; either version 2
|
|
* of the License, or (at your option) any later version. The Blender
|
|
* Foundation also sells licenses for use in proprietary software under
|
|
* the Blender License. See http://www.blender.org/BL/ for information
|
|
* about this.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software Foundation,
|
|
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
*
|
|
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
|
|
* All rights reserved.
|
|
*
|
|
* The Original Code is: all of this file.
|
|
*
|
|
* Contributor(s): none yet.
|
|
*
|
|
* ***** END GPL/BL DUAL LICENSE BLOCK *****
|
|
*/
|
|
|
|
#ifndef BIF_DRAWSEQ_H
|
|
#define BIF_DRAWSEQ_H
|
|
|
|
struct ScrArea;
|
|
struct Sequence;
|
|
|
|
void drawprefetchseqspace(struct ScrArea *sa, void *spacedata);
|
|
void drawseqspace(struct ScrArea *sa, void *spacedata);
|
|
void set_special_seq_update(int val);
|
|
|
|
void seq_viewmove(SpaceSeq *sseq);
|
|
void seq_reset_imageofs(SpaceSeq *sseq);
|
|
#endif
|
|
|