Allwinner VPU gets open-source Linux driver for its H.264 hardware video encoder

Allwinner V3s open source Linux video encoding driver

Long-time readers of CNX Software may remember Bootlin’s crowdfunding campaign launched in 2018 to bring open-source Allwinner VPU drivers to take care of hardware video encoding and decoding in mainline Linux. They managed to raise enough funds (over 30,000 Euros) from small donors and several companies (Olimex, Pine64, Libre Computer, FriendlyELEC, and Orange Pi) to work on open-source VPU drivers for mainline Linux, but only for MPEG2, H264, and H265 decoding for in a range of Allwinner SoCs such as the A20 and H5, but not quite enough to cover the cost of H264 video encoding. Five years later, Bootlin took it upon themselves to complete the work without backing or support from Allwinner and have now released an open-source Linux-kernel based V4L2 driver to support the H.264 video encoder found in Allwinner V3, V3s, and S3 camera SoCs. The new driver builds upon earlier work by the company to […]

Raspberry Pi OS upgraded to Debian 12 “Bookworm”

Raspberry Pi OS Debian 12 Bookworm

Raspberry Pi has announced a new release of Raspberry Pi OS based on Debian 12 “Bookworm” upgrading from Debian 11 “Bullseye” which served as the base for the Raspberry Pi operating system since November 2021. As explained in the announcement, not much changes from the user perspective when switching between Debian 11 and Debian 12 with a lot of changes occurring under the hood plus they also worked on some extra features specific to Raspberry Pi OS. Wayland on Raspberry Pi OS The main change is the switch from the legacy X11 window manager to the more modern Wayland system with WayFire compositor that delivers better performance when drawing windows and improved security since it’s not using a server/client implementation. Note that Wayland is only enabled by default on Raspberry Pi 4 and 5 boards, and earlier and less powerful models still rely on X11 as work is going on […]

Getting started with e-CAM20_CURB camera for Raspberry Pi 4

eCAM20_CURB night scene

e-con Systems e-CAM20_CURB is a 2.3 MP fixed focus global shutter color camera designed for the Raspberry Pi 4, and the company has sent us a sample for evaluation and review. We’ll start by providing specifications, before checking out the package content, connecting the camera to the Raspberry Pi 4 with a DIY LEGO mount, showing how to access the resources for the camera, and trying tools provided in the Raspberry Pi OS or Yocto Linux image. e-CAM20_CURB specifications The camera is comprised of two boards with the following specifications: eCAM217_CUMI0234_MOD full HD color camera with 4-lane MIPI CSI-2 interface ON Semiconductor AR0234CS CMOS sensor with 1/2.6″ optical form-factor Global Shutter Onboard ISPimage sensor from ON Semiconductor Uncompressed UYVY streaming HD (1280 x 720) up to 120 fps Full HD (1920 x 1080) up to 65 fps 2.3 MP (1920 x 1200) up to 60 fps External Hardware Trigger Input […]

Open-source Allwinner V3 ISP driver to enable blob-free camera support in mainline Linux

Allwinner V3 ISP Linux driver

Bootlin has just submitted the first patchset for the Allwinner V3 image signal processor (ISP) driver in mainline Linux which should pave the way for a completely open-source, blob-free camera support in Linux using V4L2. There are several blocks in an SoC for camera support including a camera input interface such as MIPI CSI 2 and an ISP to process the raw data into a usable image. Add to this the need to implement the code for sensors, and there’s quite a lot of work to get it all working. Allwinner SDK comes with several binary blobs, aka closed-source binary, but Bootlin is working on making those obsolete, having first worked on Allwinner A31, V3s/V3/S3, and A83T MIPI CSI-2 support for the camera interface driver in the V4L2 framework (and Rockchip PX30, RK1808, RK3128 and RK3288 processors), as well as implemented support for Omnivision OV8865 and OV5648 image sensors earlier […]

GMSL2 camera kit supports 15-meter long cables, up to six cameras with NVIDIA Jetson Xavier AGX

6x gmsl2 cameras nvidia agx xavier devkit

We’ve recently seen it’s possible to use a long cable with the Raspberry Pi camera thanks to THine camera extension kit that works with 20-meter LAN cables using V-by-One HS technology. e-con Systems has now launched a similar solution for NVIDIA Jetson Xavier AGX, one of the most powerful Arm devkits available in 2021, with NileCAM21 Full HD GMSL2 HDR Camera that supports up to 15-meter long cable as well as LFM (LED Flickering Mitigation) technology. NileCAM21 camera features and specifications: Based on OnSemi AR0233 Full HD camera module with S-mount interchangeable lens holder Gigabit Multimedia Serial Link 2 (GMSL2) interface with FAKRA connector Shielded coaxial cable for transmission of power and data over long distances (up to 15m) High Dynamic Range (HDR) with LED Flickering Mitigation (LFM) Supported resolutions and max frame rates for uncompressed UYVY streaming VGA (640 x 480) up to 60 fps qHD (960 x 540) […]

Open-source H.265/HEVC Hantro G2 decoder driver added to NXP i.MX 8M in Linux

H.265 Linux open-source driver NXP iMX 8M Quad

Getting open-source multimedia drivers on Arm Linux is one of the most difficult tasks, that’s why there’s no much talk about open-source GPU drivers for 2D & 3D graphics acceleration, but work on video hardware decoding and encoding is also a challenge. We’ve previously seen Bootlin work on Cedrus open-source driver for Allwinner VPU (Video Processing Unit), but Collabora has been working on open-source drivers for VeriSilicon’s Hantro G1 and G2 VPU found in some Rockchip, NXP, and Microchip processors. The company previously managed to have Hantro G1 open-source driver for JPEG, MPEG-2, VP8, and H.264 codecs, but H.265/HEVC relies on Hantro G2, and the patch for H.265 hardware video decoding on NXP i.MX 8M Quad has just been submitted to mainline Linux. Benjamin Gaignard explains more in his commit message: The IMX8MQ got two VPUs but until now only G1 has been enabled This series aim to add the […]

Raspberry Pi 4 gets a 13MP 4K MIPI camera devkit for $99

Raspberry Pi 4 4K mipi camera

The Raspberry Pi boards already have their official 4K MIPI camera with Raspberry Pi HQ camera based on a 12.3MP Sony sensor module that sells for $75 and up with a lens. But e-Con Systems still decided to launch their own 13MP 4K MIPI camera development kit for Raspberry Pi 4 which they currently sell for $99 plus shipping. At first, I dismissed the news, but let’s have a look if there may be some advantages in using that camera devkit. e-CAM130_CURB camera devkit specifications: e-CAM137A_CUMI1335_MOD 13.0 MP camera module with S-mount lens holder, ON Semiconductor AR1335 13MP 1/3.2″ CMOS image sensor Image Signal Processor (ISP) for auto functions such as auto white balance, auto exposure control as well as optional MJPEG compression. Resolutions and frame rates VGA (640 x 480) – 110 fps HD (1280 x 720) – 72 fps Full HD (1920 x 1080) – 60 fps 4K […]

Amlogic Open Source Video Decoder Driver Coming Soon for S905, S905X and S912 Processors

Amlogic Open Source Vide Decoder

Allwinner processors aren’t the only ones getting an open source hardware video decoding / encoding support in Linux, as Maxim Jourdan recently submitted a patchset to Amlogic Linux mailing list adding a video decoder driver to some Amlogic processors. The driver is written around the V4L2 M2M framework and currently supports MPEG 1/2/4, H.263, H.264, MJPEG, and (partially) HEVC 8-bit codecs. The driver has been tested with FFmpeg, GStreamer, and Kodi, and currently works on S905 (Meson GXBB), S905X/W/D (Meson GXL), and S912 (Meson GXM) processors. Those processors also support HEVC 10-bit, VP9, and VC1 codecs, and while those are implemented yet, they should be in the future. A separate commit adds support for “Overlay plane for video rendering” which support various YUV layouts and a non-alpha RGB32 layout, and will be useful for Kodi and LibreELEC ports. I came to learn about those two patchsets thanks to Neil Armtrong […]

Memfault IoT and embedded debugging platform