Panda3D Manual: Playing MPG and AVI filesPanda now supports AVI format for textures in Panda. UsagemyMovieTexture=loader.loadTexture("myMovie.avi") The movie subsystem is implemented using FFMPEG. Therefore, it supports all of the formats that FFMPEG supports. The functions to control the movie are as follows: movie.play() If you want to hear the movie's audio as well, you need to load it twice: once as a texture, and once as a sound file: mySound=loader.loadSfx("myMovie.avi") Then, you can synchonize the video to the audio: myMovieTexture.synchronizeTo(mySound) From that point forward, playing the audio will cause the texture to update. This is more accurate than synchronizing the video manually. For powers-of-two limited graphics hardwareIf your graphics hardware does not support non power-of-two texture, your movie texture size would be shifted up to the next larger power of two size. For example, it you have a movie of 640 x 360 in size, the generated texture would be actually 1024 x 512. The result is a texture that contains a movie in the lower-left corner, and a black pad region to the right and upper portion of the texture. To work around this limit, you have to display just the lower-left portion of the texture. To see a complete demonstration of this process, see the Media Player sample program. IssuesThe video texture works by decoding on a frame by frame basis and copying into the texture buffer. As such, it is inadvisable to use more than a few high res video textures at the same time. Certain encoding formats do not work. So far, DV format has been determined incompatible with Panda. © Carnegie Mellon University 2010 |