a738b33c5e694d5150058727c99bac9c8c345fb5
[openwrt/staging/pepe2k.git] /
1 From 45e23b963f9bac2f83abf1c980f2269c608a12c9 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 @@ -1730,6 +1730,12 @@ static int mmal_init(struct bcm2835_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 = bcm2835_mmal_set_all_camera_controls(dev);
30 if (ret < 0) {