ffmpeg/libavdevice
Nicolas George 0bd1be65e8 lavd/xcbgrab: do not try to create refcounted packets.
The framework will allocate a buffer and copy the data to it,
that takes time. But it avoids constently creating and
destroyng the shared memory segment, and that saves more time.

On my setup,
from ~200 to ~300 FPS at full screen (1920×1200),
from ~1400 to ~3300 at smaller size (640×480),
similar to legacy x11grab and confirmed by others.

Plus, shared memory segments are a scarce resource,
allocating potentially many is a bad idea.

Note: if the application were to drop all references to the
buffer before the next call to av_read_frame(), then passing
the shared memory segment as a refcounted buffer would be
even more efficient, but it is hard to guarantee, and it does
not happen with the ffmpeg command-line tool. Using a small
number of preallocated buffers and resorting to a copy when
the pool is exhausted would be a solution to get the better
of both worlds.
2016-11-03 21:23:55 +01:00
..
tests
Makefile lavd: drop SDL1 device and SDL1 support 2016-09-24 16:52:40 +01:00
alldevices.c lavd: drop SDL1 device and SDL1 support 2016-09-24 16:52:40 +01:00
alsa.c
alsa.h
alsa_dec.c
alsa_enc.c
avdevice.c
avdevice.h doxygen: Standardize root-level modules 2016-08-02 22:15:25 -07:00
avdeviceres.rc
avfoundation.m
bktr.c
caca.c
decklink_common.cpp decklink: enhancement: format selection with AVRational v2 2016-08-05 21:33:43 +02:00
decklink_common.h lavd/decklink_dec: add option to disable drawing bars on signal loss 2016-10-21 20:24:12 +02:00
decklink_common_c.h lavd/decklink_dec: add option to disable drawing bars on signal loss 2016-10-21 20:24:12 +02:00
decklink_dec.cpp lavd/decklink_dec: fix indentation 2016-10-21 20:24:12 +02:00
decklink_dec.h cosmetics: Correct comments in decklink_dec 2016-08-02 13:01:12 -07:00
decklink_dec_c.c lavd/decklink_dec: add option to disable drawing bars on signal loss 2016-10-21 20:24:12 +02:00
decklink_enc.cpp decklink: Remove unneeded spaces in initializers 2016-08-02 22:46:28 -07:00
decklink_enc.h
decklink_enc_c.c
dshow.c
dshow_capture.h
dshow_common.c
dshow_crossbar.c
dshow_enummediatypes.c
dshow_enumpins.c
dshow_filter.c avdevice/dshow: satisfy alloc contract better 2016-08-20 12:06:50 +02:00
dshow_pin.c
dv1394.c
dv1394.h
fbdev_common.c
fbdev_common.h
fbdev_dec.c
fbdev_enc.c
file_open.c
gdigrab.c
iec61883.c
internal.h
jack.c
lavfi.c
libavdevice.v
libcdio.c
libdc1394.c
openal-dec.c lavd/openal: don't return zero sized packet if no samples are available 2016-10-03 21:15:48 +02:00
opengl_enc.c lavd/opengl: use SDL2 2016-09-24 16:50:40 +01:00
opengl_enc_shaders.h
oss.c
oss.h
oss_dec.c
oss_enc.c
pulse_audio_common.c
pulse_audio_common.h
pulse_audio_dec.c
pulse_audio_enc.c
qtkit.m
sdl2.c lavd/sdl2: add sdl alias 2016-09-25 18:08:06 +01:00
sndio.c
sndio.h
sndio_dec.c
sndio_enc.c
timefilter.c
timefilter.h
utils.c
v4l.c
v4l2-common.c
v4l2-common.h
v4l2.c
v4l2enc.c
version.h Bump minor versions after 3.2 branchpoint to seperate release 2016-10-26 20:52:42 +02:00
vfwcap.c
x11grab.c
xcbgrab.c lavd/xcbgrab: do not try to create refcounted packets. 2016-11-03 21:23:55 +01:00
xv.c