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

3343 Commits

Author SHA1 Message Date
Steve Lhomme
cb3e3498d8 configure: add an option to generate PDB files when building
This will only be enabled when building windows targets and will only work when
compiling with Clang.
2019-05-21 14:35:42 +02:00
Thomas Guillem
376d2b5611 configure: disable skins2
It need to be ported to the new player, playlist and tree.
2019-05-10 09:43:21 +02:00
Rémi Denis-Courmont
25de1bd308 gnutls: require version 3.5.0+ 2019-04-14 15:53:17 +03:00
Rémi Denis-Courmont
d3a2ebf1a5 configure: socklen_t should be unsigned
Originally, POSIX made it unsigned. This was relaxed in newer releases,
but unsigned makes more sense anyway since it expressses a size.
2019-04-14 10:15:47 +03:00
Pierre Lamot
88efeca90c qt: use qmlcachegen to preprocess qml files
Signed-off-by: Thomas Guillem <thomas@gllm.fr>
2019-04-10 14:13:01 +02:00
Pierre Lamot
c5bb74756e qt: add option to setup QML debugging probe
See http://doc.qt.io/qt-5/qtquick-debugging.html#starting-applications

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
2019-04-10 14:11:43 +02:00
Pierre Lamot
ae422ac67e qt: update minimal required version to 5.11
Signed-off-by: Thomas Guillem <thomas@gllm.fr>
2019-04-10 14:11:43 +02:00
Hugo Beauzée-Luyssen
5aafa3a376 codec: Remove wmafixed
It is not built by default, and there are some security concerns if it
would.
2019-04-04 10:31:17 +02:00
Hugo Beauzée-Luyssen
f799f9ced9 configure.ac: Bump required C++ version to 14 2019-04-04 10:31:17 +02:00
Steve Lhomme
16040ccb7a do not use tchar.h in VLC
We don't include tchar.h anymore, nor TCHAR, nor the *tcs* APIs. Using any of
these will fail to compile if tchar.h is not included. In MinGW it's never
included through other headers.

We don't need _UNICODE either which is specific to tchar.h.
2019-04-03 10:28:50 +02:00
Steve Lhomme
fa1bf247e0 configure: fix vcd + winstore test for some Linux build systems 2019-04-01 12:03:12 +02:00
Steve Lhomme
0fc8e67cfc vout: directdraw: remove this display module
For old windows version there's always the GDI fallback.
2019-03-29 16:01:29 +01:00
David Fuhrmann
80b149ddf9 configure.ac: Require at least srt 1.3.0
Recent commits use defines like SRT_LIVE_DEF_PLSIZE, which are
only available starting with that srt version.
2019-03-20 21:11:19 +01:00
Steve Lhomme
535b27b469 configure: disable vcd/cdda access for Winstore builds
DeviceIoControl and all the IOCTL_CDROM_xxx we use are not available
2019-03-20 11:09:47 +01:00
Steve Lhomme
a179f3645f configure: remove the PKG_CONFIG_PATH variable
It's already set by the PKG_PROG_PKG_CONFIG call below with a nicer order of
variables and more official documentation.
2019-03-19 11:55:00 +01:00
Steve Lhomme
d64901cdea configure: fix the PKG_CONFIG_PATH when building on mingw32 shells
The mingw32/mingw64 pkg-config doesn't handle UNIX pathes
2019-03-19 11:37:39 +01:00
Steve Lhomme
277b45efff configure: use WINSTORECOMPAT when building for Windows Store
We may use some forbidden APIs that are actually usable via WindowsStoreCompat

GetACP in the core, for example.
2019-03-19 11:37:38 +01:00
Konstantin Pavlov
d5ec278bde configure: restore FLAGS after avx check 2019-03-07 21:29:37 +03:00
Lyndon Brown
629978898c configure: add AVX(2) module
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
2019-03-06 17:11:23 +01:00
Rémi Denis-Courmont
7ce46c2ff8 xcb/xvideo: remove XVideo module
Originally, XVideo was the HAL for video ("2D") overlay.
Nowadays, XVideo is but a backward compatibility wrapper around the 3D
hardware for use by legacy applications (notably GLAMOR provides XVideo
using OpenGL). VLC supports OpenGL well nowadays, so there is no point
in using XVideo.
2019-02-23 16:53:10 +02:00
Jean-Baptiste Kempf
3fce6dbf7d Relax a bit the dvdnav requirement 2019-02-20 19:47:44 +01:00
Jean-Baptiste Kempf
4b2c2a7bd0 Bump dvdnav version requirement to 6.0.0 2019-02-16 15:31:55 +01:00
Thomas Guillem
2e66abe96f configure: enable debug by default
It seems that lot of developers forget to enable this option. This option
enables assert and other debug codes (like the very useful thread/mutex debug
code) that should be mandatory when you dev on VLC.

This is quite a big change: all VLC maintainers should now add
"--disable-debug" when they release a stable version of VLC.
2019-02-08 08:20:40 +01:00
Hugo Beauzée-Luyssen
a4f4e40465 taglib: Require version 1.11 2019-02-07 15:59:02 +01:00
Hugo Beauzée-Luyssen
6934f5ced1 configure.ac: Don't attempt to use kde4-config on Android 2019-02-07 14:24:18 +01:00
Martin Storsjö
4285591989 configure: Don't set X86ASMFLAGS for windows on arm
This avoids enabling HAVE_X86ASM in these configurations, fixing
compilation.

Also set proper values for WINDOWS_ARCH in these configurations.
2019-02-07 12:48:06 +02:00
Martin Storsjö
8a695c31d3 configure: Add a missing $ for a variable expansion
This fixes the test for setting HAVE_X86ASM.
2019-02-07 12:48:06 +02:00
Janne Grunau
d306cad028 build: x86: add build support for nasm via x86inc.asm/x86util.asm
x86inc.asm copied from dav1d (8c5d34c85613) and x86util.asm from libav
(994c4bc10751). Libav's LGPL licensed x86util.asm is required for yadif.

This reverts "Remove unused support for .asm files"
commit 6c0f63cd68.

Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
2019-02-05 10:12:06 +01:00
Steve Lhomme
1f86df44e3 configure: include glew.h before wglew.h
In recent wglew.h it relies on the DLL export mode defined in glew.h
2019-01-28 10:09:45 +01:00
Thomas Guillem
b3eaf5a239 compat: remove qsort_r 2019-01-22 18:55:32 +01:00
Thomas Guillem
2bc72d3fae configure: detect broken qsort_r 2019-01-22 18:55:29 +01:00
Hugo Beauzée-Luyssen
b568777797 configure.ac: Don't check for clock_nanosleep on win32
Now that we use winpthreads, configure finds clock_nanosleep there,
causing -pthread to be added to the libvlccore requirement, while we
don't use it for win32.
2019-01-16 08:33:33 +01:00
Janne Grunau
9dc7a22eca build: avoid annoying _FORTIFY_SOURCE warnings (fixes #17341)
fixed patch with the duplicate "#if defined ..." removed

Janne
---8<---
Some toolchains predefine _FORTIFY_SOURCE resulting in countless
_FORTIFY_SOURCE is redefined warnings. Using _FORTIFY_SOURCE without
compiler optimizations also generates warnings.
_FORTIFY_SOURCE is a reserved identifier in C99 ("All identifiers that
begin with an underscore and either an uppercase letter or another
underscore are always reserved for any use.") so the toolchain is
perfectly free to predefine it.

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2019-01-03 19:46:15 +02:00
Jean-Baptiste Kempf
643a30d5f8 Welcome to 2019 2019-01-02 07:58:14 +01:00
Rémi Denis-Courmont
19c8c3a7e6 xcb/render: X11 RENDER display plugin
This brings the modern (well, at least current) X11 rendering protocol
for video output (refs #12348).

Compared to plain X11, it can handle scaling and orientation.
Compared to XVideo, it can handle orientation, and can crop correctly
(without bleeding), but it expects packed RGB rather than YCbCr.

Also RENDER would be able to handle SPU blending (and SPU scaling),
though this is left for future work, which neither X11 nor XVideo can.
2018-12-19 21:10:29 +02:00
Rémi Denis-Courmont
797c455918 aarch64: allow run-time NEON detection
(if NEON is disabled in the C compiler settings)
2018-12-17 20:04:46 +02:00
Hugo Beauzée-Luyssen
94ba3ab496 configure.ac: Detect aarch64 as a 64bits windows 2018-12-12 17:37:52 +01:00
Rémi Denis-Courmont
edf6ff7544 cpu: generic support for ARM SVE
This adds generic support for the AArch64 Scalable Vector Extension.
2018-12-11 22:54:28 +02:00
Rémi Denis-Courmont
fdc57213fc xcb: require MIT-SHM extension version 1.2 2018-12-09 20:43:18 +02:00
Rémi Denis-Courmont
3ebd72e039 xdg_shell: use xdg-decoration (unstable v1) protocol
...rather than KDE-specific stuff.
2018-12-02 20:25:05 +02:00
Rémi Denis-Courmont
5ffb9dfe0e compat: replace qsort_r() where missing
This should sort properly on Windows and any other platform without
qsort_r(). It does _not_ fix any potential issues on any platforms with
an incompatible qsort_r() prototype (such as FreeBSD < 13).
2018-11-20 17:59:15 +02:00
David Fuhrmann
cedb3335b4 qtsound: Remove module
It has been replaced by avaudiocapture module.
2018-11-18 14:21:43 +01:00
Rémi Denis-Courmont
dc47f00dc2 configure: actually enable Qt by default
...as the help text claims.
2018-11-17 19:16:50 +02:00
Adrien Maglo
059b9e563b codec: add a dav1d AV1 decoder module
It is using the picture callback API so there's is no copy on output of the decoder.

Co-authored-by: Hugo Beauzée-Luyssen <hugo@beauzee.fr>
Co-authored-by: Steve Lhomme <robux4@ycbcr.xyz>
2018-11-09 12:08:17 +01:00
Niklas Haas
1386b85049 vout: add new vulkan/libplacebo vout
This uses libplacebo's rendering helpers for all video output, on top of
the vulkan graphics API. Some notes:

- The existing fourcc/chroma helpers don't really line up with what the
  libplacebo API expects, or in some cases return values that just don't
  seem to make sense. I was advised against touching them for fear of
  breaking the rest of VLC - so we add our own helpers that give us the
  information in the format we need for libplacebo.

- Not all libplacebo options are mapped. There's no ability to create
  custom filter functions (which libplacebo/mpv support), and there's
  also no support for ICC profiles / 3DLUTs (which libplacebo supports)
  nor for the new color blindness simulation parameters in libplacebo
  v0.6. We also don't map the VLC brightness/hue/gamma/etc. options to
  the libplacebo structs - we could do it for free as part of the video
  decode matrix, rather than needing to insert a CPU filter for it.

- How to create the vulkan surface will depend on the platform (much
  like in opengl), so we move context, surface and device creation into
  a single module (`vulkan/surface.c`) which will be conditionally
  compiled depending on the platform in order to provide support for
  multiple surfaces side-by-side (e.g. x11 and wayland). This does mean
  that the context/device-related options end up being separate per
  platform, but OTOH this is not that bad since different platforms
  might want different e.g. swapchain modes (an example being wayland,
  which can make better use of mailbox rather than fifo).

- libplacebo doesn't have a "configure" step, instead all rendering
  parameters are fully dynamic. So we could call UpdateParams() in our
  module at any point in time when the config values change.
  Unfortunately, there's no easy way for us to find out when this is the
  case, so right now changing the vulkan module options requires a
  module reinit to take effect. In theory we could change this. (As an
  aside: calling var_Inherit* per frame does work to get us the changes
  in "realtime", as soon as the user clicks "save", but this may block
  for arbitrary amounts of time so I was advised against doing it)

Due to the new functions, structs and enum members used, the minimum
libplacebo version has been bumped up to v0.5.0. In theory we could also
try and support v0.4.0 with some #ifdefs, but v0.5.0 has been out for
several months now so it should be a safe requirement.
2018-11-07 15:45:26 +01:00
Thomas Guillem
5cf3e998e7 configure: require next bitstream release
The version needed for RIST is not yet released.
2018-11-06 10:19:45 +01:00
Thomas Guillem
abf93d8f78 configure: add check for the bitstream project 2018-11-05 18:25:35 +01:00
Thomas Guillem
c3d17825dc configure: add share folder for pkg-config search path
Headers only projects install generally their .pc into the share directory.
2018-11-05 18:25:24 +01:00
Victorien Le Couviour--Tuffet
cf9bd77c67 compat: add lfind
Fixes android build with NDK 17 as lfind is not always available.
2018-10-23 14:53:25 +02:00
Victorien Le Couviour--Tuffet
0481899b5d vlc_fixups: fix struct if_nameindex definition
Fixes android ndk17 build
2018-10-23 14:53:25 +02:00