Commit 4fef648d authored by Diego Biurrun's avatar Diego Biurrun

Remove the legacy X11 screen grabber

The XCB screen grabber is a drop-in replacement and not under GPL.
parent 8495d84f
...@@ -61,6 +61,7 @@ version <next>: ...@@ -61,6 +61,7 @@ version <next>:
- Duck TrueMotion 2.0 Real Time decoder - Duck TrueMotion 2.0 Real Time decoder
- Intel QSV video scaling and deinterlacing filter - Intel QSV video scaling and deinterlacing filter
- OpenH264 decoder wrapper - OpenH264 decoder wrapper
- Removed the legacy X11 screen grabber, use XCB instead
version 11: version 11:
......
...@@ -13,7 +13,6 @@ configure to activate them. In this case, Libav's license changes to GPL v2+. ...@@ -13,7 +13,6 @@ configure to activate them. In this case, Libav's license changes to GPL v2+.
Specifically, the GPL parts of Libav are Specifically, the GPL parts of Libav are
- the X11 grabber in libavdevice/x11grab.c
- the texi2pod.pl tool - the texi2pod.pl tool
- the following filters in libavfilter: - the following filters in libavfilter:
- vf_blackframe.c - vf_blackframe.c
......
...@@ -227,7 +227,6 @@ External library support: ...@@ -227,7 +227,6 @@ External library support:
--enable-libxcb-xfixes X11 mouse rendering [auto] --enable-libxcb-xfixes X11 mouse rendering [auto]
--enable-libxvid MPEG-4 ASP video encoding --enable-libxvid MPEG-4 ASP video encoding
--enable-openssl crypto --enable-openssl crypto
--enable-x11grab X11 grabbing through xlib (legacy, use xcb instead)
--enable-zlib compression [autodetect] --enable-zlib compression [autodetect]
The following libraries provide various hardware acceleration features: The following libraries provide various hardware acceleration features:
...@@ -1242,7 +1241,6 @@ EXTERNAL_LIBRARY_GPL_LIST=" ...@@ -1242,7 +1241,6 @@ EXTERNAL_LIBRARY_GPL_LIST="
libx265 libx265
libxavs libxavs
libxvid libxvid
x11grab
" "
EXTERNAL_LIBRARY_NONFREE_LIST=" EXTERNAL_LIBRARY_NONFREE_LIST="
...@@ -2369,7 +2367,6 @@ sndio_outdev_deps="sndio_h" ...@@ -2369,7 +2367,6 @@ sndio_outdev_deps="sndio_h"
v4l2_indev_deps_any="linux_videodev2_h sys_videoio_h" v4l2_indev_deps_any="linux_videodev2_h sys_videoio_h"
vfwcap_indev_deps="capCreateCaptureWindow vfwcap_defines" vfwcap_indev_deps="capCreateCaptureWindow vfwcap_defines"
vfwcap_indev_extralibs="-lavicap32" vfwcap_indev_extralibs="-lavicap32"
x11grab_indev_deps="x11grab"
x11grab_xcb_indev_deps="libxcb" x11grab_xcb_indev_deps="libxcb"
# protocols # protocols
...@@ -4752,10 +4749,10 @@ fi ...@@ -4752,10 +4749,10 @@ fi
check_lib X11/Xlib.h XOpenDisplay -lX11 && enable xlib check_lib X11/Xlib.h XOpenDisplay -lX11 && enable xlib
if enabled libxcb || enabled x11grab && ! disabled libxcb; then if enabled libxcb; then
check_pkg_config xcb-shape xcb/shape.h xcb_shape_rectangles || { check_pkg_config xcb-shape xcb/shape.h xcb_shape_rectangles || {
enabled libxcb && die "ERROR: libxcb not found"; enabled libxcb && die "ERROR: libxcb not found";
} && disable x11grab && enable libxcb } && enable libxcb
disabled libxcb_shm || disabled libxcb_shm ||
check_pkg_config xcb-shm xcb/shm.h xcb_shm_attach || { check_pkg_config xcb-shm xcb/shm.h xcb_shm_attach || {
...@@ -4771,12 +4768,6 @@ if enabled libxcb || enabled x11grab && ! disabled libxcb; then ...@@ -4771,12 +4768,6 @@ if enabled libxcb || enabled x11grab && ! disabled libxcb; then
add_extralibs "$xcb_event_libs $xcb_shm_libs $xcb_xfixes_libs" add_extralibs "$xcb_event_libs $xcb_shm_libs $xcb_xfixes_libs"
fi fi
if enabled x11grab; then
enabled xlib || die "ERROR: Xlib not found"
require Xext X11/extensions/XShm.h XShmCreateImage -lXext
require Xfixes X11/extensions/Xfixes.h XFixesGetCursorImage -lXfixes
fi
enabled vaapi && enabled vaapi &&
check_code cc "va/va.h" "vaCreateSurfaces(0, 0, 0, 0, 0, 0, 0, 0)" || check_code cc "va/va.h" "vaCreateSurfaces(0, 0, 0, 0, 0, 0, 0, 0)" ||
disable vaapi disable vaapi
......
...@@ -23,7 +23,6 @@ OBJS-$(CONFIG_SNDIO_INDEV) += sndio_dec.o sndio.o ...@@ -23,7 +23,6 @@ OBJS-$(CONFIG_SNDIO_INDEV) += sndio_dec.o sndio.o
OBJS-$(CONFIG_SNDIO_OUTDEV) += sndio_enc.o sndio.o OBJS-$(CONFIG_SNDIO_OUTDEV) += sndio_enc.o sndio.o
OBJS-$(CONFIG_V4L2_INDEV) += v4l2.o OBJS-$(CONFIG_V4L2_INDEV) += v4l2.o
OBJS-$(CONFIG_VFWCAP_INDEV) += vfwcap.o OBJS-$(CONFIG_VFWCAP_INDEV) += vfwcap.o
OBJS-$(CONFIG_X11GRAB_INDEV) += x11grab.o
OBJS-$(CONFIG_X11GRAB_XCB_INDEV) += xcbgrab.o OBJS-$(CONFIG_X11GRAB_XCB_INDEV) += xcbgrab.o
# external libraries # external libraries
......
...@@ -58,7 +58,6 @@ void avdevice_register_all(void) ...@@ -58,7 +58,6 @@ void avdevice_register_all(void)
REGISTER_INOUTDEV(SNDIO, sndio); REGISTER_INOUTDEV(SNDIO, sndio);
REGISTER_INDEV (V4L2, v4l2); REGISTER_INDEV (V4L2, v4l2);
REGISTER_INDEV (VFWCAP, vfwcap); REGISTER_INDEV (VFWCAP, vfwcap);
REGISTER_INDEV (X11GRAB, x11grab);
REGISTER_INDEV (X11GRAB_XCB, x11grab_xcb); REGISTER_INDEV (X11GRAB_XCB, x11grab_xcb);
/* external libraries */ /* external libraries */
......
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
* (de)muxers in libavdevice are of the AVFMT_NOFILE type (they use their own * (de)muxers in libavdevice are of the AVFMT_NOFILE type (they use their own
* I/O functions). The filename passed to avformat_open_input() often does not * I/O functions). The filename passed to avformat_open_input() often does not
* refer to an actually existing file, but has some special device-specific * refer to an actually existing file, but has some special device-specific
* meaning - e.g. for x11grab it is the display name. * meaning - e.g. for x11grab_xcb it is the display name.
* *
* To use libavdevice, simply call avdevice_register_all() to register all * To use libavdevice, simply call avdevice_register_all() to register all
* compiled muxers and demuxers. They all use standard libavformat API. * compiled muxers and demuxers. They all use standard libavformat API.
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment