I have a Raspberry Pi Camera 2 and a Raspberry Pi 4 8GB. I was hoping to use the onboard encoder for the webcam to avoid the bandwidth consumption of MJPEG. This is my first trip down this particular rabbit hole. With the guidance of previous threads, I've already recompiled camera-streamer to get it to work at all. Now it appears to work completely when using the Adaptive MJPEG-Streamer service.
Switching the URL Stream to /webcam/webrtc and the service to WebRTC (camera-streamer) gives me a blank box. Some advice I found from searching other threads suggested reducing the selected mode. So I did that.
Available cameras
-----------------
0 : imx219 [3280x2464] (/base/soc/i2c0mux/i2c@1/imx219@10)
Modes: 'SRGGB10_CSI2P' : 640x480 [30.00 fps - (0, 0)/0x0 crop]
1640x1232 [30.00 fps - (0, 0)/0x0 crop]
1920x1080 [30.00 fps - (0, 0)/0x0 crop]
3280x2464 [30.00 fps - (0, 0)/0x0 crop]
'SRGGB8' : 640x480 [30.00 fps - (0, 0)/0x0 crop]
1640x1232 [30.00 fps - (0, 0)/0x0 crop]
1920x1080 [30.00 fps - (0, 0)/0x0 crop]
3280x2464 [30.00 fps - (0, 0)/0x0 crop]```
And the relevant snippet from `crowsnest.conf`:
```device: /base/soc/i2c0mux/i2c@1/imx219@10 # See Log for available ...
resolution: 1920x1080 # widthxheight format
custom_flags: --camera-video.height=1080```
This works, but it crops to the center of the frame. This is unfortunate because it makes for a too-narrow field-of-view. Is there a way to use a the 2x2 binning mode to do this downsizing rather than a crop? I'd like to preserve the FOV.