# videolan/vlc

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/videolan-vlc).**

17,681 stars · 5,769 forks · C · gpl-2.0

## Links

- GitHub: https://github.com/videolan/vlc
- Homepage: http://www.videolan.org/vlc
- awesome-repositories: https://awesome-repositories.com/repository/videolan-vlc.md

## Topics

`c` `framework` `gplv2` `lgpl` `multimedia` `open-source` `vlc`

## Description

VLC is a cross-platform multimedia player and framework designed to decode and render virtually any audio or video format, network stream, or physical disc without requiring external codecs. It functions as both a standalone application and a portable library, providing a modular architecture that allows developers to integrate playback, filtering, and streaming capabilities into third-party software.

The project distinguishes itself through a highly modular plugin-based engine that supports real-time media processing, including format transcoding and the application of audio and video filters. It features a unified stream abstraction layer that normalizes inputs from diverse sources—such as local files, network protocols, and optical media—while offloading intensive decoding tasks to dedicated graphics hardware.

Beyond core playback, the system includes comprehensive tools for interface customization, allowing users to manage visual themes and layouts through a dedicated design environment. It also incorporates network-aware features for service discovery, remote streaming, and media library management, alongside security measures like computational proof-of-work challenges to regulate access and prevent resource exhaustion.

## Tags

### Graphics & Multimedia

- [Universal Players](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-playback/universal-players.md) — Decodes and renders virtually any audio or video format, network stream, or physical disc without external codecs.
- [Media Players](https://awesome-repositories.com/f/graphics-multimedia/media-players.md) — Decodes and renders virtually any audio or video format from local or network sources without requiring external codecs. ([source](https://wiki.videolan.org/Hacker_Guide))
- [Media Streaming](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming.md) — Ingests and plays back diverse media content from network protocols, physical discs, and local capture devices. ([source](https://www.videolan.org/vlc/features.html))
- [Transcoding Engines](https://awesome-repositories.com/f/graphics-multimedia/video-production/transcoding-engines.md) — Provides a core engine for converting media formats and containers to ensure compatibility across diverse playback systems.
- [Audio Processing](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-processing.md) — Applies audio and video filters or effects during playback to enhance quality and support spatial audio.
- [Hardware-Accelerated Decoders](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-manipulation/media-processing-workflows/stream-content-distribution/hardware-accelerated-decoders.md) — Offloads intensive video decoding tasks to dedicated graphics hardware for efficient playback. ([source](https://www.videolan.org/vlc/features.html))
- [Integration Frameworks](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/multimedia-processing/integration-frameworks.md) — Enables developers to integrate modular media processing and playback capabilities into third-party applications. ([source](https://www.videolan.org/vlc/libvlc.html))
- [Media Transcoders](https://awesome-repositories.com/f/graphics-multimedia/video-production/video-editing/media-transcoders.md) — Transcodes audio and video files between formats and packages raw data for storage or network broadcasting. ([source](https://cdn.jsdelivr.net/gh/videolan/vlc@master/README.md))
- [Optical Disc Playback](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-playback/optical-disc-playback.md) — Handles playback of physical discs including DVDs and Blu-ray with support for interactive menus.
- [Playback Engine Integration](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-playback/playback-engine-integration.md) — Provides modular libraries for integrating audio and video playback engines into custom software.
- [Optical Media Playback](https://awesome-repositories.com/f/graphics-multimedia/media-players/optical-media-playback.md) — Handles playback of physical discs including DVDs and Blu-ray with support for interactive menus and regional protection. ([source](https://www.videolan.org/vlc/libvlc.html))
- [Multimedia Processing](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/multimedia-processing.md) — Processes audio and video streams in real time to support visual effects, 3D audio, and tonemapping. ([source](https://www.videolan.org/vlc/libvlc.html))
- [Media Stream Pipelines](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/media-stream-pipelines.md) — Transmits audio and video content to external renderers and casting devices over network connections. ([source](https://www.videolan.org/vlc/download-appletv.html))
- [Network Media Access](https://awesome-repositories.com/f/graphics-multimedia/media-players/network-media-access.md) — Connects to remote servers and filesystems using standard protocols to browse and play media files. ([source](https://www.videolan.org/vlc/libvlc.html))

### Development Tools & Productivity

- [Open Source Software](https://awesome-repositories.com/f/development-tools-productivity/open-source-software.md) — Functions as a portable, open-source library providing core playback and hardware-accelerated rendering for third-party applications.
- [Security-Protected Media Retrievers](https://awesome-repositories.com/f/development-tools-productivity/integration-metadata-retrievers/media-metadata-retrievers/security-protected-media-retrievers.md) — Integrates specialized libraries to handle content protection and navigation protocols for encrypted or region-locked optical media. ([source](https://www.videolan.org/vlc/download-ubuntu.html))

### Software Engineering & Architecture

- [Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures.md) — Supports a modular plugin architecture for adding new codecs, filters, and output formats. ([source](https://wiki.videolan.org/Developers_Corner))
- [Media Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/domain-specific/media-plugin-architectures.md) — Implements a plugin-based architecture allowing developers to extend playback, filtering, and streaming capabilities through custom modules.
- [Plugin-Based Architectures](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures/plugin-based-architectures.md) — Extends core functionality by dynamically loading shared libraries for codecs, filters, and output modules at runtime.
- [Stream Abstractions](https://awesome-repositories.com/f/software-engineering-architecture/stream-abstractions.md) — Normalizes diverse inputs from network protocols, physical discs, and local files into a consistent internal data stream.
- [Library Interfaces](https://awesome-repositories.com/f/software-engineering-architecture/library-interfaces.md) — Exposes core media processing logic through a stable binary interface for cross-language integration.
- [Event Bus Systems](https://awesome-repositories.com/f/software-engineering-architecture/event-bus-systems.md) — Coordinates communication between playback engines and UI modules using an asynchronous event-driven architecture.

### Data & Databases

- [Media Transformation Chains](https://awesome-repositories.com/f/data-databases/data-processing-pipelines/data-processing/distributed-processing-frameworks/real-time-data-processors/media-transformation-chains.md) — Applies audio and video transformations sequentially to raw data streams before final rendering.

### User Interface & Experience

- [Playback Controllers](https://awesome-repositories.com/f/user-interface-experience/playback-controllers.md) — Provides comprehensive tools to adjust playback speed, synchronize tracks, and modify output through filters. ([source](https://www.videolan.org/vlc/download-ios.html))
- [Interface Customizers](https://awesome-repositories.com/f/user-interface-experience/interface-customizers.md) — Allows users to modify visual appearance using skins and extend playback capabilities via modular plugins. ([source](https://www.videolan.org/vlc/))
