EMB-330 · Embedded Linux & BSP
Multimedia & GStreamer Pipelines
Build and debug media pipelines on embedded Linux: capture, decode, process and display — and know where the frames actually go.
Who this course is for
Embedded engineers building camera, video and streaming products who need media pipelines that behave in the field, not just on a bench.
Prerequisites
The detailed curriculum behind this course. The library holds the lesson-level curriculum for this ground — every lesson named, in order. Take it as the syllabus map, or work through it yourself with the all-access library.
- Embedded Multimedia with GStreamer 39 lessons · Intermediate
Course outline
Day 1 — GStreamer architecture
- Elements, pads, capabilities and the negotiation that decides what is possible
- Pipelines, bins, states and the message bus
- Building a first pipeline and reading its errors properly
- Dynamic reconfiguration: changing a pipeline while it is running
Day 2 — Hardware acceleration and buffers
- Hardware decode and encode paths: V4L2, VA-API and vendor-specific stacks
- Cameras into GStreamer: v4l2src, formats, and caps that actually match
- Buffer sharing without copies: DMABUF and dma-buf heaps
- Measuring where the CPU is going, and whether a copy is happening
Day 3 — Synchronisation, latency and production
- Clocks, base time and synchronising live streams
- Latency: measuring it end to end and removing it where it matters
- Profiling dropped frames: pipeline latency, decoder load, thermal throttling
- Production concerns: systemd units, watchdogs, recovery and logging
What you build
Not exercises with a known answer. Each project is built, measured and defended by you, on hardware and a kernel version you actually run — so the result is something you can take back to your team.
The zero-copy media path
Build a pipeline that captures, processes and outputs frames without a single memory copy, proving it with buffer addresses and CPU profiling.
You leave witha pipeline definition plus evidence that no copy occurs on the hot path
Glass-to-display latency budget
Measure end-to-end latency with an optical trigger and attribute it to capture, processing, queueing and display — then cut it by half.
You leave witha latency budget with each stage measured, and the before/after result
The camera that disappears
Make a pipeline survive camera disconnection and hot-plug: detect it, recover cleanly, and keep the rest of the system running.
You leave witha recovery implementation and a test log of repeated disconnect/reconnect cycles
Hands-on labs
Labs follow the academy model — 35% principles, 20% guided investigation, 45% engineering studio. Every claim you make in a lab is backed by a trace, a counter or a measurement you captured yourself. How we teach
- Lab: build a camera-to-display pipeline and prove the caps negotiation end to end
- Lab: replace a software decode with the hardware path and measure CPU and latency
- Lab: pass frames between two processes with DMABUF and confirm zero copies
- Lab: measure glass-to-display latency with a millisecond timer and an LED
- Lab: deliberately drop frames under thermal load and find the true cause from the pipeline logs
This course uses lab hardware. In-person cohorts get boards on the desk; online cohorts get remote board access over SSH and JTAG.
Capstone project
Build a production media pipeline for a real device: capture, hardware-accelerated processing and output, with zero-copy buffers, measured end-to-end latency, and a recovery path that survives a camera disappearing and coming back.
What you leave with
- GStreamer pipelines you can build and debug without guessing at caps
- Hardware acceleration paths and the measurement that proves they work
- Zero-copy buffer sharing between processes and devices
- A latency and dropped-frame methodology that survives production
How it runs
Every course follows the same model: 35% principles, 20% guided investigation, 45% engineering studio. You leave with working code, raw measurements and an evidence-based report — not a certificate of attendance. Read the methodology or see a full sample lesson.
Material is adapted to your kernel version, hardware and workload before a private delivery. For public cohorts, the environment is provided and configured.
Questions
Who is this course for?
Embedded engineers building camera, video and streaming products who need media pipelines that behave in the field, not just on a bench. It sits at practitioner level within the Embedded Linux & BSP track.
What do I need to know already?
Specific prerequisites for this course: Working C and Linux systems experience; Familiarity with the Linux device model; No prior GStreamer experience required. We confirm levels before the cohort starts and adapt if a group is stronger or weaker than expected.
Can this run privately for my team?
Yes. Any course runs on-site at your offices anywhere, or live online for a distributed team, with labs adapted to your hardware and codebase.
What is the difference between in-person and online?
In person is 3 full days with hardware on your desk, capped at 14. Online is 6 half-day sessions across about two weeks so you can keep working, capped at 20, with remote lab access.
Do you invoice companies?
Yes. Purchase orders are accepted and invoicing is available in USD, EUR, GBP, SAR and CAD.
Upcoming dates
| Dates | Where | Seats | Early bird | Regular | |
|---|---|---|---|---|---|
| 22 Nov – 29 Nov 20266 half-days | Gulf bandLive online · 14:00–18:00 GST | 16 of 20 | US$1,580until 23 Oct | ||
| 23 Nov – 30 Nov 20266 half-days | Europe bandLive online · 14:00–18:00 CET | 5 of 20 | US$1,580until 24 Oct | ||
| 30 Nov – 7 Dec 20266 half-days | Americas bandLive online · 13:00–17:00 ET | 10 of 20 | US$1,580until 31 Oct | ||
| 8 Nov – 10 Nov 20263 full days | RiyadhIn person · KAFD Conference Centre | 6 of 14 | — | SAR 9,000 | |
| 8 Nov – 10 Nov 20263 full days | Kuwait CityIn person · Al Hamra Tower | 11 of 14 | — | USD 2,400 | |
| 15 Nov – 17 Nov 20263 full days | MuscatIn person · Knowledge Oasis Muscat | 6 of 14 | US$2,160until 16 Oct | ||
| 23 Nov – 25 Nov 20263 full days | OttawaIn person · Kanata North Tech Park | 11 of 14 | CAD 2,930until 24 Oct | ||
| 23 Nov – 25 Nov 20263 full days | TorontoIn person · MaRS Discovery District | 6 of 14 | CAD 2,930until 24 Oct | ||
| 30 Nov – 2 Dec 20263 full days | LondonIn person · Shoreditch Works | 11 of 14 | GBP 1,680until 31 Oct | ||
| 7 Dec – 9 Dec 20263 full days | BerlinIn person · Factory Görlitzer Park | 6 of 14 | EUR 1,990until 7 Nov |
Dates shown for the next few months. If nothing fits, tell us where and when — cohorts are added on demand, and private delivery can be scheduled any week.
More in Embedded Linux & BSP
EMB-1015 days
Yocto Project & Custom BSP Layer Development
BitBake, metadata syntax, custom machine configurations, and writing an upstream-clean BSP layer for custom hardware from scratch.
Practitioner-taught
Next 29 Nov
EMB-1203 days
Buildroot in Practice
The fast, deterministic alternative to Yocto: when Buildroot is the right choice, external trees, custom packages, and SDK generation.
Practitioner-taught
Next 25 Oct
EMB-2013 days
U-Boot Porting & Board Bring-Up
The bootloader layer on real hardware: porting U-Boot, driver model integration, environment storage, and failsafe boot.
Practitioner-taught
Next 1 Nov
EMB-2103 days
Embedded Secure Boot & Chain of Trust
Establishing an unbroken, cryptographically verified boot chain from silicon ROM through bootloader to authenticated kernel and rootfs.
Practitioner-taught
Next 29 Nov
EMB-2204 days
Fast Boot, Read-Only Rootfs & Robust OTA Updates
Field-survivable deployments: sub-second boot optimization, power-cut proof read-only filesystems, and atomic A/B over-the-air updates.
Practitioner-taught
Next 15 Nov
EMB-3103 days
Software Supply Chain, SBOM & Long-Term Maintenance
Shipping a compliant, maintainable embedded Linux distribution that survives regulatory scrutiny and a 10-year field lifespan.
Practitioner-taught
Next 8 Nov