From d9452f3bbcf94e161c7a47711f45ef3bca61c058 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Fri, 15 May 2020 13:48:59 +0100 Subject: [PATCH 0213/1085] staging:vc04_services: bcm2835-camera: Request headers with I-frame V4L2 wishes to have the codec header bytes in the same buffer as the first encoded frame, so it does become 1-in 1-out for encoding. The firmware now has an option to do this, so enable it. Signed-off-by: Dave Stevenson --- .../staging/vc04_services/bcm2835-camera/bcm2835-camera.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.c +++ b/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.c @@ -1730,6 +1730,12 @@ static int mmal_init(struct bcm2835_mmal MMAL_PARAMETER_MINIMISE_FRAGMENTATION, &enable, sizeof(enable)); + + /* Enable inserting headers into the first frame */ + vchiq_mmal_port_parameter_set(dev->instance, + &dev->component[COMP_VIDEO_ENCODE]->control, + MMAL_PARAMETER_VIDEO_ENCODE_HEADERS_WITH_FRAME, + &enable, sizeof(enable)); } ret = bcm2835_mmal_set_all_camera_controls(dev); if (ret < 0) {