ffmpeg/libavdevice
Timo Rothenpieler 6ca43a9675 avdevice/lavfi: output wrapped AVFrames
This avoids an extra copy of potentially quite big video frames.
Instead of copying the entire frames data into a rawvideo packet it
packs the frame into a wrapped avframe packet and passes it through
as-is.
Unfortunately, wrapped avframes are set up to be video frames, so the
audio frames continue to be copied.

Additionally, this enabled passing through video frames that previously
were impossible to process, like hardware frames or other special
formats that couldn't be packed into a rawvideo packet.
2022-07-18 00:32:55 +02:00
..
tests
.gitignore
alldevices.c configure, avcodec/Makefile: Add new mpeg4audio CONFIG_EXTRA group 2022-01-04 13:16:50 +01:00
alsa_dec.c alsa: convert to new channel layout API 2022-03-15 09:42:30 -03:00
alsa_enc.c av(format|device): Add const to muxer packet data pointers 2022-07-09 19:37:53 +02:00
alsa.c configure: Use a separate config_components.h header for $ALL_COMPONENTS 2022-03-16 14:12:49 +02:00
alsa.h avdevice/alsa_dec: make sure we have enough data in non-blocking mode 2021-03-12 23:55:30 +01:00
android_camera.c libavcodec, libavdevice: Remove unnecessary includes of version.h 2022-02-24 22:36:15 +02:00
audiotoolbox.m avdevice: Constify all devices 2021-04-27 11:48:05 -03:00
avdevice.c avdevice/avdevice: fix return value of avdevice_list_devices() 2022-07-17 22:03:41 +02:00
avdevice.h Keep including the full version.h when headers are included externally 2022-03-19 00:01:57 +02:00
avdeviceres.rc
avfoundation.m lavd/avfoundation: Fix mixed declaration and code 2022-02-22 13:10:42 +01:00
bktr.c avdevice: Constify all devices 2021-04-27 11:48:05 -03:00
caca.c avdevice/caca: Don't free AVOpt-enabled string manually 2021-10-09 14:18:12 +02:00
decklink_common_c.h avdevice/decklink_(common_c|dec|enc).h: Fix checkheaders 2022-02-21 13:09:48 +01:00
decklink_common.cpp avdevice/decklink: support for more duplex mode for Decklink 8K Pro 2021-08-16 10:00:39 +08:00
decklink_common.h avcodec/packet_internal: Add proper PacketList struct 2022-01-04 13:16:50 +01:00
decklink_dec_c.c avdevice/decklink: support for more duplex mode for Decklink 8K Pro 2021-08-16 10:00:39 +08:00
decklink_dec.cpp decklink: convert to new channel layout API 2022-03-15 09:42:31 -03:00
decklink_dec.h avdevice/decklink_(common_c|dec|enc).h: Fix checkheaders 2022-02-21 13:09:48 +01:00
decklink_enc_c.c avdevice/decklink: support for more duplex mode for Decklink 8K Pro 2021-08-16 10:00:39 +08:00
decklink_enc.cpp decklink: convert to new channel layout API 2022-03-15 09:42:31 -03:00
decklink_enc.h avdevice/decklink_(common_c|dec|enc).h: Fix checkheaders 2022-02-21 13:09:48 +01:00
dshow_capture.h avcodec/packet_internal: Add proper PacketList struct 2022-01-04 13:16:50 +01:00
dshow_common.c
dshow_crossbar.c avdevice/dshow: tv_tuner_audio_dialog cleanup missing 2022-01-04 17:40:29 +05:30
dshow_enummediatypes.c avdevice/dshow: fix crash on x86 2022-01-04 17:40:54 +05:30
dshow_enumpins.c avdevice/dshow: fix crash on x86 2022-01-04 17:40:54 +05:30
dshow_filter.c avdevice/dshow: fix crash on x86 2022-01-04 17:40:54 +05:30
dshow_pin.c avdevice/dshow: fix crash on x86 2022-01-04 17:40:54 +05:30
dshow.c avdevice/dshow: reuse unused variables. 2022-05-12 22:06:44 -03:00
fbdev_common.c
fbdev_common.h
fbdev_dec.c Remove unnecessary mem.h inclusions 2021-07-22 14:47:57 +02:00
fbdev_enc.c av(format|device): Add const to muxer packet data pointers 2022-07-09 19:37:53 +02:00
file_open.c
gdigrab.c avdevice: Constify all devices 2021-04-27 11:48:05 -03:00
iec61883.c configure: Use a separate config_components.h header for $ALL_COMPONENTS 2022-03-16 14:12:49 +02:00
internal.h avformat: Constify the API wrt AV(In|Out)putFormat 2021-04-27 10:43:08 -03:00
jack.c jack: port to new channel layout API 2022-03-15 09:42:33 -03:00
kmsgrab.c avdevice: Constify all devices 2021-04-27 11:48:05 -03:00
lavfi.c avdevice/lavfi: output wrapped AVFrames 2022-07-18 00:32:55 +02:00
libavdevice.v
libcdio.c avformat/demux: Add new demux.h header 2022-05-10 07:37:38 +02:00
libdc1394.c avdevice: Constify all devices 2021-04-27 11:48:05 -03:00
Makefile lib*/version: Move library version functions into files of their own 2022-05-10 06:49:32 +02:00
openal-dec.c openal: convert to new channel layout API 2022-03-15 09:42:35 -03:00
opengl_enc_shaders.h
opengl_enc.c avformat/internal: Move muxing-only functions to new mux.h header 2022-05-10 07:27:01 +02:00
oss_dec.c avdevice/oss_dec: account for sample size when computing timestamp 2022-06-19 23:01:20 +02:00
oss_enc.c av(format|device): Add const to muxer packet data pointers 2022-07-09 19:37:53 +02:00
oss.c avdevice/oss_dec: account for sample size when computing timestamp 2022-06-19 23:01:20 +02:00
oss.h avdevice/oss_dec: account for sample size when computing timestamp 2022-06-19 23:01:20 +02:00
pulse_audio_common.c
pulse_audio_common.h
pulse_audio_dec.c avdevice/pulse_audio_dec: deprecate frame_size option 2022-06-16 21:28:20 +02:00
pulse_audio_enc.c avformat/internal: Move muxing-only functions to new mux.h header 2022-05-10 07:27:01 +02:00
reverse.c
sdl2.c avdevice: Constify all devices 2021-04-27 11:48:05 -03:00
sndio_dec.c sndio: convert to new channel layout API 2022-03-15 09:42:37 -03:00
sndio_enc.c av(format|device): Add const to muxer packet data pointers 2022-07-09 19:37:53 +02:00
sndio.c
sndio.h
timefilter.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
timefilter.h avdevice/timefilter: remove obsolete comments from the docs 2021-02-27 21:30:41 +01:00
utils.c avformat: Constify the API wrt AV(In|Out)putFormat 2021-04-27 10:43:08 -03:00
v4l2-common.c lavd/v4l2-common: Add an entry for Z16. 2019-03-22 12:30:47 +01:00
v4l2-common.h avdevice/v4l2*: Improve included headers 2022-05-10 07:38:01 +02:00
v4l2.c avdevice/v4l2*: Improve included headers 2022-05-10 07:38:01 +02:00
v4l2enc.c avdevice/v4l2*: Improve included headers 2022-05-10 07:38:01 +02:00
version_major.h libavdevice: Split version.h 2022-03-16 14:05:26 +02:00
version.c lib*/version: Move library version functions into files of their own 2022-05-10 06:49:32 +02:00
version.h avdevice/lavfi: output wrapped AVFrames 2022-07-18 00:32:55 +02:00
vfwcap.c avcodec/packet_internal: Add proper PacketList struct 2022-01-04 13:16:50 +01:00
xcbgrab.c av(codec|device): Don't cast pointers to int 2021-11-21 00:35:30 +01:00
xv.c avformat/internal: Move muxing-only functions to new mux.h header 2022-05-10 07:27:01 +02:00