ba1c759bb4a5038bfb87fea4843ceecf1170c00a
[openwrt/staging/linusw.git] /
1 From 275ce8667a725d37a22b726fbd64a785243b6d9a Mon Sep 17 00:00:00 2001
2 From: Dave Stevenson <dave.stevenson@raspberrypi.com>
3 Date: Fri, 15 May 2020 13:48:59 +0100
4 Subject: [PATCH] staging:vc04_services: bcm2835-camera: Request
5 headers with I-frame
6
7 V4L2 wishes to have the codec header bytes in the same buffer as the
8 first encoded frame, so it does become 1-in 1-out for encoding.
9 The firmware now has an option to do this, so enable it.
10
11 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
12 ---
13 .../staging/vc04_services/bcm2835-camera/bcm2835-camera.c | 6 ++++++
14 1 file changed, 6 insertions(+)
15
16 --- a/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.c
17 +++ b/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.c
18 @@ -1734,6 +1734,12 @@ static int mmal_init(struct bm2835_mmal_
19 MMAL_PARAMETER_MINIMISE_FRAGMENTATION,
20 &enable,
21 sizeof(enable));
22 +
23 + /* Enable inserting headers into the first frame */
24 + vchiq_mmal_port_parameter_set(dev->instance,
25 + &dev->component[COMP_VIDEO_ENCODE]->control,
26 + MMAL_PARAMETER_VIDEO_ENCODE_HEADERS_WITH_FRAME,
27 + &enable, sizeof(enable));
28 }
29 ret = bm2835_mmal_set_all_camera_controls(dev);
30 if (ret < 0) {