Hacker Guide/VLC source tree/src: Difference between revisions

From VideoLAN Wiki
Jump to navigation Jump to search
mNo edit summary
Linking to directory folders that exist, change wikilink text
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Note: Data taken verbatim from the API. To get an overview see [[VLC source tree]].
Note: Data taken verbatim from the API. To get an overview see [[{{#rel2abs:..}}]].


'''libvlccore''' is the core part of VLC. It is the heart of VLC, powering the [[LibVLC]] library and providing the internal infrastructure for a lot of functionality such as stream access, audio and video output, plugin handling, a thread system. All the libvlccore source files are located in the src/ directory and its subdirectories:
'''libvlccore''' is the core part of VLC. It is the heart of VLC, powering the [[LibVLC]] library and providing the internal infrastructure for a lot of functionality such as stream access, audio and video output, plugin handling, a thread system. All the libvlccore source files are located in the {{VLCSourceFolder|src}} directory and its subdirectories:


{| class="wikitable"
{| class="wikitable"
Line 10: Line 10:


|-
|-
|android/
|{{VLCSourceFolder|src/android}}
|Configuration code specific to VLC on [[Android]].
|Configuration code specific to VLC on [[Android]].
|-
|-
|audio_output/
|{{VLCSourceFolder|src/audio_output}}
|initializes the audio mixer, ie. finds the right playing frequency, and then resamples audio frames received from the decoder(s).
|initializes the audio mixer, ie. finds the right playing frequency, and then resamples audio frames received from the decoder(s).
|-
|-
|config/
|{{VLCSourceFolder|src/config}}
|Contains code to parse command line arguments and vlcrc files.
|Contains code to parse command line arguments and vlcrc files.
|-
|-
|darwin/
|{{VLCSourceFolder|src/darwin}}
|Configuration code specific to VLC on Mac OS X.
|Configuration code specific to VLC on Mac OS X.
|-
|-
|extras/
|{{VLCSourceFolder|src/extras}}
|Some extra functions to complement the C library.
|Some extra functions to complement the C library.
|-
|-
|input/
|{{VLCSourceFolder|src/input}}
|Opens an input module, reads packets, parses them and passes reconstituted elementary streams to the decoder(s).
|Opens an input module, reads packets, parses them and passes reconstituted elementary streams to the decoder(s).
|-
|-
|interface/
|{{VLCSourceFolder|src/interface}}
|Contains code for user interaction such as key presses and device ejection.
|Contains code for user interaction such as key presses and device ejection.
|-
|-
|misc/
|{{VLCSourceFolder|src/misc}}
|Miscellaneous utilities used in other parts of VLC, such as the thread system, the message queue, the object lookup system, the [[Hacker Guide/Variables|variable system]] or CPU detection.
|Miscellaneous utilities used in other parts of VLC, such as the thread system, the message queue, the object lookup system, the [[Hacker Guide/Variables|variable system]] or CPU detection.
|-
|-
|modules/
|{{VLCSourceFolder|src/modules}}
|Contains the mechanism of the modules/plugin system.
|Contains the mechanism of the modules/plugin system.
|-
|-
|network/
|{{VLCSourceFolder|src/network}}
|Contains code related to network access.
|Contains code related to network access.
|-
|-
|os2/
|{{VLCSourceFolder|src/os2}}
|Configuration code specific to VLC on OS/2.
|Configuration code specific to VLC on OS/2.
|-
|-
|playlist/
|{{VLCSourceFolder|src/playlist}}
|Manages playlist interaction such as stop, play, next, or random playback.
|Manages playlist interaction such as stop, play, next, or random playback.
|-
|-
|posix/
|{{VLCSourceFolder|src/posix}}
|Configuration code specific to VLC on POSIX.
|Configuration code specific to VLC on POSIX.
|-
|-
|stream_output/
|{{VLCSourceFolder|src/stream_output}}
|Initializes stream output muxers and encoders to enable [[streaming]] with VLC.
|Initializes stream output muxers and encoders to enable [[streaming]] with VLC.
|-
|-
|symbian/
|src/symbian
|Configuration code specific to VLC on Symbian.
|Configuration code specific to VLC on Symbian.
|-
|-
|test/
|{{VLCSourceFolder|src/test}}
|The short VLC test suite.
|The short VLC test suite.
|-
|-
|text/
|{{VLCSourceFolder|src/text}}
|Contains text-related functions, like character encodings, [[Unicode]], and IDNs.
|Contains text-related functions, like character encodings, [[Unicode]], and IDNs.
|-
|-
|video_output/
|{{VLCSourceFolder|src/video_output}}
|initializes the video display, gets all pictures and subpictures (ie. subtitles) from the decoder(s), optionally converts them to another format (such as YUV to RGB), and displays them.
|initializes the video display, gets all pictures and subpictures (ie. subtitles) from the decoder(s), optionally converts them to another format (such as YUV to RGB), and displays them.
|-
|-
|win32/
|{{VLCSourceFolder|src/win32}}
|Configuration code specific to VLC on [[Windows]]
|Configuration code specific to VLC on [[Windows]]
|}
|}


{{Hacker Guide}}
[[Category:Building]]
[[Category:Building]]

Latest revision as of 10:07, 15 February 2019

Note: Data taken verbatim from the API. To get an overview see Hacker Guide/VLC source tree.

libvlccore is the core part of VLC. It is the heart of VLC, powering the LibVLC library and providing the internal infrastructure for a lot of functionality such as stream access, audio and video output, plugin handling, a thread system. All the libvlccore source files are located in the src directory and its subdirectories:

Directory Name Directory Explanation
src/android Configuration code specific to VLC on Android.
src/audio_output initializes the audio mixer, ie. finds the right playing frequency, and then resamples audio frames received from the decoder(s).
src/config Contains code to parse command line arguments and vlcrc files.
src/darwin Configuration code specific to VLC on Mac OS X.
src/extras Some extra functions to complement the C library.
src/input Opens an input module, reads packets, parses them and passes reconstituted elementary streams to the decoder(s).
src/interface Contains code for user interaction such as key presses and device ejection.
src/misc Miscellaneous utilities used in other parts of VLC, such as the thread system, the message queue, the object lookup system, the variable system or CPU detection.
src/modules Contains the mechanism of the modules/plugin system.
src/network Contains code related to network access.
src/os2 Configuration code specific to VLC on OS/2.
src/playlist Manages playlist interaction such as stop, play, next, or random playback.
src/posix Configuration code specific to VLC on POSIX.
src/stream_output Initializes stream output muxers and encoders to enable streaming with VLC.
src/symbian Configuration code specific to VLC on Symbian.
src/test The short VLC test suite.
src/text Contains text-related functions, like character encodings, Unicode, and IDNs.
src/video_output initializes the video display, gets all pictures and subpictures (ie. subtitles) from the decoder(s), optionally converts them to another format (such as YUV to RGB), and displays them.
src/win32 Configuration code specific to VLC on Windows
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
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.