» Software » MultiMediaLib library 

MultiMediaLib library

 

IntroductionMML Logo

MultiMediaLib (MML) aims at being a powerful yet simple means to work on uncompressed audio and video high quality sequences.

MML is thought to be used in the framework of multimedia research activities carried on by the DSPLab members and students.

Obviously, there exist a number of alternatives out there, which have a long history of widespread application, reliability, completeness, and speed. OpenCV (http://opencv.willowgarage.com/wiki/), for example, is one of such systems. However, if you need to understand what happens under the hood, you must write some C code, at some time. On the other side, Matlab (http://www.mathworks.com/) ha s a long history of usage in image processing, and we currently use it almost every day, but when you look at speed it is not a viable tool.

Please refer to the demo files (video_demo.c, audio_demo.c, etc.) that are provided to understand how you may take profit of the functions to read, process, and write multimedia data.

You may also want to download a couple of tools that you should use to work with uncompressed files:

If you think the logo is horrible, I agree. This is just a placeholder for a cool logo that will be designed in the next future (by the way, if you have an idea and you are good at Scalable Vector Graphics, send me your sketch, preferably in yellow and red tones).

Installation

This library is conceived to be as portable as possible among different OSes, although it is being mainly developped under Windows 32 bit. The currently tested platforms are:

  • Microsoft Windows 32/64 bit, Visual Studio
  • Linux 32/64 bit, gcc

If you need a compiler for the Windows environment, try to download the free

Moreover, you'll find that the library is heavily commented with Doxygen-style commands. If you follow a similar approach, your functions will be automatically documented and shown in this doc!! For more info and to download it,

This library may require external libraries, if certain settings are enabled in the configuration file, mmlconfig.h; they are

Thus, you must first install all the external libraries you want to use, then enable them in the configuration file, and finally compile MML. To this purpose, use the Visual Studio project or solution, or the gcc Makefile.

Adding your own functions

It is advisable that you create your own functions with a template similar to that used in existing ones. However, you should not add them directly to the library main files; instead, create files with names like mmlib_groupX.h and mmlib_groupX.c, if your functions are fine they will be added into the main files by the administrators.

Gallery

32x32 DCT
32x32 DCT

Superimposition of estimated motion field vectors
Superimposition of estimated motion field vectors
 

Resampled audio spectrum. obtained via temporally variant filtering
Resampled audio spectrum. obtained via temporally variant filtering

Licensing & download

The library is only available to DSPLab members and students. Grab it from the DSPLab server SMB exports.

Disclaimer

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Last update: 2014-11-14, 23:05:20