Difference between revisions of "Hacker Guide/VLC source tree/src"

From VideoLAN Wiki
Jump to navigation Jump to search
m
Line 11: Line 11:
 
|-
 
|-
 
|android/
 
|android/
|TODO
+
|Configuration code specific to VLC on [[Android]].
 
|-
 
|-
 
|audio_output/
 
|audio_output/
Line 17: Line 17:
 
|-
 
|-
 
|config/
 
|config/
|TODO
+
|Contains code to parse command line arguments and vlcrc files.
 
|-
 
|-
 
|darwin/
 
|darwin/
|TODO
+
|Configuration code specific to VLC on Mac OS X.
 
|-
 
|-
 
|extras/
 
|extras/
|TODO
+
|Some extra functions to complement the C library.
 
|-
 
|-
 
|input/
 
|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/
 
|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/
 
|misc/
|miscellaneous utilities used in other parts of libvlc, such as the thread system, the message queue, CPU detection, the object lookup system, or platform-specific code.
+
|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.
 
|-
 
|-
 
|modules/
 
|modules/
|TODO
+
|Contains the mechanism of the modules/plugin system.
 
|-
 
|-
 
|network/
 
|network/
|TODO
+
|Contains code related to network access.
 
|-
 
|-
 
|os2/
 
|os2/
|TODO
+
|Configuration code specific to VLC on OS/2.
 
|-
 
|-
 
|playlist/
 
|playlist/
|manages playlist interaction such as stop, play, next, or random playback.
+
|Manages playlist interaction such as stop, play, next, or random playback.
 
|-
 
|-
 
|posix/
 
|posix/
|TODO
+
|Configuration code specific to VLC on POSIX.
 
|-
 
|-
 
|stream_output/
 
|stream_output/
|TODO
+
|Initializes stream output muxers and encoders to enable [[streaming]] with VLC.
 
|-
 
|-
 
|symbian/
 
|symbian/
|TODO
+
|Configuration code specific to VLC on Symbian.
 
|-
 
|-
 
|test/
 
|test/
|TODO
+
|The short VLC test suite.
 
|-
 
|-
 
|text/
 
|text/
|TODO
+
|Contains text-related functions, like character encodings, [[Unicode]], and IDNs.
 
|-
 
|-
 
|video_output/
 
|video_output/
Line 65: Line 65:
 
|-
 
|-
 
|win32/
 
|win32/
|TODO
+
|Configuration code specific to VLC on [[Windows]]
 
|}
 
|}
  
 
[[Category:Building]]
 
[[Category:Building]]

Revision as of 04:41, 4 November 2013

Note: Data taken verbatim from the API. To get an overview see 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
android/ Configuration code specific to VLC on Android.
audio_output/ initializes the audio mixer, ie. finds the right playing frequency, and then resamples audio frames received from the decoder(s).
config/ Contains code to parse command line arguments and vlcrc files.
darwin/ Configuration code specific to VLC on Mac OS X.
extras/ Some extra functions to complement the C library.
input/ Opens an input module, reads packets, parses them and passes reconstituted elementary streams to the decoder(s).
interface/ Contains code for user interaction such as key presses and device ejection.
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.
modules/ Contains the mechanism of the modules/plugin system.
network/ Contains code related to network access.
os2/ Configuration code specific to VLC on OS/2.
playlist/ Manages playlist interaction such as stop, play, next, or random playback.
posix/ Configuration code specific to VLC on POSIX.
stream_output/ Initializes stream output muxers and encoders to enable streaming with VLC.
symbian/ Configuration code specific to VLC on Symbian.
test/ The short VLC test suite.
text/ Contains text-related functions, like character encodings, Unicode, and IDNs.
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.
win32/ Configuration code specific to VLC on Windows