A multimedia framework is a software framework that handles media on a computer and through a network. A good multimedia framework offers an intuitive API and a modular architecture to easily add support for new audio, video and container formats and transmission protocols. It is meant to be used by applications such as media players and audio or video editors, but can also be used to build videoconferencing applications, media converters and other multimedia tools. Data is processed among modules automatically, it is unnecessary for app to pass buffers between connected modules one by one. In contrast to function libraries, a multimedia framework provides a run time environment for the media processing. Ideally such an environment provides execution contexts for the media processing blocks separated from the application using the framework. The separation supports the independent processing of multimedia data in a timely manner. These separate contexts can be implemented as threads. See also AVFoundation, Apple QuickTime multimedia framework replacement DirectShow, a multimedia framework and API produced by Microsoft for software developers to perform various operations with media files or streams. FFmpeg, a cross-platform multimedia framework to decode, encode, transcode, mux, demux, stream, filter and play media. GStreamer, a cross-platform pipeline-based multimedia framework Multimedia software Media Foundation, a COM-based multimedia framework pipeline and infrastructure platform provided by Microsoft for digital media in Windows Vista & Windows 7. Media Lovin' Toolkit, an open-source multimedia framework for television editing. Phonon, a cross-platform multimedia framework from the Qt toolkit QuickTime, a multimedia framework provided by Apple for Mac OS and Windows VLC Media Player, a media player and a multimedia framework by the VideoLAN project.