Difference between revisions of "Hacker Guide"
Jump to navigation
Jump to search
Line 28: | Line 28: | ||
'''Input''' | '''Input''' | ||
*[[Documentation:Hacker's Guide/Access|Access]] | *[[Documentation:Hacker's Guide/Access|Access]] | ||
− | *[[Documentation:Hacker's Guide/Demux|Demuxer]] | + | *[[Documentation:Hacker's Guide/Demux|Demuxer]] |
+ | *[[Documentation:Hacker's Guide/Access_Demux|Access-Demuxer]] | ||
*[[Documentation:Hacker's Guide/Decoder|Decoder]] | *[[Documentation:Hacker's Guide/Decoder|Decoder]] | ||
Revision as of 00:48, 12 November 2010
Contents
Introduction
VLC media player is a large and complex piece of software. It also uses a large number of dependencies.
Being open source allows VLC development to benefit from a large community of developers worldwide.
However, entering a project such as VLC media player can be long and complex for new developers.
This guide seeks to help understanding the VLC code base and VLC internals to quickly get up to speed.
NB: this guide is not about compiling VLC.
The layers of VLC and libVLC
VLC's Core / libVLCcore
The most important (and probably most complex) part of VLC is the core, located in src/ in the repository.
- Introduction to the core This is a MUST-READ for developers.
- VLC modules loading
- Input (slightly outdated)
- VLC Object Management
- VLC variables TODO
- VLM Internals
Plugins / Modules
Input
Audio
Video
Modules types not documented (yet)
libVLC and bindings
- Using libvlc
- bindings
VLC source code overview
Coding for VLC
Authors
- Derk-Jan Hartman
- Christophe Massiot
- Samuel Hocevar
- Geoffroy Couprie
- Jean-Baptiste Kempf
This page is part of official VLC media player Documentation (User Guide • Streaming HowTo • Hacker Guide • Modules)
Please read the Documentation Editing Guidelines before you edit the documentation
Please read the Documentation Editing Guidelines before you edit the documentation
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.