Page MenuHomeFreeBSD

video: add V4L2 compat symbols for ffmpeg/opencv
ClosedPublic

Authored by seuros on Wed, Aug 12, 11:07 AM.
Tags
None
Referenced Files
F170596389: D58793.id.diff
Sat, Sep 5, 1:58 PM
Unknown Object (File)
Sat, Sep 5, 8:18 AM
Unknown Object (File)
Tue, Sep 1, 7:55 PM
Unknown Object (File)
Tue, Sep 1, 1:31 AM
Unknown Object (File)
Fri, Aug 28, 4:50 AM
Unknown Object (File)
Tue, Aug 25, 1:10 PM
Unknown Object (File)
Mon, Aug 24, 8:02 PM
Unknown Object (File)
Mon, Aug 24, 7:36 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.