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

From VideoLAN Wiki
Jump to navigation Jump to search
m
m (adding a means of going to VLC source tree)
Line 1: Line 1:
Note: Data taken verbatim from the API.
+
Note: Data taken verbatim from the API. To get an overview see [[VLC source tree]].
  
 
LibVLC is the core part of VLC. It is a library providing an interface for programs such as VLC to a lot of functionalities such as stream access, audio and video output, plugin handling, a thread system. All the LibVLC source files are located in the src/ directory and its subdirectories:
 
LibVLC is the core part of VLC. It is a library providing an interface for programs such as VLC to a lot of functionalities such as stream access, audio and video output, plugin handling, a thread system. All the LibVLC source files are located in the src/ directory and its subdirectories:
Line 31: Line 31:
 
|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 libvlc, such as the thread system, the message queue, CPU detection, the object lookup system, or platform-specific code.
 
|}
 
|}
 
  
 
[[Category:Building]]
 
[[Category:Building]]

Revision as of 11:23, 7 February 2008

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

LibVLC is the core part of VLC. It is a library providing an interface for programs such as VLC to a lot of functionalities such as stream access, audio and video output, plugin handling, a thread system. All the LibVLC source files are located in the src/ directory and its subdirectories:

Directory Name Directory Explanation
interface/ contains code for user interaction such as key presses and device ejection.
playlist/ manages playlist interaction such as stop, play, next, or random playback.
input/ opens an input module, reads packets, parses them and passes reconstituted elementary streams to the decoder(s).
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.
audio_output/ initializes the audio mixer, ie. finds the right playing frequency, and then resamples audio frames received from the decoder(s).
stream_output TODO
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.