Video Conversion Blog
Linux Static Ffmpeg Binaries Released!
Written by marpada
Hi all, and welcome to video-conversion-blog.com!
We just pubilshed our first release of Linux static compiled ffmpeg builds. You can find them in our download area.
Introducing Ffmpeg-php
Written by Dave Horsfall
Ffmpeg-php is an extension for PHP that adds an easy to use, object-oriented API for accessing and retrieving information from video and audio files. It has methods for returning frames from movie files as images that can be manipulated using PHP's image functions. This works well for automatically creating thumbnail images from movies. ffmpeg-php is also useful for reporting the duration and bitrate of audio files (mp3, wma...). ffmpeg-php can access many of the video formats supported by ffmpeg (mov, avi, mpg, wmv...)
YouTube goes HTML5
Written by marpada
A few weeks ago YouTube published the HTML5 player beta of the site. This move was promptly followed by Vimeo. The HTML5 specification, currently under revision and that won't be approved by the W3C soon, introduces, among many other features, the two new audio and video tags that will enable the streaming of audio and video files natively by HTML5 capable browsers, without need of external plugins like Adobe Flash Player (de-facto standard for multimedia streaming) or Microsoft's Silverlight. This is great news if you, like me, are sick and tired of the shameful implementation of the Adobe Flash plugin in non-Microsoft OS: awful performance, lack of stability and lagged native 64bit support. Also great if you want to access popular video sites from an iPhone or other portable plattform without Flash Support: just use a HTML5 compliant browser and you're done. Great, isn't it?
If you are wondering which video and audio formats will be supported by the HTML standard, the answer is that it is not specified, and that is where the problems begin. The aforementioned sites currenty encode their HD videos with the H.264 codec (already supported by Flash), so to benefit from the HTML5 player a HTML5 H264-enabled browser is needed. Currently there are no many options, just Google Chrome (not in Linux yet :( ) and Safari (YouTube HTML5 page mentioning IE with the Chrome Frame installed sounds like a bad joke to me).
What's up with Mozilla? Well, the H.264 codec is a patented technology and the yearly licensing fee is of several million dollars, which can be hardly afforded by and Open Source project. And what it is more important, should a propietary patented format play such an important role of the new web standard, when there exists a free open equivalent technology like Ogg Theora? A very interesting article by Mozilla's Vice President Mike Shaver can be found here. Looks like the honey moon between Google and the Mozilla Foundation came to an end not so abruptly (yes, the release of Google Chrome was the first nail).
It looks like 2010 will be a very interesting year in terms of video formats and web standards discussion. Let's hope that the dominant player can learn of the mistakes of its predecessor and, at the end, common good, net neutrality and open standards prevail over business interests.
Introducing Ffmpeg
Written by Dave Horsfall
FFmpeg is a computer program that can record, convert and stream digital audio and video in numerous formats. FFmpeg is a command line tool that is composed of a collection of free software / open source libraries. It includes libavcodec, an audio/video codec library used by several other projects, and libavformat, an audio/video container mux and demux library. The name of the project comes from the MPEG video standards group, together with "FF" for "fast forward". The logo uses a zigzag pattern that shows how MPEG video codecs handle entropy encoding.
The project was started by Fabrice Bellard (using the pseudonym "Gerard Lantau"), and is now maintained by Michael Niedermayer. Many FFmpeg developers are also part of the MPlayer project, and FFmpeg is hosted at the MPlayer project server.
FFmpeg is developed under GNU/Linux, but it can be compiled under most operating systems, including Apple Inc. Mac OS X, Microsoft Windows and AmigaOS. Most computing platforms and microprocessor instruction set architecture are also supported, like x86 (IA-32 and x86-64), PPC (PowerPC), ARM, DEC Alpha, SPARC, and MIPS architecture.
Recently version .5 of FFmpeg was released, although previously FFmpeg developers have always recommended using the latest neutral build from their source code Subversion version control system as development attempts to maintain a stable trunk. Published under the GNU Lesser General Public License or GNU General Public License (depending on which sub-libraries one would include), FFmpeg is free software.
There are two video codecs and one video container invented in the FFmpeg project during its development. The two video codecs are the lossless "FFV1", and the lossless or lossy "Snow codec", for which a version 1.0 is still in development, and the video container is "NUT" which is also currently being actively developed.
Components
The project is made of several components:
- ffmpeg is a command line tool to convert one video file format to another. It can also grab and encode in real time from a TV card.
- ffserver is an HTTP and RTSP multimedia streaming server for live broadcasts. It can also time shift live broadcast.
- ffplay is a simple media player based on SDL and on the FFmpeg libraries.
- libavcodec is a library containing all the FFmpeg audio/video encoders and decoders. Most codecs were developed from scratch to ensure best performance and high code reusability.
- libavformat is a library containing demuxers and muxers for audio/video container formats.
- libavutil is a helper library containing routines common to different parts of FFmpeg. This library include adler32, crc, md5, sha1, lzo decompressor, Base64 encoder/decoder, des encrypter/decrypter, rc4 encrypter/decrypter and aes encrypter/decrypter.
- libpostproc is a library containing video postprocessing routines.
- libswscale is a library containing video image scaling routines.
- libavfilter is the substitute for vhook which allows the video to be modified or examined between the decoder and the encoder.
Legal status of codecs
FFmpeg contains more than 100 codecs most of which do not just store uncompressed data. At least all codecs that compress information could be claimed by patent holders. Such claims may be enforceable in countries like the United States which have implemented software patents, but are considered unenforceable or void in countries that have not implemented software patents. Furthermore, many of these codecs are only released under terms that forbid reverse engineering, even for purposes of interoperability. However, these terms of use are forbidden in certain countries. For example, some European Union nations have not implemented software patents and/or have laws expressly allowing reverse engineering for purposes of interoperability.
Most GNU/Linux distributions include a stripped version of FFmpeg only including certain codecs to avoid legal complications, instead providing such software at unofficial repositories.
More Articles...
Page 1 of 2
«StartPrev12NextEnd»