Multimedia & File Formats

By admin, 13 April, 2025

An open format is a file format for storing digital data, defined by a published specification usually maintained by a standards organization, and which can be used and implemented by anyone. For example, an open format can be implemented by both proprietary and free and open-source software, using the typical software licenses used by each. In contrast to open formats, closed formats are considered trade secrets. Open formats are also called free file formats if they are not encumbered by any copyrights, patents, trademarks or other restrictions (for example, if they are in the public domain) so that anyone may use them at no monetary cost for any desired purpose:

Imaging

  • APNG: It allows for animated PNG files that work similarly to animated GIF files.
  • AVIF: An image format using AV1 compression.
  • FLIF: Free Lossless Image Format.
  • GBR: a 2D binary vector image file format, the de facto standard in the printed circuit board (PCB) industry
  • GIF: CompuServe's Graphics Interchange Format (openly published specification, but patent-encumbered by a third party; became free when patents expired in 2004)
  • JPEG 2000: an image format standardized by ISO/IEC
  • MNG: moving pictures, based on PNG
  • OpenEXR: a high dynamic range imaging image file format, released as an open standard along with a set of software tools created by Industrial Light and Magic (ILM).
  • PNG: a raster image format standardized by ISO/IEC
  • SVG: a vector image format standardized by W3C
  • WebP: image format developed by Google
  • XPM: image file format used by the X Window System

Audio

  • ALAC: lossless audio codec, previously a proprietary format of Apple Inc.
  • FLAC: lossless audio codec
  • DAISY Digital Talking Book: a talking book format
  • Musepack: an audio codec
  • MP3: lossy audio codec, previously patented
  • Ogg: container for Vorbis, FLAC, Speex and Opus (audio formats) & Theora (a video format), each of which is an open format
  • Opus: a lossy audio compression format developed by the IETF. Suitable for VoIP, videoconferencing (just audio), music transmission over the Internet and streaming applications (just audio).
  • Speex: speech codec
  • Vorbis: a lossy audio compression format.
  • WavPack: "Hybrid" (lossless/lossy) audio codec

Video

  • Dirac: a video compression format supporting both lossless and lossy compression
  • Matroska (mkv): container for all type of multimedia formats (audio, video, images, subtitles)
  • WebM: a video/audio container format
  • Theora: a lossy video compression format.

List of Open-source Codecs

This is a listing of open-source codecs—that is, open-source software implementations of audio or video coding formats.

Audio Codecs

  • FLAC: Lossless codec developed by Xiph.Org Foundation.
  • LAME: Lossy compression (MP3 format).
  • TooLAME/TwoLAME: Lossy compression (MP2 format).
  • Musepack: Lossy compression; based on MP2 format, with many improvements.
  • Speex: Low bitrate compression, primarily voice; developed by Xiph.Org Foundation. Deprecated in favour of Opus according to www.speex.org.
  • CELT: Lossy compression for low-latency audio communication
  • libopus: A reference implementation of the Opus format, the IETF standards-track successor to CELT. (Opus support is mandatory for WebRTC implementations.)
  • libvorbis: Lossy compression, implementation of the Vorbis format; developed by Xiph.Org Foundation.
  • iLBC: Low bitrate compression, primarily voice
  • iSAC: Low bitrate compression, primarily voice; (free when using the WebRTC codebase)
  • TTA: Lossless compression
  • WavPack: Hybrid lossy/lossless
  • Bonk: Hybrid lossy/lossless; supported by fre:ac (formerly BonkEnc)
  • Apple Lossless: Lossless compression (MP4)
  • Fraunhofer FDK AAC: Lossy compression (AAC)
  • FFmpeg: codecs in the libavcodec library, e.g. AC-3, AAC, ADPCM, PCM, Apple Lossless, FLAC, WMA, Vorbis, MP2, etc.
  • FAAD2: open-source decoder for Advanced Audio Coding. There is also FAAC, the same project's encoder, but it is proprietary (but still free of charge).
  • libgsm: Lossy compression (GSM 06.10)
  • opencore-amr: Lossy compression (AMR and AMR-WB)
  • liba52: a free ATSC A/52 stream decoder (AC-3)
  • libdca: a free DTS Coherent Acoustics decoder
  • Codec2: Low bitrate compression, primarily voice

Video Codecs

  • x264: H.264/MPEG-4 AVC implementation. x264 is not a codec (encoder/decoder); it is just an encoder (it cannot decode video).
  • OpenH264: H.264 baseline profile encoding and decoding
  • x265: An encoder based on the High Efficiency Video Coding (HEVC/H.265) standard.
  • Xvid: MPEG-4 Part 2 codec, compatible with DivX
  • libvpx: VP8 and VP9 implementation; formerly a proprietary codec developed by On2 Technologies, released by Google under a BSD-like license in May 2010.
  • FFmpeg codecs: Codecs in the libavcodec library from the FFmpeg project (FFV1, Snow, MPEG-1, MPEG-2, MPEG-4 part 2, MSMPEG-4, WMV2, SVQ1, MJPEG, HuffYUV and others). Decoders in the libavcodec (H.264, SVQ3, WMV3, VP3, Theora, Indeo, Dirac, Lagarith and others).
  • Lagarith: Video codec designed for strong lossless compression in RGB(A) colorspace (similar to ZIP/RAR/etc.)
  • libtheora: A reference implementation of the Theora format, based on VP3, part of the Ogg Project
  • Dirac as dirac-research: a wavelet based codec created by the BBC Research, and Schrödinger, an implementation developed by David Schleef.
  • Huffyuv: Lossless codec from BenRG
  • Daala: Experimental Video codec which was under development by the Xiph.Org Foundation and finally merged into AV1.
  • Thor: Experimental royalty free video codec which was under development by Cisco Systems, and merged technologies into AV1.
  • Turing: A High Efficiency Video Coding (HEVC/H.265) encoder implemented by BBC Research.
  • libaom: Reference implementation for the royalty free AV1 video coding format by AOMedia, inheriting technologies from VP9, Daala and Thor.

Gstreamer Overview and Features

GStreamer is an open-source multimedia framework designed to build complex media-handling pipelines. It is widely used for developing media applications such as video editors, streaming media broadcasters, and media players. Here are some key aspects of GStreamer:

Cross-Platform Support:
GStreamer is available on various operating systems, including Linux, Windows, macOS, and Android.

Modular Architecture:
It uses a pipeline-based architecture where data flows through a series of processing elements (plugins). This modularity allows for easy extension and customization.

Plugins and Elements:
GStreamer includes a wide range of plugins for different types of media processing, such as encoding, decoding, filtering, muxing, demuxing, and more. Users can also develop custom plugins to extend its functionality.

Pipeline-based Processing:
Media data is processed in pipelines, which can consist of multiple elements chained together. Each element performs a specific function, such as reading data from a file, decoding audio/video, applying filters, or rendering output.

Media Format Support:
It supports a broad array of media formats and codecs, thanks to its extensive plugin ecosystem. This includes popular formats like MP3, AAC, H.264, VP8, AVI, and MP4.

Synchronization and Timing:
GStreamer provides precise control over media synchronization and timing, which is crucial for applications requiring accurate playback, such as live streaming and video conferencing.

High Performance:
It is designed for high performance, capable of handling complex media processing tasks efficiently. GStreamer can leverage hardware acceleration when available to improve performance.

Integration with Other Technologies:
GStreamer can be integrated with other multimedia frameworks and libraries, such as PulseAudio, JACK, and OpenMAX, to enhance its capabilities and performance.

Community and Documentation:
GStreamer has an active community of developers and users, with extensive documentation, tutorials, and support forums available. This helps users to get started and troubleshoot any issues they encounter.

Use Cases:
GStreamer is used in various applications, including media playback, streaming solutions, video editing, multimedia processing, and more. It is employed in both consumer and professional contexts, demonstrating its versatility and reliability.

Overall, GStreamer is a powerful and flexible tool for multimedia development, enabling the creation of sophisticated media applications and services.

LMMS Overview and Features

LMMS (Linux MultiMedia Studio) is a free, open-source digital audio workstation (DAW) software. It's designed for creating music, producing sound effects, and mixing audio tracks. Here are some key features and details about LMMS:

Platform Support: 

LMMS is cross-platform, meaning it works on Linux, Windows, and macOS.

User Interface:

It provides a graphical user interface (GUI) that includes a song editor, beat/bassline editor, piano roll, automation editor, and a virtual mixer.

Instrument and Effect Plugins:

LMMS comes with a variety of built-in instrument and effect plugins. It supports VST (Virtual Studio Technology) plugins, allowing users to expand their library with third-party instruments and effects.

MIDI Support:

It supports MIDI input, enabling users to connect MIDI keyboards and other controllers to interact with the software.

Sample Support:

Users can import samples and use them within their projects, supporting various formats like WAV, OGG, and MP3.

Track Editing:

It features tools for track automation, volume, pitch adjustments, and more, facilitating detailed sound design and mixing.

Community and Resources:

As an open-source project, LMMS has a vibrant community contributing to its development. Users can access tutorials, forums, and a repository of shared projects and presets.

Project Compatibility:

LMMS supports project files from other DAWs to some extent, such as FL Studio projects, providing flexibility for users transitioning from other software.

Overall, LMMS is a versatile tool for both amateur and professional musicians, sound designers, and producers, offering a comprehensive suite of tools for creating and manipulating audio.