Difference between revisions of "VLC Developers Corner"

From VideoLAN Wiki
Jump to navigation Jump to search
m (typo)
 
(163 intermediate revisions by 8 users not shown)
Line 1: Line 1:
__NOTOC__
+
__NOTOC__ __NOEDITSECTION__
 +
<!-- Beginning of the banner section -->
 +
{{Banner
 +
|description=A directory of everything to do with the development of VideoLAN's projects.<br />
 +
Check [[VLC media player|VLC's page]] to get info on VLC.
 +
|links=
 +
* [[VideoLAN]]
 +
* [[VLC media player]]
 +
** [https://addons.videolan.org Add-ons]
 +
* [[Documentation:Documentation|Documentation]]
 +
* [[VideoLAN_Sites#Developers|Developers' Sites]]
 +
|links2=
 +
* [https://www.videolan.org/developers Developer Zone]
 +
* [https://nightlies.videolan.org Nightly builds]
 +
* [https://jenkins.videolan.org Automatic builds]
 +
|links3=
 +
* [https://code.videolan.org/videolan/vlc/-/issues bugs, features, roadmap]
 +
* [https://www.videolan.org/videolan/mirrors.html Mirrors check]
 +
* [ftp://ftp.videolan.org/pub/videolan/ Main FTP]
 +
}}
 +
<!-- End of the banner section -->
  
Welcome to VLC's developers corner. This is a directory of everything to do with the development of VLC. If you are looking for information about downloading or using VLC, you should have a look at [http://www.videolan.org our website].
+
== Coding on VLC ==
 +
* [[Getting Started At Coding|Get started at coding on VLC]]
 +
* Get the [[GetTheSource|Source Code]] and [[Compile VLC]]
 +
* You might be interested in our [[Mini Projects]] or [[GCodeIn_Ideas|Janitorial projects]]
 +
* Read our [[Hacker_Guide|Hacker's Guide]]
 +
** [[Hacker_Guide/Core|Introduction to VLC's core]]
 +
** [[Hacker Guide/How To Write a Module|How to write a module]]
 +
** [[Documentation:VLC_Modules_Loading|How VLC modules load]]
 +
* [https://www.videolan.org/developers/vlc/doc/doxygen/html/ Code documentation]
 +
* [[Code Conventions]]
  
{| cellspacing="3"
+
=== VLC development links ===
|- valign="top"
+
* [https://code.videolan.org/videolan/vlc/-/issues/ GitLab] list of bugs
|width="40%" class="MainPageBG" style="border: 1px solid #ffc9c9; color: #000; background-color: #fff3f3"|
+
* vlc-devel [https://www.videolan.org/developers/lists.html mailing list], mailing list.
 +
* [https://www.videolan.org/developers/i18n/ Translation information and stats]
 +
* [https://www.openhub.net/p/vlc Open Hub] statistics
 +
* [https://jenkins.videolan.org Jenkins] (Automatic builds)
 +
* [[Nightly build]]s
 +
* Launchpad ([https://bugs.launchpad.net/distros/ubuntu/+source/vlc/+bugs?field.searchtext=vlc&orderby=-date_last_updated&search=Search&field.status%3Alist=Unconfirmed&field.status%3Alist=Confirmed&field.status%3Alist=In+Progress&field.status%3Alist=Needs+Info&field.status%3Alist=Fix+Committed&field.assignee=&field.owner=&field.omit_dupes=on&field.has_patch=&field.has_no_package= recent bug changes]) ([https://bugs.launchpad.net/distros/ubuntu/+source/vlc/+bugs all bugs])
 +
* [https://code.videolan.org/ code.videolan.org]
 +
* [https://git.videolan.org/ git.videolan.org]
  
=== Compiling VLC ===
+
== Current technical discussions on VLC ==
 +
* [[Usability Complaints]]
 +
* [[WaylandIntegration|Wayland integration]]
  
To compile VLC, you first need to get the [[GetTheSource|Source Code]].
+
=== Past discussions ===
 
+
* [[VoutRework|Vout Rework]] - improving the video output subsystem.
* [[UnixCompile|How to compile on Unix/Linux]]
+
* [[telnet rc rewrite]] - Merging the "telnet" and "rc" controls.
* [[Win32Compile|How to compile on Windows]]
+
* [[SimplePreferences|Simple Preferences]] - We wish to add a "simple" preferences mode, additionally to the full mode we already have.
* [[OSXCompile|How to compile on Mac OS X]]
 
* [[BeOSCompile|How to compile on BeOS]]
 
 
 
<!-- At the moment, all information is available from here : http://developers.videolan.org/vlc/ -->
 
 
 
|width="60%" class="MainPageBG" style="border: 1px solid #c6c9ff; color: #000; background-color: #f0f0ff"|
 
 
 
=== Joining us ===
 
 
 
VideoLAN welcomes anyone wanting to help, either by writing code, finding or fixing bugs, starting or updating translations, doing graphics work, ...
 
 
 
==== Getting started ====
 
 
 
Getting started at coding is a matter of finding something to fix, and fixing it. Once you have fixed something, you will want to send in a patch. If you do that a few times, you may want to apply for an SVN account so you can fix things directly.
 
 
 
You might be interested in having a look at our [[Mini_Projects|Mini Projects]], which are some identified development efforts for which an existing VLC developer is willing to help a new developer in his progress. These [[Mini_Projects]] generally don't require a great knowledge of VLC code.
 
 
 
It is recommended that you join the vlc-devel [http://developers.videolan.org/lists.html mailing list], where all commits are archived.
 
 
 
[[Getting_Started_At_Coding|More information on how to get started at coding on VLC]].
 
 
 
|}
 
 
 
<div style="margin:3pt;width:100%;border: 1px solid #119900; color: #000; background-color: #ddffdd">
 
 
 
=== What is currently going on ===
 
 
 
These pages are used to coordinate some of the currently ongoing development or artwork works.
 
 
 
==== Development ====
 
 
 
* [[VoutRework|Vout Rework]] - improving the video output subsystem
 
* [[ExternalAPI|External API]] - improving the external API to vlc
 
* [[MediaControlAPI|Media Control API]] - an high level player-independent media API, wrapping around our [[ExternalAPI|External API]]
 
* [[0.9.0PlaylistTODO|0.9.0 Playlist TODO]] - Major changes in the upcoming version
 
* [[telnet rc rewrite]] - Merging the "telnet" and "rc" controls  
 
* [[SimplePreferences|Simple Preferences]] - We wish to add a "simple" preferences mode, additionally to the full mode we already have
 
 
* [[QtIntfTODO|Qt Interface TODO]] - A brand new qt4 interface ... in order to get rid of wxWidgets.
 
* [[QtIntfTODO|Qt Interface TODO]] - A brand new qt4 interface ... in order to get rid of wxWidgets.
* [[Contrib_Status|Contrib Status]] - Contrib Libraries Status
+
** [[QtIntfMockups]]
 +
*** [[QtImageset]]
 +
*** [[QtIntfMockups-DericksIdea]]
 +
* [[Qt and GTK]]
 +
* [[DBus-spec]] - Specification for a Common, Desktop neutral, Media Player D-Bus interface.
 +
* [[StatsSystem |Stats System]]
 +
* [[InteractionSystem]] - Interaction System
 +
* [[MediaControlAPI|Media Control API]] - an '''OUTDATED''' high level player-independent media API
 +
* [[0.8.5StringReview]]
 +
* [[2005StringsReview]]
 +
* [[Libavcodec regressions]]
 +
* [[Mobile Features]]
 +
* [[AndroidTODO]] - moved to [https://code.videolan.org/videolan/vlc/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Component%3A%3APort%3A%20Android Gitlab Android Component] and [https://code.videolan.org/videolan/vlc/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Component%3A%3AInterface%3A%20Android Gitlab Android Interface Component]
 +
* [[SDI API]] - Linux-related: regarding [[wikipedia:Serial digital interface|SDI]] cards for [[V4l2]]
 +
* [[Newplaylist]]
 +
* [[Newsoundslider]]
 +
* [[BOMM3U]] - [[wikipedia:Byte order mark|Byte order mark]] for [[M3U]] playlists. <code>#EXTM3U</code> means [[wikipedia:M3U#Extended_M3U|Extended M3U]]
  
==== Design ====
+
=== Design ===
* [[DefaultSkinRequirements|Default Skin Requirements]] - what you need to make a skin that might be eligible for default skin
 
 
* [[WebsiteRedesign|Website Redesign]] and [[WebsiteDesign|Design Proposals]]
 
* [[WebsiteRedesign|Website Redesign]] and [[WebsiteDesign|Design Proposals]]
</div>
+
* [[DefaultSkinRequirements|Default Skin Requirements]] - Specifications of an eligible skin for default skin.
 
 
== Other software ==
 
 
 
VideoLAN is mainly about VLC, but not only.
 
 
 
Other software by VideoLAN include:
 
* [[libdvdcss]], a library to access DVD data without bothering about the CSS encryption
 
* [[libdvdplay]], a DVD navigation support library
 
* [[libdvbpsi]], a library to decode and create MPEG-TS and DVB-PSI tables
 
* [[libdca]], a DTS Coherent Acoustics audio decoder library
 
* [[x264]], a [[H264]] encoding library
 
 
 
== Miscellaneous how-to ==
 
* Cédric Bosdonnat 's [http://134.214.107.10:85/sims/index.php/Client_query notes] (fr) about developing a new module type.
 
 
 
* Diego 'Flameeyes' Pettenò 's [http://www.gentoo.org/proj/en/desktop/video/vlc.xml notes] about packaging VLC into [http://www.gentoo.org/ Gentoo].
 
  
* [[Add a skin|How to add a skin on the skins download page]]
+
[[Category:Development]]

Latest revision as of 19:45, 7 December 2023

Coding on VLC

VLC development links

Current technical discussions on VLC

Past discussions

Design