1
mirror of https://code.videolan.org/videolan/vlc synced 2024-09-16 16:02:54 +02:00
Commit Graph

212 Commits

Author SHA1 Message Date
Jean-Baptiste Kempf
36ab287e77 LGPL
Re-license almost all of libVLC and libVLCcore to LGPLv2.1+

This move was authorized by the developers, either:
 - by e-mail,
 - by vote at the VideoLAN Dev Days 2011,
 - on the license website,
 - in a contract, oral or written.
No objection was raised, so far.

The developers agreeing are:
  Justus Piater
  Alexis Ballier
  Alexander Bethke
  Mohammed Adnène Trojette
  Alex Converse
  Alexey Sokolov
  Alexis de Lattre
  Andre Pang
  Anthony Loiseau
  Cyril Deguet
  André Weber
  Boris Dorès
  Brieuc Jeunhomme
  Benjamin Drung
  Hugo Beauzée-Luyssen
  Benoit Steiner
  Benjamin Pracht
  Bernie Purcell
  Przemyslaw Fiala
  Arnaud de Bossoreille de Ribou
  Brad Smith
  Nick Briggs
  Christopher Rath
  Christophe Courtaut
  Christopher Mueller
  Clement Chesnin
  Andres Krapf
  Damien Fouilleul
  David Flynn
  Sebastien Zwickert
  Antoine Cellerier
  Jérôme Decoodt
  Jérome Decoodt
  Dylan Yudaken
  Eduard Babayan
  Eugenio Jarosiewicz
  Elliot Murphy
  Eric Petit
  Erwan Tulou
  Etienne Membrives
  Ludovic Fauvet
  Fabio Ritrovato
  Tobias Güntner
  Jakub Wieczorek
  Frédéric Crozat
  Francois Cartegnie
  Laurent Aimar
  Florian G. Pflug
  Felix Paul Kühne
  Frank Enderle
  Rafaël Carré
  Simon Latapie
  Gildas Bazin
  Geoffroy Couprie
  Julien / Gellule
  Gildas Bazin
  Arnaud Schauly
  Toralf Niebuhr
  Vicente Jimenez Aguilar
  Derk-Jan Hartman
  Henri Fallon
  Ilkka Ollakka
  Olivier Teulière
  Rémi Duraffort
  Jakob Leben
  Jean-Baptiste Kempf
  Jean-Paul Saman
  Jean-Philippe Grimaldi
  Jean-François Massol
  Gaël Hendryckx
  Jakob Leben
  Jean-Marc Dressler
  Jai Menon
  Johan Bilien
  Johann Ransay
  Joris van Rooij
  JP Dinger
  Jean-Philippe André
  Adrien Grand
  Juha Jeronen
  Juho Vähä-Herttua
  Kaarlo Raiha
  Kaarlo Raiha
  Kamil Baldyga
  Keary Griffin
  Ken Self
  KO Myung-Hun
  Pierre Ynard
  Filippo Carone
  Loïc Minier
  Luca Barbato
  Lucas C. Villa Real
  Lukas Durfina
  Adrien Maglo
  Marc Ariberti
  Mark Lee
  Mark Moriarty
  Martin Storsjö
  Christophe Massiot
  Michel Kaempf
  Marian Ďurkovič
  Mirsal Ennaime
  Carlo Calabrò
  Damien Lucas
  Naohiro Koriyama
  Basos G
  Pierre Baillet
  Vincent Penquerc'h
  Olivier Aubert
  Pankaj Yadav
  Paul Corke
  Pierre d'Herbemont
  Philippe Morin
  Antoine Lejeune
  Michael Ploujnikov
  Jean-Marc Dressler
  Michael Hanselmann
  Rafaël Carré
  Ramiro Polla
  Rémi Denis-Courmont
  Renaud Dartus
  Richard Shepherd
  Faustino Osuna
  Arnaud Vallat
  Rob Jonson
  Robert Jedrzejczyk
  Steve Lhomme
  Rocky Bernstein
  Romain Goyet
  Rov Juvano
  Sam Hocevar
  Martin T. H. Sandsmark
  Sebastian Birk
  Sébastien Escudier
  Vincent Seguin
  Fabio Ritrovato
  Sigmund Augdal Helberg
  Casian Andrei
  Srikanth Raju
  Hannes Domani
  Stéphane Borel
  Stephan Krempel
  Stephan Assmus
  Tony Castley
  Pavlov Konstantin
  Eric Petit
  Tanguy Krotoff
  Dennis van Amerongen
  Michel Lespinasse
  Can Wu
  Xavier Marchesini
  Sébastien Toque
  Christophe Mutricy
  Yoann Peronneau
  Yohann Martineau
  Yuval Tze
  Scott Caudle
  Clément Stenac

It is possible, that some minor piece of code was badly tracked, for
some reasons (SVN, mainly) or that some small developers did not answer.
However, as an "œuvre collective", defined as in "CPI 113-2 alinéa 3",
and seeing "Cour. Cass. 17 Mai 1978", and seeing that the editor and
the very vast majority of developers have agreed (> 99.99% of the code,
> 99% of developers), we are fine here.
2011-11-27 22:54:33 +01:00
Rémi Denis-Courmont
89f47d484e Deprecate playlist_IsServicesDiscoveryLoaded()
With the introduction, initially for LUA SD, of the chain syntax to
the services discovery, there is no way to canonicalize the name of
a services discovery object. Thus, they cannot be compared reliably,
and therefore, playlist_IsServicesDiscoveryLoaded() does not operate
correctly. I won't remove it today because too many interfaces call it.
But you should know that this function does _not_ actually work, and I
see no way to fix it (other than remove LUA SD).

Futhermore, this function is fundamentally prone to a race condition,
when it is used to toggle an SD (this is admittedly a minor problem).
2011-06-20 19:31:53 +03:00
Jean-Baptiste Kempf
874efde6d6 Playlist simplification in leaf-to-parent management 2011-05-20 18:22:31 +02:00
Jean-Baptiste Kempf
7f9d5e6d1f Correct documentation of playlist_item_t 2011-05-20 18:22:31 +02:00
Rémi Denis-Courmont
92f1b3aee7 Rename LIBVLC_* function attributes to VLC_* within plugin API 2011-05-07 23:08:28 +03:00
Rémi Denis-Courmont
6f258887aa Replace VLC_EXPORT macro with a simple prefix, VLC_API
This should help Doxygen parse VLC headers, and generally makes headers
easier to read. LibVLC already uses a similar approach.
2011-05-07 18:43:51 +03:00
Rémi Duraffort
7c5348b695 sd: remove the pf_search and use a more generic pf_control function.
This way we can implement both a search function and a description function.
2010-10-24 04:11:14 +02:00
Rémi Duraffort
a60a86bd83 SD: add a function to query a service discovery for more items. 2010-10-19 21:13:47 +02:00
Ilkka Ollakka
57766ff347 refactor rate(,-faster,-slower) to playlist
Thisway we don't reset playback rate between items
2010-10-04 21:28:59 +03:00
Rémi Duraffort
502a2fa805 includes: add some LIBVLC_USED. 2010-08-03 21:19:29 +02:00
Jakob Leben
d704a3956c playlist: documentation update 2010-06-09 19:42:38 +02:00
Rémi Duraffort
70ab9417b0 Playlist: repack (save some memory) 2010-05-28 22:03:17 +02:00
Jakob Leben
e4b20c82e3 playlist: new playlist_NodeAddCopy(), modified playlist_NodeCreate()
- New function to copy a playlist item and all its children.
- Allow node creation at any position in parent.
2010-03-13 17:16:38 +01:00
Jakob Leben
c3d342a2d5 playlist: allow non-recursive search 2010-02-12 11:42:12 +01:00
Rémi Denis-Courmont
7e4d50ac42 Remove pl_Release, and rename pl_Hold back to pl_Get
pl_Hold() assumed the playlist was already created.
pl_Release() does not solve any problem. Playlist synchronization is
done with the playlist lock, while playlist deletion must anyway be done
after all interfaces, services and other threads are joined.
2010-02-09 21:22:13 +02:00
Rémi Denis-Courmont
3863d8b088 No need to lock the playlist for meta fetch and preparsing
The previous fix made the fetcher and preparser persistent throughout
the lifetime of the playlist. So we don't need to protect the pointers
anymore. Also, they are internally thread-safe (with their own lock).
2010-02-09 21:14:26 +02:00
Jakob Leben
d66c259350 fix compile 2010-02-02 10:26:36 +01:00
Jakob Leben
2669219aad fix build - remove redundant declarations 2010-02-02 09:12:33 +01:00
Jakob Leben
defbc4a490 vlc core: single storage playlist
- Playlist items are stored only once. No category / onelevel separation
- Services Discovery nodes always stay a tree
- The playlist and Media Library are tree or flat depending on variable "playlist-tree".
  It means that if the setting variable says flat, the items that come from playlist
  demuxers are flattened into a single level list.
- The design demanded a different playlist demuxing system. Now playlist demuxers should
  construct a tree of items under an input_item_node_t root and send that using
  input_item_AddSubItemTree. Currently, the old scheme will be retained in modules, because
  there is still some listening to the old event in code (the libvlc media system for example)
2010-02-02 06:12:58 +01:00
Jakob Leben
22b2b54f1f playlist: only install input item event callbacks on items under category root 2010-01-31 17:28:34 +01:00
Rémi Denis-Courmont
c029b7afbe Don't start the playlist thread if not needed 2010-01-31 01:09:02 +02:00
Jakob Leben
736cc6b893 playlist, Qt: playlist browsing support
A new playlist item flag stops playlist after the item gets subitems.
The flag is set only upon user request to play an item from Qt views and only
if he does so in playlist "tree mode" not "one level".
Behavior on items played when playlist advances is unaffected.
This allows for comfortable "browsing" of playlist in tree mode, in particular
when using the Qt interface's icon view.
2010-01-30 10:18:26 +01:00
Francois Cartegnie
9ae152ce22 fix empty declaration warning 2010-01-18 20:14:47 +02:00
Rémi Denis-Courmont
5a2184110b Make playlist_export_t a VLC object 2009-08-23 19:25:53 +03:00
Jakob Leben
c54fe5a717 [PATCH] playlist, Qt4: new playlist_TreeMoveMany()
Add new function which simplifies moving more then one item at a time and
reduces complexity and increases performance of such action.
Also refactor a bit old playlist_TreeMove.
Use new function in Qt4 playlist model.
2009-08-18 12:26:33 +02:00
Rémi Duraffort
385750a56c Remove unused function. 2009-07-10 14:31:47 +02:00
JP Dinger
88acaceec1 playlist/sort.c: remove globals, replace with pointers to generated stubs. 2009-05-30 00:20:18 +02:00
Rémi Denis-Courmont
cc321882c2 playlist_DeleteFromInput: pass the input item rather than its ID 2009-05-16 18:28:16 +03:00
Rémi Denis-Courmont
7efba6b3d2 playlist_ItemGetByInputId: remove dead code
playlist_ItemGetByInput can be used instead anyway
2009-05-16 13:53:43 +03:00
Laurent Aimar
3fae03b32f Removed unused field and clean up (playlist). 2009-02-16 22:46:16 +01:00
Laurent Aimar
8a163fd827 Renamed playlist "item-append/deleted" to "playlist-item-append/deleted".
I hope they will reduce the risk of error until the playlist API is rewritten.
2009-02-16 22:30:58 +01:00
Laurent Aimar
bf099fea1f Renamed playlist "playlist-current" to "item-current". 2009-02-16 22:24:38 +01:00
Laurent Aimar
1f029c7029 Document a bit playlist event variable. 2009-02-16 22:05:02 +01:00
Laurent Aimar
aaa0d27584 Modify playlist code to always use input_item_t->i_id in "item-change" callback.
The previous code mixed up playlist_item_t->i_id and input_item_t->i_id and
 so this callback was unusable.
2009-02-16 21:33:43 +01:00
Laurent Aimar
0969e58f45 Removed or privatized playlist functions. 2009-02-16 21:13:18 +01:00
Rémi Duraffort
f88693fed2 Playlist have to be lock for playlist_ItemGetByInput too. 2009-02-11 22:11:07 +01:00
Rémi Duraffort
7e4419bcc6 The playlist have to be locked when calling playlist_ItemGetById (not tested for wince and pda interface). 2009-02-11 22:11:07 +01:00
Laurent Aimar
15abf70b6e Changed playlist_AddExt to be more consistant with input_item_NewWithType. 2009-01-18 15:14:55 +01:00
Laurent Aimar
0783dcb411 Removed unused playlist_ItemNew(WithType). 2009-01-18 15:14:54 +01:00
Rémi Denis-Courmont
4ca1e35490 playlist: add real functions for locking 2009-01-17 19:20:12 +02:00
Rémi Denis-Courmont
7ab4f13d30 Include vlc_services_discovery.h only where needed 2009-01-10 19:15:34 +02:00
Laurent Aimar
52157ae334 Fixed preparsing/art fetching locking. 2009-01-05 20:49:11 +01:00
Laurent Aimar
69a38c569e Clean up a bit unused playlist functions and added lock asserts.
Some interfaces may assert because of missing playlist lock.
2009-01-05 20:49:05 +01:00
Laurent Aimar
6b843acc08 Removed unused -playlist_ItemSetName. 2008-11-22 16:29:54 +01:00
Rémi Denis-Courmont
5bce8e0739 De-inline playlist_Signal 2008-09-30 23:10:34 +03:00
Pierre d'Herbemont
b1eb791bf6 playlist: i_last_playlist_id is private. 2008-09-28 17:10:01 +02:00
Pierre d'Herbemont
76c03d8c60 playlist: b_reset_currently_playing is private. 2008-09-28 17:10:01 +02:00
Pierre d'Herbemont
75f1d9dbef playlist: last_rebuild_date is private. 2008-09-28 17:10:00 +02:00
Pierre d'Herbemont
03e7b7706e playlist: i_sort and i_order are not used. removed. 2008-09-28 17:10:00 +02:00
Pierre d'Herbemont
2f4258d6fc playlist: gc_date is private. 2008-09-28 17:10:00 +02:00