Adobe FLash Player: h.264 and File Extensions …
Today I spent a few hours studying the documentation posted on various websites discussing the new Adobe Flash Player spec. and support for the h.264 video codec.
Before I continue, let me stress the new Adobe player is beta software with potential compatibility and stability issues. If you intend to install the new player, make sure you read the documentation provided by Adobe, specifically the importance of removing any previous installs of the Flash Player. In terms of compatibility, please be advised that embedded h.264 video will not play in a browser unless the new version of the Adobe Flash Player is installed on the local system. If you are distributing your media using this browser plugin, my suggestion would be to hold off migrating until the player is released on a mass scale minus the beta classification. What I do suggest is that you familiarize yourself with a few important issues.
As Doug Kaye points out in his latest post - this is a must read article , written by an Adobe Flash Player engineer. Besides the surface data and specifications, I found this particuarly interesting:
You can load and play .mp4,.m4v,.m4a,.mov and .3gp files using the same NetStream API you use to load FLV files now. We did not add any sort of new API in the Flash Player. All your existing video playback front ends will work as they are.
As long as they do not look at the file extension that is, though renaming the files to use the .flv file extension might help your component. The Flash Player itself does not care about file extensions, you can feed it .txt files for all it matters. The Flash Player always looks inside the file to determine what type of file it is.
Keeping this in mind, I removed the prior version of the Adobe plugin on my system, downloaded and installed today’s release as well as this popular Flash Media Player. I tweaked the source code for the XML playlist file as well as the destination html page, and uploaded the files to my server. I then encoded a short clip consisting of DV NTSC video using the h.264 codec within the MPEG-4 container. I maintained the native frame rate [29.97 fps], sized the video accordingly based on the html code reference that I specified, and set a data rate of 1500 kbps. On the audio side … AAC, mono, 44.1kHz, 128 kbps. Upon completion of the encode session, I renamed the file test.mov and sent it up to the server.
No luck with playback.
A snippet of the html syntax in the media player reference page points to a jpeg image that acts as a poster-frame for the player. Poster-frames offer a pleasing static visual introduction prior to the commencement of playback. Well my poster-frame was visible, but as I said, no luck with playback of the embedded video file. I assumed one of two issues: unsupported encoding parameters or compatibility issues with the media player.
Guess what? Changing the video file extension from .mov to .flv solved the problem. As soon as I edited the source code and re-saved the file on the server, the file played back perfectly. I was able to view high quality h.264 video and listen to high quality AAC audio as expected. Now I am far from a Flash expert, but I’m guessing that my media player of choice is limited to supporting files with the .flv extension - just as our Adobe engineer stated. The Adobe Flash plugin could care less about file extensions. As long as the embedded video meets the spec., the Adobe plugin will sense what is embedded in the media player source code and support playback.
** Remember: Beta Software. Install at your own risk.




What if the audience viewer does not have the appropriate Flash plugin to play the videos (Flash video, or H264 media), would the MP4 video be playable in other players (QT, Real,etc.?
Hi,
In this case the file would need to be available independent of the player. Also, to the best of my knowledge - software is required in order to access or download a source file from a flash player embedded in a browser in a supported environment.
-ptfigg.
Hi,
I am trying to get this to work for a local file played from a DVD with Flash Player 9 Beta. I have tried changing the extension to .flv and it doesn’t seem to be working. Does this method work for locally playing files?
I would appreciate any help you can offer!
Thanks,
- SKOP
SKOP,
Remember that we are dealing with a browser plugin. The incorporated source file needs to live in a server directory and referenced in the source code that controls the player’s attributes, settings, and embedded media.
By the way - today’s flash plugin update alleviates the necessity to change the file extension. I was able to embed a standard h.264 Quicktime movie with an .mp4 file extension with no problem …
-paul.
Thanks!
Its a pretty stable beta.
Skop, im not sure it will do that.
why do you want to do that anyways? flv’s are useless (=.=)
I just convert things from flv to avi.
Is there such a thing as a flash reference movie? I am renaming mp4 files to flv to get them to play in a flash player on my site, but I also want to have an iTunes compatible feed without having to have multiple copies of the file. I already tried making a quicktime reference movie that points to the flv (opens in quicktime, won’t open in iTunes). If I could instead have my .mp4 with it’s regular extension but have an flv reference movie that I could feed to the flash player, all my problems would be solved.