h264_v4l2m2m on Raspberry Pi 4B 64-bit - Has Invalid Parameter Specified to H.264
<!-- BUG REPORTS THAT ARE NOT FILLED OUT COMPLETELY WILL BE CLOSED AUTOMATICALLY WITHOUT WARNING AND WILL NOT RECEIVE A RESPONSE. THE FORM IS HERE FOR A REASON. :). -->
<!-- Please ensure you read the documentation before creating a support request, especially the Troubleshooting page. -->
<!-- BUG REPORTS ABOUT BETA VERSIONS OF UNIFI / UBIQUITI FIRMWARE OR EARLY-ACCESS/BETA HARDWARE WILL BE CLOSED WITHOUT A RESPONSE. ALL BETA RELEASES FROM UBIQUITI ARE UNSUPPORTED -->

**Describe The Problem:**
<!-- A clear and concise description of what the issue is. -->
Some of the parameters specified to FFMpeg don't work with hardware encoding (h264_v4l2m2m) on the Raspberry Pi. Is there any chance you could change up the parameters if h264_v4l2m2m is specified, or allow us to specify our own parameters for streams? I think for a small number of cameras, the GPU encoding will greatly improve my results. 

**To Reproduce:**
<!-- Steps to reproduce the behavior. -->
Use Raspberry Pi 4B board 64-bit, Raspbian LITE OS 64-bit.
Install Homebridge and Plugin.
Change encoder to h264_v4l2m2m

**Logs:**
<!-- In order to be helpful, include the relevant logs from Homebridge, if applicable. -->
[28/05/2022, 16:11:58] [UniFi Protect] UNVR [UNVR4] Front Doorbell [UVC G4 Doorbell]: FFmpeg process ended unexpectedly with an exit code of 1.
[28/05/2022, 16:11:58] [UniFi Protect] UNVR [UNVR4] Front Doorbell [UVC G4 Doorbell]: FFmpeg command line that errored out was: ffmpeg -hide_banner -fflags +discardcorrupt -r 30 -f mp4 -i pipe:0 -map 0:v:0 -max_muxing_queue_size 9999 -vcodec h264_v4l2m2m -pix_fmt yuvj420p -profile:v main -level:v 4.0 -preset veryfast -b:v 2000k -bufsize 4000k -maxrate 2000k -force_key_frames expr:gte(t, n_forced * 4) -fflags +genpts+discardcorrupt -reset_timestamps 1 -movflags frag_keyframe+empty_moov+default_base_moof -map 0:a:0 -acodec copy -f mp4 pipe:1
[28/05/2022, 16:11:58] [UniFi Protect] Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'pipe:0':

[28/05/2022, 16:11:58] [UniFi Protect]   Metadata:

[28/05/2022, 16:11:58] [UniFi Protect]     major_brand     : dash

[28/05/2022, 16:11:58] [UniFi Protect]     minor_version   : 0

[28/05/2022, 16:11:58] [UniFi Protect]     compatible_brands: iso6avc1mp41

[28/05/2022, 16:11:58] [UniFi Protect]     creation_time   : 2022-05-28T23:08:36.000000Z

[28/05/2022, 16:11:58] [UniFi Protect]   Duration: 38:04:12.94, start: 137051.975389, bitrate: N/A

[28/05/2022, 16:11:58] [UniFi Protect]     Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuvj420p(pc, bt709), 1600x1200 [SAR 1:1 DAR 4:3], 0 kb/s, 30 fps, 30 tbr, 90k tbn, 60 tbc (default)

[28/05/2022, 16:11:58] [UniFi Protect]     Metadata:

[28/05/2022, 16:11:58] [UniFi Protect]       creation_time   : 2022-05-28T23:08:36.000000Z

[28/05/2022, 16:11:58] [UniFi Protect]       handler_name    : VideoHandler

[28/05/2022, 16:11:58] [UniFi Protect]       encoder         : EvoStream Media Server

[28/05/2022, 16:11:58] [UniFi Protect]     Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp (default)

[28/05/2022, 16:11:58] [UniFi Protect]     Metadata:

[28/05/2022, 16:11:58] [UniFi Protect]       creation_time   : 2022-05-28T23:08:36.000000Z

[28/05/2022, 16:11:58] [UniFi Protect]       handler_name    : SoundHandler

[28/05/2022, 16:11:58] [UniFi Protect] Stream mapping:

[28/05/2022, 16:11:58] [UniFi Protect]   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_v4l2m2m))

[28/05/2022, 16:11:58] [UniFi Protect]   Stream #0:1 -> #0:1 (copy)


**[28/05/2022, 16:11:58] [UniFi Protect] [h264_v4l2m2m @ 0x558a08cf30] [Eval @ 0x7ffd800550] Undefined constant or missing '(' in 'main'**

**[28/05/2022, 16:11:58] [UniFi Protect] [h264_v4l2m2m @ 0x558a08cf30] Unable to parse option value "main"**

**[28/05/2022, 16:11:58] [UniFi Protect] [h264_v4l2m2m @ 0x558a08cf30] Error setting option profile to value main.**

[28/05/2022, 16:11:58] [UniFi Protect] Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

[28/05/2022, 16:11:58] [UniFi Protect] Conversion failed!

[28/05/2022, 16:12:05] [UniFi Protect] UNVR [UNVR4] Front Doorbell [UVC G4 Doorbell]: HomeKit Secure Video event recording ended abnormally: HomeKit canceled the request.
```
Show the Homebridge logs here.
Remove any sensitive information.
```

**Homebridge Configuration:**
{
    "bridge": {
        "name": "Homebridge C15E",
        "username": "",
        "port":,
        "pin": ""
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port":,
            "platform": "config"
        },
        {
            "controllers": [
                {
                    "address": "192.168.1.xxx",
                }
            ],
            "options": [
                "Disable.Doorbell.Messages",
                "Disable.Doorbell.Messages.FromDoorbell",
                "Enable.Motion.SmartDetect"
            ],
            // I already removed encoder, but it was set to h264_v4l2m2m
            "platform": "UniFi Protect"
        }
    ]
}
**Screenshots:**
<!-- If applicable, add screenshots to help explain your problem. -->

**Environment:**

* **Homebridge Version:** 1.4.1
* **Node Version:** 16.14.2
* **Homebridge-UniFi-Protect Plugin Version:**
* **UniFi Protect Version:** 5.5.2
* **UniFi Protect Controller Type:** UNVR
* **UniFi Protect Controller Firmware Version:** Latest
* **Apple Device and iOS / macOS / iPadOS / tvOS Version:** 15.5
* **Operating System and OS Version:** Raspbian Lite OS 64-bit

<!-- Click the "Preview" tab before you submit to ensure the formatting is correct. -->
