[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-dev] video in gnash

From: Tomas Groth
Subject: [Gnash-dev] video in gnash
Date: Sat, 18 Nov 2006 15:15:44 +0100 (CET)


I've been looking at the current video implementation, and tried to get a hold
on it, to see how it can be made to work for all of us, and here is what I've
found so far...

How the current video implementation works:

Video requires opengl ffmpeg and sdl-sound backend.

When the NetStream Object is being set to play, ffmpeg is used to connect to
the video-file. Then ffmpeg is used to identify the codecs used in the file and
if it contains audio we setup a callback, so that the soundhandler can get
audio data when needed. Then a decoding thread is started which decodes video
and audio frames, and places it on a queue. When the audio callback ask for
more data, data is popped from the queue. The displaying of the video (so far
only with OpenGL) is controlled by the renderer which ask the video object for
data, which is popped from the video queue. The current implementation doesn't
work too good, but it's a start! I did some testing, and the videos i've tried
all became very green, and most wouldn't start to play.

So it still need some work, and here's what I think should be done, and I plan
to do, based on reading the code and a bit about video in flash:

 * Let gnash/libcurl fetch the video, not ffmpeg, since ffmpeg doesn't support
RTMP (though neither does vanilla libcurl).
 * Implement MovieClip.attachAudio() for audio handling of video (audio should
not be automaticly enabled it seems).
 * Seperate the video/audio decoding from the NetStream AS-object and put it
into a video/media handler. This should hopefully make it easier/cleaner to
support other video decoders (gstreamer).
 * Implement video viewing for AGG, and later cairo.

As a side bonus I also hope make support for video embedded directly in

If you have any thoughts, opinons, suggestions, objections, or anything else
which might help, please share!



Alt i én. Få Yahoo! Mail med adressekartotek, kalender og

reply via email to

[Prev in Thread] Current Thread [Next in Thread]