Difference between revisions of "VLC Developers Corner"

From VideoLAN Wiki
Jump to navigation Jump to search
m (typo)
 
(78 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOTOC__
+
__NOTOC__ __NOEDITSECTION__
__NOEDITSECTION__  
+
<!-- Beginning of the banner section -->
<!-- Beginning of header section -->
+
{{Banner
{|style="width:100%;margin-top:+.7em;background-color:#fcfcfc;border:1px solid #ccc"
+
|description=A directory of everything to do with the development of VideoLAN's projects.<br />
|style="width:56%;color:#000"|
+
Check [[VLC media player|VLC's page]] to get info on VLC.
{|style="width:280px;border:solid 0px;background:none"
+
|links=
|-
+
* [[VideoLAN]]
|style="width:280px;text-align:center;white-space:nowrap;color:#000" |
+
* [[VLC media player]]
<div style="font-size:162%;border:none;margin: 0;padding:.1em;color:#000">Welcome to [[Developers_Corner|VideoLAN Developers Corner]],</div>
+
** [https://addons.videolan.org Add-ons]
<div style="top:+0.2em;font-size: 95%"> This is a directory of everything to do with the development of VideoLAN's projects.<br />
+
* [[Documentation:Documentation|Documentation]]
Check [[VLC|VLC's page]] to get info on VLC.
+
* [[VideoLAN_Sites#Developers|Developers' Sites]]
</div>
+
|links2=
<div id="articlecount" style="width:100%;text-align:center;font-size:85%;">[[Special:Statistics|{{NUMBEROFARTICLES}}]] articles</div>
+
* [https://www.videolan.org/developers Developer Zone]
|}
+
* [https://nightlies.videolan.org Nightly builds]
|style="width:11%;font-size:95%;color:#000" valign="top"|
+
* [https://jenkins.videolan.org Automatic builds]
*[[VideoLAN|VideoLAN]]
+
|links3=
*[[VLC|VLC media player]]
+
* [https://code.videolan.org/videolan/vlc/-/issues bugs, features, roadmap]
*[[Documentation:Documentation|Documentation]]
+
* [https://www.videolan.org/videolan/mirrors.html Mirrors check]
*[[VideoLAN_Sites#Developers|Developers' Websites]]
 
|style="width:14%;font-size:95%" valign="top"|
 
* [http://developers.videolan.org Main Developers Site]
 
* [http://nightlies.videolan.org Nightly builds]
 
* [http://buildbot.videolan.org Buildbot for Automatic Builds]
 
|style="width:18%;font-size:95%" valign="top"|
 
* [http://trac.videolan.org Trac, bugs, features, roadmap]
 
* [http://mirrors.videolan.org Mirrors check]
 
 
* [ftp://ftp.videolan.org/pub/videolan/ Main FTP]
 
* [ftp://ftp.videolan.org/pub/videolan/ Main FTP]
|}
+
}}
<!-- end of the header section -->
+
<!-- End of the banner section -->
  
{|
+
== Coding on VLC ==
|- valign="top" width="100%"
+
* [[Getting Started At Coding|Get started at coding on VLC]]
 
+
* Get the [[GetTheSource|Source Code]] and [[Compile VLC]]
|width="30%" valign="top"|
+
* You might be interested in our [[Mini Projects]] or [[GCodeIn_Ideas|Janitorial projects]]
<div style="color:#000;background-color:#f5fffa;border:1px solid #cedff2;padding:10px;margin: 6px">
+
* Read our [[Hacker_Guide|Hacker's Guide]]
 
+
** [[Hacker_Guide/Core|Introduction to VLC's core]]
<h2 style="margin:0;background:#cedff2;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;">
+
** [[Hacker Guide/How To Write a Module|How to write a module]]
Build VLC media player</h2>
+
** [[Documentation:VLC_Modules_Loading|How VLC modules load]]
Check the [http://trac.videolan.org/vlc/browser/trunk/NEWS?format=raw NEWS].
+
* [https://www.videolan.org/developers/vlc/doc/doxygen/html/ Code documentation]
 
 
Check the [[Compile VLC|generic compile HOWTO]].
 
 
 
To build VLC, you first need to get the [[GetTheSource|Source Code]].
 
 
 
* [[Win32Compile|How to compile for Windows]] ([[Win32CompileMSYSNew|MSYS]],[[Win32CompileCygwinNew|Cygwin]])
 
* [[OSXCompile|How to compile on Mac OS X]]
 
* [[UnixCompile|How to compile on Unix/Linux]]
 
* [[Solaris|How to compile on Solaris]]
 
* [[BeOSCompile|How to compile on BeOS (outdated)]]
 
* [[ARM-XCompile|How to cross-compile for ARM]]
 
 
 
* [[OutOfTreeCompile|How to compile a module outside of VLC source tree]]
 
* [[DirectFB_Compile|Compile DirectFB plugin]]
 
* [[Contrib_Status|Contrib Status]] - 3rd party libraries status.
 
* [[Packagers|Links to the packaging in various distros]]
 
</div>
 
 
 
 
 
<div style="color:#000;background-color:#f5fffa;border:1px solid #a3bfb1;padding:10px;margin:6px; float: left;">
 
<h2 style="margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3bfb1;text-align:left;color:#000;padding:0.2em 0.4em;">
 
Build an application on libVLC</h2>
 
There are several ways to build an application that uses VLC. Some are listed here.
 
* Build a GPL application using [[libvlc]], in C/C++/[[C_Sharp|C#]]
 
* Use the [[python bindings]] [[MediaControlIDL]]
 
* Use the [[java bindings]]
 
* Use the [[ActiveX Controls]]
 
* Use the [[JavaScript API]]
 
* Talk to VLC through the [[DBus]] communication
 
</div>
 
 
 
|width="35%" rowspan="1" valign="top"|
 
<div style="margin:6px;border: 1px solid #FFA8D3;background-color:#FFECF5; color: #000; padding:10px; margin-top:12px">
 
 
 
<h2 style="margin:0; background-color:#FFA8D3;font-size:120%;font-weight:bold;border:1px solid #a3bfb1;text-align:left;color:#000;padding:0.2em .4em;"> Code VLC</h2>
 
=== Start coding on VLC ===
 
* [[Getting Started At Coding|Get started at coding on VLC]].
 
* You might be interested in our [[Mini_Projects|Mini Projects]], which are some easy tasks that do not require a lot of VLC Code Knowledge.
 
* It is recommended that you join the vlc-devel [http://developers.videolan.org/lists.html mailing list], where all commits are archived.
 
 
 
=== VLC Code ===
 
* [[Unicode and Strings]]
 
 
* [[Code Conventions]]
 
* [[Code Conventions]]
* [[Documentation:Hacker%27s_Guide|Hacker's Guide]]
 
* [http://www.videolan.org/developers/vlc/doc/doxygen/html/ Code documentation]
 
* [[VLC variables help]]
 
  
 
+
=== VLC development links ===
=== Tools to code VLC ===
+
* [https://code.videolan.org/videolan/vlc/-/issues/ GitLab] list of bugs
* [[Contrib_Status|Contrib Status]] - Contrib Libraries Status
+
* vlc-devel [https://www.videolan.org/developers/lists.html mailing list], mailing list.
* [http://trac.videolan.org/vlc Trac] list of bugs, todo's and history of commits.
+
* [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])
 
* 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])
* [http://www.videolan.org/developers/i18n/ Translation information and stats]
+
* [https://code.videolan.org/ code.videolan.org]
* [http://cia.navi.cx/stats/project/vlc CIA commit statistics]
+
* [https://git.videolan.org/ git.videolan.org]
* [http://paste.videolan.org Pasteboard]
 
* [http://buildbot.videolan.org Buildbot]
 
* [http://planet.videolan.org Developer weblog]
 
* [[Nightly_Build| Nightly Builds]]
 
</div>
 
  
| width="35%" rowspan="1" valign="top" |
+
== Current technical discussions on VLC ==
<div style="margin:10px;border: 1px solid #f2e0ce; color: #000; background-color: #fffaf5; padding:10px; margin: 6px;">
+
* [[Usability Complaints]]
 +
* [[WaylandIntegration|Wayland integration]]
  
<h2 style="margin:0; background-color:#f2e0ce;font-size:120%;font-weight:bold;border:1px solid #bfb1a3;text-align:left;color:#000;padding:0.2em .4em;"> Development discussions under work</h2>
+
=== Past discussions ===
 
 
== Current Development ==
 
[[Next_changes| Changes in the current version]]
 
 
 
== Current discussions ==
 
 
* [[VoutRework|Vout Rework]] - improving the video output subsystem.
 
* [[VoutRework|Vout Rework]] - improving the video output subsystem.
 
* [[telnet rc rewrite]] - Merging the "telnet" and "rc" controls.
 
* [[telnet rc rewrite]] - Merging the "telnet" and "rc" controls.
* [[Usability Complaints]]
 
 
=== Design ===
 
* [[DefaultSkinRequirements|Default Skin Requirements]] - Specifications of an eligible skin for default skin.
 
 
== Past discussions ==
 
 
* [[SimplePreferences|Simple Preferences]] - We wish to add a "simple" preferences mode, additionally to the full mode we already have.
 
* [[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.
 +
** [[QtIntfMockups]]
 +
*** [[QtImageset]]
 +
*** [[QtIntfMockups-DericksIdea]]
 +
* [[Qt and GTK]]
 
* [[DBus-spec]] - Specification for a Common, Desktop neutral, Media Player D-Bus interface.
 
* [[DBus-spec]] - Specification for a Common, Desktop neutral, Media Player D-Bus interface.
* [[StatsSystem |Stats Sytem]]
+
* [[StatsSystem |Stats System]]
* [[Browser Plugin Spec]]
 
* [[0.9.0PlaylistTODO|0.9.0 Playlist TODO]] - Major changes in the upcoming version
 
 
* [[InteractionSystem]] - Interaction System
 
* [[InteractionSystem]] - Interaction System
* [[ExternalAPI|External API]] - improving the external API to vlc
+
* [[MediaControlAPI|Media Control API]] - an '''OUTDATED''' high level player-independent media API  
* [[MediaControlAPI|Media Control API]] - an high level player-independent media API, wrapping around our [[ExternalAPI|External API]]
 
 
* [[0.8.5StringReview]]
 
* [[0.8.5StringReview]]
 
* [[2005StringsReview]]
 
* [[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 ===
 
* [[WebsiteRedesign|Website Redesign]] and [[WebsiteDesign|Design Proposals]]
 
* [[WebsiteRedesign|Website Redesign]] and [[WebsiteDesign|Design Proposals]]
 +
* [[DefaultSkinRequirements|Default Skin Requirements]] - Specifications of an eligible skin for default skin.
  
</div>
+
[[Category:Development]]
 
 
 
 
<div style="color:#000;background-color:#f5fffa;border:1px solid #a3bfb1;padding:10px;margin:6px; float: left;">
 
<h2 style="margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3bfb1;text-align:left;color:#000;padding:0.2em 0.4em;">
 
VideoLAN's Administration</h2>
 
* [[Bugday|VideoLAN bugdays]]
 
* [[Calendar|VideoLAN calendar]]
 
* [[Admin TODO]]
 
* [[Skanda migration]]
 
* [[VideoLAN Servers]]
 
* [[Add a skin|How to add a skin on the skins download page]]
 
* [http://mirrors.videolan.org Download mirrors integrity tests]
 
=== Wiki Admins ===
 
 
 
* [{{SERVER}}/Special:Listusers?group=sysop Admins list]
 
* [[SpamBlacklist]]
 
* [[VideoLAN_Wiki:TODO | TODO]]
 
</div>
 
 
 
|-
 
|}
 

Latest revision as of 19:45, 7 December 2023

Coding on VLC

VLC development links

Current technical discussions on VLC

Past discussions

Design