Flash video player

How can I make FLV with freeware / opensource software

I have written about the creation of FLV (Flash Video) with freeware/open-source software before. But I’ve made the mistake to talk about to many different aspects of the FLV: the encoder, the offline flv-player and the web flv-player.

This will be corrected in this post, so after reading this you will know:

  1. Which programs you can use to encode FLV but don’t have to pay for.
  2. Which program I would use.
  3. And why I would use this program

I know of these freeware/open-source projects you can use to encode FLV:

  1. Riva FLV Encoder
  2. Digitalgroover FLV Encoder
  3. Super
  4. Mediacoder

I’ve been testing them on a couple points.

And the winner is: Riva FLV Encoder!
But it was a close race with number 2: Digitalgroover FLV Encoder
Both of these programs are very easy to use: they can do only one thing: create FLV, which makes them very powerful and useful.
Riva FLV Encoder wins because it can save presets (settings), has some documentation and runs immediately on my home computer. Digitalgroover FLV Encoder could win with the next round (version) if: it runs on my home computer (it works fine on my computer at work…) and save/load presets (settings) in XML.

The other programs can be used to encode more than one at a time (batch) but both don’t write FLV1.1 (no MetaData) so you will need to update this with Buraks FLVMDI (FLV MetaData Injector) which also has the capability to batch.
The combination of complex interface, possibility to encode more than only FLV and no MetaData, makes Super and Mediacoder more programs for professionals.

Flash video player

Why do I need MetaData?

So the first question that I have to answer is:
What is MetaData?
MetaData is information stored in the video file itself (FLV-file) and is not immediately visible.
Typical information stored in the video is the video’s duration, creation date, data rates, but this depends of the encoder.

Second question would be:
Why do I need MetaData?
Well you don’t need MetaData for anything. The FLV-players need it. The MetaData is usually used to create the position of the playhead. Which makes it easier for the viewer of the video to determine how long the video will be, or skip to a specific place in the video. But can also be used to search through video with a specific creationdate, framerate, filesize, width or height. So with MetaData you will make it easier to view your video!

Some other questions:
Do I need to worry about MetaData?
No, if you use a encoder which creates FLV 1.1, it will also create MetaData.

How do I know if my video has MetaData?
If you play your video and the playhead doesn’t move, your movie probably doesn’t have any MetaData.

How can I make/repair MetaData?
To put MetaData into a FLV file you can use Buraks FLVMDI (FLV MetaData Injector)
FLVMDI is free to use, but you can’t distribute it. It looks very intimidating; [it’s a command line application] but there’s also a GUI which makes our lives much easier.
And the Digitalgroover flvplayer has a repair button to fix your FLV. It will not show the seekbar if there isn’t any MetaData.

Will repairing MetaData change the quality of the video
No, it will change in filesize (about 2kB on a file which was 2.014kB) but won’t change any video or audio quality.
Yes, it will change the viewing quality because you can see the playhead-position and the ability to search/skip parts.

Flash Flash video player

Flash Video (FLV) Player 1.3 released

About the project

Read more about it here

flvPlayer mck v1.3


Because y’all not knocking down the door for this player, I’ve given myself some time to clean up the source code. So just as in version 1.1 and version 1.2 no class files available but you can download the SWF, the readme.txt and some html files in a ZIP

Get your stuff here:


Flash Flash video player

Two buttons interfering with each other’s rollover / rollout

This is a problem which is kinda difficult to describe in short sentence. But this is a problem which I seem to be running into for a couple of weeks now.

Lets descibe the problem and I will illustrate with a banner (or a simple flv-player) example:
The banner (rectangle) is contains a short animation (20 kB) and when you rollover the banner a video (flv) starts to load and play. Onrollout the video will stop playing and hide. But the banner has also smaller pause / play and sound-off buttons on top of the bigger button which start / stop / etc the video.

So the big button starts playing / loading the video onrollover and onrollout stops playing / hides the video. The smaller buttons are stop / pause / play / sound-on / sound-off actions.
Not so difficult, but the tricky part is in the rollout of the big button: as soon as you rollover the smal buttons it means that the video stops playing and hides (rollout of the big button)….

With a little help of Nils we he cracked this nutt:

View the working example hereupdate #1: onMouseMove has to change to this.onMouseMove

this.big_btn.onRollOver = function() {
	this.onMouseMove = function () {
		if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
			// rollover state and action
			this._alpha = 50;
			_root.MyCustomRoll("rollover: big_btn");
		} else {
			// rollout state and action
			this._alpha = 90;
			_root.MyCustomRoll("rollout: big_btn");
			delete this.onMouseMove;
			// trace("no hit");
this.button1_btn.onRollOver = 
this.button2_btn.onRollOver = function () {
	this._alpha = 50;
	_root.MyCustomRollSmall(this._name + " onRollOver");
this.button1_btn.onRollOut = 
this.button2_btn.onRollOut = function () {
	this._alpha = 90;
	_root.MyCustomRollSmall(this._name + " onRollOut");
// debug / trace functions
function MyCustomRoll(txt:String) {
	this.debug_txt.text = txt;
function MyCustomRollSmall(txt:String) {
	this.debug2_txt.text = txt;
Flash video player

hmmmm to early released: FLVPlayer 1.2 has a couple of bugs

It seems that I was to “early” with this update, the Flash Video (FLV) Player 1.2 has some bugs which I have to look at before I start with version 1.3.

Bugs from version 1.2:

  • Again MTASC didn’t accept the code I wrote. But now I have no idea how to fix it (read more about the problem below).
  • The progress bar sometimes exceeds the 100%, I thought I had fixed that …
  • I lied about (x)html, because it’s simply not xhtml (I’m not going to fix that, so now it’s only html)
  • The autohide functionality I create doesn’t work properly (solution to this problem is posted here)

MTASC: Type error Video has no _x
while the livedocs assures me that it is possible.
I can’t find a solution to this problem: MTASC can’t be used to create SWF but Flash 8 doesn’t mind so I will use Flash create SWF. Hmmmm to bad, so there two options now : (1) Nicolas Cannasse made a mistake or (2) I did.
Do you know the answer, let me know.

Flash video player

Flash Video (FLV) Player 1.2 released

About the project

Read more about it here

flvPlayer mck v1.2


Because y’all not knocking down the door for this player, I’ve given myself some time to clean up the source code. So just as in version 1.1 no class files available but you can download the SWF, the readme and some (x)html a ZIP

Get your stuff here:


Flash video player

Flash Video (FLV) Player 1.1 released

About the project

Read more about it here

flvPlayer mck v1.1


I haven’t had the time to clean up the source code, so for now you can download the SWF and some other stuff in a ZIP

Get your stuff here:


Animation Flash Flash video player Open source / Freeware

Convert SWF to AVI (SWF2AVI or SWFtoAVI)

Update: are you looking for a userfriendly, free SWF>>AVI converter? Read also my post about SWF>>AVI

I was always under the assumption that you couldn’t export video with flash.
And yes I know …. there are couple ways to export video but they have some restrictions.

To export from Flash to Quicktime (MOV) means that you SWF can’t be higher than Flash 5 and in the standard export setting AVI and MOV can’t contain script, so everything has to be animated on root timeline even animation in movieclips don’t work.
There is also the possibility to export a sequence of images which has the same restriction…

swf2avi main

But since I use swf2avi I don’t have these restrictions no longer.
Swf2avi is very easy to use (what all programs with 1 aim should be). It’s quite intuitive! So no tutorial will be made by me, not even a small explanation.
Swf2avi will create a container (if necessary) to play your SWF frame-by-frame and creates screenshots of every frame in either BMP or JPG.
This sequence can be translated afterwards to AVI with swf2avi (with the possibility of compression), an AVI can be converted to FLV and play it with a flashVideoPlayer.

Flash video player Open source / Freeware

How can I make FLV (Flash Video) files?

Update #5: I’ve split this post in a couple specified post about this subject:
How can I make FLV with freeware / opensource software
Why do I need MetaData?
The best offline FLV player (not written yet)
And rewrite this post.

Update #3: Subtitle: “How can I make FLV with freeware / opensource software” or “How can I make FLV for free!”

For creating FLV I use Macromedia Flash 8 Video Encoder. I use it professionally (it’s part of Flash 8 Professional) but I understand that not everybody is able to get hold of this program.

How can we create FLV without an expensive program?

Riva FLV EncoderYou can use Riva FLV Encoder. This freeware program can be use to encode AVI, MPEG, Quicktime and WMV to FLV.
The same company also has a free Riva FLV Player which yoube used to play your FLV files.
Update #4: A program similar to Riva FLV Encoder is FLV Encoder from Digitalgroover.
It’s easy to use but for some reason I can’t get it to work with my computer at home (“Fail to transcode file!”), it works fine with the computer at work.
It’s freeware and they also have a FLV Player which is able to view and repair MetaData.

You can also use the FLV Player by Martijn de Visser for playing FLV.

Both FLV players come with their own installer so you can associate FLV files with one of these programs.

Update #2: VLC media player can also play FLV (and many more) but it seems to be an undocumented feature. And for some reason it doesn’t play all FLV files.

And of course you should use my FLV player for playing video on your site.

Flash video player

Flash Video (FLV) Player 1.0 released


For some time I’ve been wanting to build a Flash video player, that’s easy to use in html, but can also be used in other Flash (OOP) projects.
After some research I came to the conclusion that enough people ( have already created their version of this… and also particularly good!

But that’s OK: as a good Dutch friend of mine once said:

“Alles is al een keer gemaakt, maar nog niet door mij!?
(translation: “Everything is already created once, but not by me!? )

With this in mind, I made MY version of a flv-player: