Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Animated Textures

This is an archived page!
This page is very old and the content is not up to date.
Not everything (if any) which is written here will be in the final game!

Goal
Our goal is to implement a container which can handle different media files like avi or mpeg. Through this we will be able to create animated textures or playing ingame movies. If we have enough time we will implement some cool features like recording.

Library
We are using FFmpeg to record and stream the audio and video files.
"FFmpeg is a complete solution to record, convert and stream audio and video. It includes libavcodec, the leading audio/video codec library. FFmpeg is developed under Linux, but it can compiled under most operating systems, including Windows."

Design
UML-Classdiagram:

Usage
Multitex opens a media file and loads the frames as textures into a list.
The textures are displayed on the screen.
Try this only with short clips ~200frames
./multitex yourMovie

Controls:
8 Decrement fps by 1
9 Increment fps by 1

There is a short clip in the data/media folder named crash.mpg

Movie_player_test opens a media file and plays the movie. It loads the frames at runtime.
This one can play long movies.
./movie_player_test yourMovie

Controls:
1 Play
2 Resume
3 Pause
4 Stop
9 Decrement speed by 0.5
0 Increment speed by 0.5

There is a movie in the data/media folder named test_clip.mpg

Roadmap
-30.11.05 Project design
-07.12.05 Implementation
-14.12.05 Implementation
-21.12.05 Implementation
-11.01.06 Debug, Code Freeze
-18.01.06 Presentation
-25.01.06 Documentation

Examples
simple example

Links
FFmpeg
NeHe: Lesson 35

Programmers
David Hasenfratz
Stefan Lienhard

Last modified 21 months ago Last modified on Apr 15, 2017, 3:29:15 PM

Attachments (3)

Download all attachments as: .zip