<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk" -->

---
title: GStreamer 1.28 brings AI inference to your media pipeline
description: GStreamer 1.28 introduces comprehensive AI inference integration into media pipelines. Key additions include an improved ONNX Runtime plugin (ported from C++...
canonical: https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: GStreamer 1.28 brings AI inference to your media pipeline | daily.dev
og:description: GStreamer 1.28 introduces comprehensive AI inference integration into media pipelines. Key additions include an improved ONNX Runtime plugin (ported from C++...
og:url: https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk
og:image: https://api.daily.dev/og/posts/MyD4pkABK.png
og:image:alt: GStreamer 1.28 brings AI inference to your media pipeline
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# GStreamer 1.28 brings AI inference to your media pipeline

**[Collabora Blog](https://daily.dev/sources/collabora)** · 10 min read · 0 upvotes · 0 comments

## Summary

GStreamer 1.28 introduces comprehensive AI inference integration into media pipelines. Key additions include an improved ONNX Runtime plugin (ported from C++ to C), a new LiteRT (formerly TensorFlow Lite) inference plugin with Google EdgeTPU and VeriSilicon NPU backend support, and a Rust-based inference element using the Burn framework. A standardized ModelInfo sidecar file format unifies tensor naming across inference backends. New tensor decoders cover image classification, face detection, YOLO v8-11 object detection, segmentation (FastSAM), and an IoU-based object tracker. A tensordecodebin element auto-selects the correct decoder from model files. Metadata handling gains a full linear transformation matrix for rotations, crops, and scaling. Visualization tools now support segmentation overlays, privacy filters, and tracker-colored bounding boxes. Python bindings gain native iterators for analytics metadata. Future work includes ExecuTorch support, floating-point video frame formats, and a DeepSORT tracker.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.collabora.com/news-and-blog/news-and-events/gstreamer-128-brings-ai-inference-to-your-media-pipeline.html>

## Questions this post answers

### What inference backends does GStreamer 1.28 support for running ML models in a media pipeline?

GStreamer 1.28 supports three inference backends: an improved ONNX Runtime plugin (ported from C++ to C), a new LiteRT plugin (formerly TensorFlow Lite) with Google EdgeTPU and VeriSilicon NPU support, and a Rust-based element using the Burn framework. The LiteRT element is named 'tfliteinference' because the underlying library is still called tflite despite Google's official rename.

_Developers building embedded video analytics can track GStreamer inference backend updates on daily.dev._

### What is a ModelInfo file in GStreamer and why was it introduced?

A ModelInfo file is an ini-style sidecar file that describes each tensor output of an ML model — its type, dimensions, model-internal name, and a unique recognizable name. It was introduced because LiteRT lacks ONNX's built-in metadata table, making it impossible to embed tensor names directly in the model file. The ONNX Runtime element was also ported to use ModelInfo files to reduce friction from modifying ONNX files.

_Teams shipping ML-powered GStreamer pipelines find the latest ecosystem changes faster on daily.dev._

### Which YOLO model versions does GStreamer 1.28 support for object detection and segmentation?

GStreamer 1.28 includes tensor decoders for YOLO v8 through v11 and FastSAM, covering object detection, classification, and segmentation variants. A matching YoloX decoder is also available in Rust. Because of GStreamer's modular architecture, these decoders work with any inference backend — ONNX Runtime, LiteRT, or the Burn-based element — not just the one they were originally written alongside.

_Developers choosing between YOLO versions for real-time video analytics can follow the discussion on daily.dev._

## Similar posts on daily.dev

- [GStreamer 1.28.1 Adds Whisper-Based Speech-To-Text, AV1 Stateful V4L2 Decoder Support](https://daily.dev/posts/gstreamer-1-28-1-adds-whisper-based-speech-to-text-av1-stateful-v4l2-decoder-support-njs5v7ce9) · Phoronix · 0 upvotes · 0 comments
- [LiteRT: The Universal Framework for On-Device AI](https://daily.dev/posts/litert-the-universal-framework-for-on-device-ai-dkvzmc8hv) · Google Developers · 0 upvotes · 0 comments
- [Build Local AI Apps with C\+\+ and NVIDIA TensorRT RTX Samples](https://daily.dev/posts/build-local-ai-apps-with-c-and-nvidia-tensorrt-rtx-samples-aufd3cqlp) · NVIDIA Developer · 1 upvotes · 0 comments
- [Google’s LiteRT adds advanced hardware acceleration](https://daily.dev/posts/google-s-litert-adds-advanced-hardware-acceleration-negvjtwmm) · InfoWorld · 0 upvotes · 0 comments
- [New DNN engine with enhanced ONNX and LLM/VLM support, Intel, Arm, and RISC-V hardware optimizations](https://daily.dev/posts/new-dnn-engine-with-enhanced-onnx-and-llm-vlm-support-intel-arm-and-risc-v-hardware-optimizations-5jrhxdsuq) · CNX Software · 0 upvotes · 0 comments

---

Tags: [#embedded](https://daily.dev/tags/embedded), [#gstreamer](https://daily.dev/tags/gstreamer), [#machine-learning](https://daily.dev/tags/machine-learning)

[View this post on daily.dev](https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"GStreamer 1.28 brings AI inference to your media pipeline","url":"https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk"},"datePublished":"2026-08-11T08:57:27.624Z","dateModified":"2026-10-14T02:24:43.814Z","description":"GStreamer 1.28 introduces comprehensive AI inference integration into media pipelines. Key additions include an improved ONNX Runtime plugin (ported from C++...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/8632b8e1a6da921d6bd2359ce08b3312?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/8632b8e1a6da921d6bd2359ce08b3312?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Collabora Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Collabora Blog","logo":"https://media.daily.dev/image/upload/s--ZGZ0FjqS--/f_auto,q_auto/v1786438306/logos/collabora?_a=BAMAMicg0","url":"https://daily.dev/sources/collabora"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"embedded,gstreamer,machine-learning","timeRequired":"PT10M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Collabora Blog","item":"https://daily.dev/sources/collabora"},{"@type":"ListItem","position":3,"name":"GStreamer 1.28 brings AI inference to your media pipeline"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/gstreamer-1-28-brings-ai-inference-to-your-media-pipeline-myd4pkabk#faq","mainEntity":[{"@type":"Question","name":"What inference backends does GStreamer 1.28 support for running ML models in a media pipeline?","acceptedAnswer":{"@type":"Answer","text":"GStreamer 1.28 supports three inference backends: an improved ONNX Runtime plugin (ported from C++ to C), a new LiteRT plugin (formerly TensorFlow Lite) with Google EdgeTPU and VeriSilicon NPU support, and a Rust-based element using the Burn framework. The LiteRT element is named 'tfliteinference' because the underlying library is still called tflite despite Google's official rename. Developers building embedded video analytics can track GStreamer inference backend updates on daily.dev."}},{"@type":"Question","name":"What is a ModelInfo file in GStreamer and why was it introduced?","acceptedAnswer":{"@type":"Answer","text":"A ModelInfo file is an ini-style sidecar file that describes each tensor output of an ML model — its type, dimensions, model-internal name, and a unique recognizable name. It was introduced because LiteRT lacks ONNX's built-in metadata table, making it impossible to embed tensor names directly in the model file. The ONNX Runtime element was also ported to use ModelInfo files to reduce friction from modifying ONNX files. Teams shipping ML-powered GStreamer pipelines find the latest ecosystem changes faster on daily.dev."}},{"@type":"Question","name":"Which YOLO model versions does GStreamer 1.28 support for object detection and segmentation?","acceptedAnswer":{"@type":"Answer","text":"GStreamer 1.28 includes tensor decoders for YOLO v8 through v11 and FastSAM, covering object detection, classification, and segmentation variants. A matching YoloX decoder is also available in Rust. Because of GStreamer's modular architecture, these decoders work with any inference backend — ONNX Runtime, LiteRT, or the Burn-based element — not just the one they were originally written alongside. Developers choosing between YOLO versions for real-time video analytics can follow the discussion on daily.dev."}}]}
```

