GStreamer is a widely used and comprehensive multimedia framework allowing for the creation of a wide range of multimedia applications. It has become the obvious choice for embedded Linux systems, especially given that these days most BSP vendors choose to provide GStreamer plugins for their media accelerators. It’s ease of use allows you to create …
Category: Case Studies
2 Second Linux Boot on i.MX8
Earlier this year we we wrote a blog post that looked at the steps required to enable hardware accelerated image classification on an i.MX8 based Coral Dev Board. We created a Linux ‘Tux mascot detector’ that was able to detect if an object placed in front of a camera was the Tux mascot or something …
Understanding why USB Isochronous Bandwidth Errors Occur
A recent customer asked us to make sense of USB bandwidth errors that prevented them from streaming multiple USB audio and video streams simultaneously. Their GStreamer pipelines would fail and a “uvcvideo: Failed to submit URB 0 (-28).” message would be seen in dmesg. The interesting part is that the errors would only occur if …
Filesystem Encryption on a Jetson Nano
NVIDIA’s Jetson Nano (NVIDIA X1 CPU) platform is one of the most popular embedded systems for any application that involves video processing. The standard development environment for it is a Ubuntu based system, whilst this is fine for simple development and prototyping, it is not really ideal for a serious production ready embedded device based …
Supporting NAND on SpiStack via the LS1012A’s QuadSPI Controller
We’ve recently provided software support to Analogue & Micro who are developing hardware derived from NXP’s Layerscape FRWY-LS1012A reference design. What we find interesting about this reference design is that for storage it uses an innovative SPI memory known as SpiStack Flash. Essentially it’s a single chip with a quad-SPI interface, but inside are two …
Multiple UVC cameras on Linux: an unexpected challenge
Earlier this year one of our customers presented us with an unexpected problem: they weren’t able to stream video from multiple USB UVC web cameras – instead they got a “No space left on device” error. In our quest to provide a solution we learnt a little about USB and so we thought we’d share …