Tree [03fa0e] master /

File Date Author Commit
 doc 2004-07-11 mathrick <> [a59285] Added URI helpers to deal with mms:// urls pars...
 pkgconfig 2014-05-30 John Lindgren John Lindgren [b9bbe1] Remove "Requires: glib-2.0" since libmms no lon...
 src 2015-11-19 Mahendra Narvariya Mahendra Narvariya [03fa0e] Fix possible NULL Pointer deref in mmsh.c
 .gitignore 2010-05-30 Hans de Goede Hans de Goede [97f50e] Rename .cvsignore files to .gitignore
 AUTHORS 2004-02-20 mathrick <> [7b7713] Filled in some info about project, corrected an...
 COPYING.LIB 2004-12-09 theuraeus <> [b4ab9a] Update build system to actually work and be a l...
 ChangeLog 2014-04-09 blutomat blutomat [b6ad8b] Release 0.6.4 2011-01-19 Hans de Goede Hans de Goede [4f8021] Fix wrong file references in Makefiles
 NEWS 2004-02-13 shawarma <> [59ed44] Initial revision
 README 2004-02-20 mathrick <> [7b7713] Filled in some info about project, corrected an...
 README.LICENSE 2004-02-20 mathrick <> [7b7713] Filled in some info about project, corrected an...
 README.mingw 2011-01-16 Hans de Goede Hans de Goede [04dc45] Really fix building with mingw 2007-12-16 jwrdegoede <> [c79491] New which just calls autoreconf, to ... 2015-11-19 John Lindgren John Lindgren [67d540] Fix build if strndup() is missing 2014-03-28 blutomat blutomat [2552e0] Some changes for more recent automake versions

Read Me


			 library for parsing
		      Microsoft Media Streaming

What is LibMMS?

LibMMS is common library for parsing mms:// and mmsh:// type network
streams. These are commonly used to stream Windows Media Video content
over the web. LibMMS itself is only for receiving MMS stream, it
doesn't handle sending at all. If you need streaming functionality,
look for other protocol, such as RT(S)P. MMS is legacy thing, being
closed with no specs and abandoned even by its creator, the Microsoft Corp.

Why LibMMS?

LibMMS was created out of need for common library that would remedy
current situation where each Free Software project maintains its own
implementation of MMS protocol handling, creating unnecessary code and
effort duplication and introducing feature disparity as not every
bugfix gets into each of them. It also addresses need for LGPL
licensed code for that task, as every current implementation is
licensed as GPL, thus knocking out many projects that do not use GPL

Howto LibMMS?

LibMMS is intended to be small and simple, being useful for any
project that needs MMS handling functionality. It is constructed in
such a way that allows plugging custom I/O implementation, thus being
easy to integrate with custom framework, and providing a way to add
timeouted or cancelable I/O etc.

Hmm, you said no specs? How so?

LibMMS code is based on amazing work done by SDP guys (
Without the specs they've reverse-engineered, there won't be any free
implementation of MMS handling today.

How is LibMMS licensed?

LibMMS is Free Software, licensed under GNU Library General Public
License. Original code comes from Xine project (,
and it got separated for number of reasons, one of them being desire
to provide non GPL projects with library they could use. There's a
number of valuable LGPL projects locked out by GPL libraries, besides
we strongly feel that GPL is bad license for a library, as it's not
library thing to mess with its users licensing by vague interpretations
of wether linking makes binary derived work. We want libraries to be
used, and for that, we need to stay clean.