Page MenuHomeFreeBSD

video: add V4L2 compat symbols for ffmpeg/opencv
ClosedPublic

Authored by guest-seuros on Wed, Aug 12, 11:07 AM.
Tags
None
Referenced Files
F166405853: D58793.id183920.diff
Thu, Aug 13, 10:53 AM
F166403322: D58793.id183909.diff
Thu, Aug 13, 10:19 AM
F166355730: D58793.diff
Thu, Aug 13, 2:27 AM
Unknown Object (File)
Wed, Aug 12, 1:52 PM
Unknown Object (File)
Wed, Aug 12, 1:47 PM

Details

Summary

Adds v4l2_std_id, struct v4l2_standard/v4l2_plane, VIDIOC_G_STD/S_STD/
ENUMSTD, V4L2_STD_NTSC*, the MPLANE capability flag, multiplanar types
(VIDEO_MAX_PLANES, v4l2_plane_pix_format, v4l2_pix_format_mplane,
V4L2_TYPE_IS_MULTIPLANAR), V4L2_PIX_FMT_JPEG/YUV411P/SN9C10X, and the
MPEG control class (V4L2_CID_MPEG_BASE, V4L2_CID_MPEG_VIDEO_B_FRAMES).

video(4) capture devices are digital-only and never expose these, but
ffmpeg's libavdevice/v4l2.c and opencv's cap_v4l.cpp both reference
them unconditionally. Fixes their build against sys/videoio.h.

PR: 297454

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

looks good, please add a second diff in the stack that increments sys/param.h __FreeBSD_version from 1600019 to 1600020 and add a quick note in UPDATING that the new video refactor has landed and sys/videoio.h is now provided as the API to communicate with it.

That way ports that need to know about the changeover window can just do it based on __FreeBSD_version .

This revision is now accepted and ready to land.Wed, Aug 12, 2:57 PM
This revision was automatically updated to reflect the committed changes.