1
mirror of https://code.videolan.org/videolan/vlc synced 2024-10-11 06:21:30 +02:00
Go to file
Lyndon Brown 8b75d973bb qt: add expert preferences mode
This gives a table listing all options, similar to and inspired by the
`about:config` interface in Firefox.

Unique benefits:
 - It highlights which options have been modified from default state.
 - It allows selective resetting of individual options to default values.

Support is included to toggle booleans with a simple double-click.
Double-clicking on other types opens the edit dialog.

For colour selection items, the modify action directly opens the Qt
colour selection dialog rather than present the colour control used in
the advanced preferences view, since this is much cleaner.

Note that the existing simple and advanced views are not linked; if you
change an option in one view, that change is not reflected in the other,
and saving changes only uses the state from the selected view. The same
is currently true of the new expert mode, though I plan to later change
this behaviour (for all three).

Note also that hotkey items are deliberately excluded from this view.
The dedicated hotkey editor is best suited to managing hotkeys. It does
not work well to include the set of 224 unique hotkey options within this
table, especially since we'd have to duplicate the code checking for
duplicate assignments if we allow editing of them as with all other
option types within this interface. It may seem odd for the 'expert'
mode to be the only one without hotkey editing, however the hotkey editor
does not really fit well into 'advanced' mode either, and I have plans to
propose separating the hotkey editor entirely from within the set of
three views in a small redesign.

Fixes #18607.
2022-03-05 23:55:49 +00:00
autotools gettext: update to 0.21 2022-01-22 08:24:11 +00:00
bin macosx: add rpath for Frameworks 2022-01-04 19:40:24 +00:00
compat compat: Linux getauxval() replacement 2022-02-23 21:10:16 +00:00
contrib contrib: lua: fix luac detection 2022-03-05 15:44:38 +00:00
doc libvlc: add a callback for the type of the resize callback 2022-03-05 12:23:02 +00:00
extras CI: build the win32 libvlc sample when build the win64 target 2022-03-03 18:43:58 +00:00
include libvlc: add a callback for the type of the resize callback 2022-03-05 12:23:02 +00:00
lib libvlc: disable OSD by default 2022-03-05 13:52:17 +00:00
m4 gettext: remove stray old m4 files 2022-02-01 17:26:37 +00:00
modules qt: add expert preferences mode 2022-03-05 23:55:49 +00:00
po qt: add expert preferences mode 2022-03-05 23:55:49 +00:00
share ytdl: switch over to yt_dlp 2022-02-22 18:39:28 +00:00
src url: use signed type as needed 2022-03-05 19:20:41 +00:00
test test: use reproducible input 2022-02-03 10:56:29 +00:00
.gitignore gitignore: unblacklist build.sh script 2021-03-12 22:27:03 +01:00
.mailmap
AUTHORS
bootstrap
configure.ac configure: don't check luac in deprecated path 2022-03-05 15:44:38 +00:00
COPYING
COPYING.LIB
INSTALL
make-alias
Makefile.am makefile: remove unknown disable-mkv option from distcheck 2022-02-26 15:42:17 +00:00
NEWS libvlc: disable OSD by default 2022-03-05 13:52:17 +00:00
README.md README: fix typo 2022-01-29 18:07:27 +00:00
THANKS

VLC media player

VLC is a libre and open source media player and multimedia engine, focused on playing everything, and running everywhere.

VLC can play most multimedia files, discs, streams, devices and is also able to convert, encode, stream and manipulate streams into numerous formats.

VLC is used by many over the world, on numerous platforms, for very different use cases.

The engine of VLC can be embedded into 3rd party applications, and is called libVLC.

VLC is part of the VideoLAN project and is developed and supported by a community of volunteers.

The VideoLAN project was started at the university École Centrale Paris who relicensed VLC under the GPLv2 license in February 2001. Since then, VLC has been downloaded billions of times.

License

VLC is released under the GPLv2 (or later) license. On some platforms, it is de facto GPLv3, because of the licenses of dependencies.

libVLC, the engine is released under the LGPLv2 (or later) license.
This allows embedding the engine in 3rd party applications, while letting them to be licensed under other licenses.

Platforms

VLC is available for the following platforms:

  • Windows (from 7 and later, including UWP platforms and all versions of Windows 10)
  • macOS (10.10 and later)
  • GNU/Linux and affiliated
  • *BSD and affiliated
  • Android (4.2 and later), including Android TV and Android Auto
  • iOS (9 and later), including AppleTV and iPadOS
  • Haiku, OS/2 and a few others.

Not all platforms receive the same amount of care, due to our limited resources.

Nota Bene: The Android app and the iOS app are located in different repositories than the main one.

Contributing & Community

VLC is maintained by a community of people, and VideoLAN is not paying any of them.
The community is composed of developers, helpers, maintainers, designers and writers that want this open source project to thrive.

The main development of VLC is done in the C language, but this repository also contains plenty of C++, Obj-C, asm and Rust.

Other repositories linked to vlc are done in languages including Kotlin/Java (Android), Swift (iOS), and C# (libVLCSharp).

We need help with the following tasks:

  • coding
  • packaging for Windows, macOS and Linux distributions
  • technical writing for the documentation
  • design
  • support
  • community management and communication.

Please contribute :)

We are on IRC. You can find us on the #videolan channel on Libera.chat.

Contributions

Contributions are now done through Merge Requests on our GitLab repository.

CI and discussions should be resolved before a Merge Request can be merged.

libVLC

libVLC is an embeddable engine for 3rd party applications and frameworks.

It runs on the same platforms as VLC (and sometimes on more) and can provide playback, streaming and conversion of multimedia files and streams.

libVLC has numerous bindings for other languages, such as C++, Python and C#.

Support

Some useful links that might help you:

Source Code sitemap

ABOUT-NLS          - Notes on the Free Translation Project.
AUTHORS            - VLC authors.
COPYING            - The GPL license.
COPYING.LIB        - The LGPL license.
INSTALL            - Installation and building instructions.
NEWS               - Important modifications between the releases.
README             - Project summary.
THANKS             - VLC contributors.

bin/               - VLC binaries.
bindings/          - libVLC bindings to other languages.
compat/            - compatibility library for operating systems missing
                     essential functionalities.
contrib/           - Facilities for retrieving external libraries and building
                     them for systems that don't have the right versions.
doc/               - Miscellaneous documentation.
extras/analyser    - Code analyser and editor specific files.
extras/buildsystem - Different build system specific files.
extras/misc        - Files that don't fit in the other extras/ categories.
extras/package     - VLC packaging specific files such as spec files.
extras/tools/      - Facilities for retrieving external building tools needed
                     for systems that don't have the right versions.
include/           - Header files.
lib/               - libVLC source code.
modules/           - VLC plugins and modules. Most of the code is here.
po/                - VLC translations.
share/             - Common resource files.
src/               - libvlccore source code.
test/              - Testing system.