Huge quality difference between MP4 and Flash timelapse

Q&A about the latest versions
Post Reply
User avatar
Wim.Koornneef
Posts: 218
Joined: Wed Jan 03, 2007 4:11 pm
Location: The Netherlands
Contact:

Hello Forum,

When testing the new option for showing a timelapse as video stream I used a relatively small timelapse (37 images 3x2 special format max size 2880x1920 px). There was not a big difference between using MP4 or Flash for the movie but I preffered Flash because while loading I get a white screen with MP4 that is absent in Flash.

But now I am working on a timelapse almost twice the size and now I get a huge quality difference between the MP4 and the Flash timelapse movie.
With Flash not only the play is very jurky but also the image quality is very poor and MP4 is far better in play and rotation.

See a comparing screenshot:
http://www.dmmdh.nl/panos/PANO2VR/mp4-flash.png

Both the Flash and MP4 movie have the same bitrate, 4000 kb/s, the Flash file is 14 MB, the MP4 file 13MB.
I tried higher bitrates for the Flash movie but I have to set the rates above 5000 kb/s but then I get just a very little improvement in the image quality while the play almost stops. Besides that the file size increases a lot.
Coverting the QuickTime movie to Flash in 2 passes instead of 1 didn't helped.

So can it be that the Flash encoder of VisualHub is not performing as good as the MP4 encoder of QuickTime or is there another issue involved ?
I am running OSX on a MacBookPro 2GHz with 2GB RAM.

Of course the simplest solution is to avoid Flash from now on and only use MP4 for timelapse movies but I am not sure if all Windows machines with Flash9 can handle MP4 without installing extra software.

Any ideas ?

Best,
Wim

EDIT-1:
Issue is solved :-)
It turned out that when converting to Flash the converter didn't respect the frame rate of the QT movie with the 3x2 special format images.
After manually setting the frame rate in the advanced window to the proper speed the Flash quality is now as good as MP4.
Learning every day ;-)

EDIT-2:
Despite my message that the issue is solved I still can see that the MP4 encoder sometimes performs better.
In Flash I can see compression blocks that are absent in MP4.
See a comparing screenshot:
http://www.dmmdh.nl/panos/PANO2VR/mp4-flash-2.png

When increasing the bitrate of the Flash movie the blocks disapear but then the filsesize increases too.
The Flash movie is already larger then the MP4 one and I prefer to keep the filesize as small as possible so increasing the bitrate isn't the best option.

So the question remains:
Can MP4 be used on all Windows machines that are capable to play Flash9 movies without the need of installing additional decoder software ?
User avatar
thomas
Chief Gnome
Posts: 2620
Joined: Fri Sep 01, 2006 3:56 pm
Location: Vienna, Austria
Contact:

Can MP4 be used on all Windows machines that are capable to play Flash9 movies without the need of installing additional decoder software ?
Everyone (also Mac users!) need at least the Flash Player release 9.0.64 installed. Because of security problems with previous version that are heavily exploited it may be nice if you check for older version and force your users to upgrade.
MfG, Thomas
User avatar
Wim.Koornneef
Posts: 218
Joined: Wed Jan 03, 2007 4:11 pm
Location: The Netherlands
Contact:

Hello Thomas,

Your answer is clear.
thomas wrote: Everyone (also Mac users!) need at least the Flash Player release 9.0.64 installed. Because of security problems with previous version that are heavily exploited it may be nice if you check for older version and force your users to upgrade.
Unfortunately my skills for writing javascript are zero, perhaps you can help me with an example and tell me where to put it?

Best,
Wim
User avatar
thomas
Chief Gnome
Posts: 2620
Joined: Fri Sep 01, 2006 3:56 pm
Location: Vienna, Austria
Contact:

Wim.Koornneef wrote: Unfortunately my skills for writing javascript are zero, perhaps you can help me with an example and tell me where to put it?
Just make the code for embedding the panorama video look like this and it do the trick for you:

Code: Select all

<script language="JavaScript" type="text/javascript">
<!--
function htmlEncode(s) {
    var str = new String(s);
    str = str.replace(/&/g, "&");
    str = str.replace(/</g, "<");
    str = str.replace(/>/g, ">");
    str = str.replace(/"/g, """);
    return str;
}
// Check to see if the version meets the requirements for playback
if (!DetectFlashVer(9,0,64)) {
	var alternateContent = '<b>This content requires the Adobe Flash Player Version 9.0.64 or higher. ' + 
	'<a href="http://www.adobe.com/go/getflash/">Get Flash<' + '/a><' + '/b><br><br>';
	document.write(alternateContent);  // insert non-flash content
} else {
	var flashvars,pano,video;
	video='<video url="panovideo_medium.flv"/>';
	flashvars="video=" + htmlEncode(video);
	  p2q_EmbedFlash('videopano.swf', '600','400',
	    'bgcolor', '#f0f0f0',
	    'play', 'true',
	    'cache','true',
		'allowFullScreen','true',
	    'autoplay','true',
		'FlashVars',flashvars);
} 
// -->
</script>
In the line with var alternateContent = '... you can find the text presented to the user when he doesn't has the required version
MfG, Thomas
User avatar
Wim.Koornneef
Posts: 218
Joined: Wed Jan 03, 2007 4:11 pm
Location: The Netherlands
Contact:

Hello Thomas,

Thanks a lot for the code, it will now be easy to modify the HTML script.

Best,

Wim.
Post Reply