[freespace2] Patches for music and movies

Taylor Richards mtrs at bellsouth.net
Sat Mar 26 12:48:39 EST 2005


Great work!  There already is new movie code but I never released it to
the public at large though since the audio wasn't 100%.  If no one beats
me to it I'll merge my stuff and your patches and commit to CVS.  Few
things that need to be changed though:

1) audio streaming should not use CFILE, it's way too slow.  SDL_RWops
is much better for this.  I already had all of that done but only
partially implemented the actual OpenAL streaming calls.

2) The directories that movies are in are case sensitive so it needs to
be the Data/Movies version so that it works off of the installers and
better in CFILE.  They are also uppercase in a lot of instances.  My
current code covers CF_TYPE_ROOT and CF_TYPE_MOVIES with both upper and
lower case names.  That covers FS1 & FS2 installations that are from
Windows as well as the way the Linux installers work.

3) We don't need to be using gr_bitmap() for the movie frames, it's
excessively slow.  Using glTexSubImage2D() directly is the only way to
really play back the frames fast enough.  Going through the normal
texture system, even using glTexSubImage2D in the end, is at least 3
times slower and gr_bitmap is twice as slow as that.

I'll be sure and get the swaps for OSX in there when it committed.

Taylor


On Sat, 2005-03-26 at 15:16 +0100, Pierre Willenbrock wrote:
> These patches enable streaming audio support and movie playback.
> The patches are against current cvs. You still need to put MVE=yes into 
> your Makefile to make freespace use the movie support.
> So far the code is tested on an Athlon 1400 and a Duron 600, both with 
> up-to-date gentoo, with varying degrees of frameskiping in movie 
> playback, but sound is working flawlessly.

-- 
Taylor Richards <taylor at icculus.org>




More information about the freespace2 mailing list