GStreamer for Tiny Devices
summary
GStreamer can be reduced from a 150MB-plus desktop install to a runnable embedded binary: a security camera prototype with a 16MB flash runs a pipeline that reads RTSP, parses H.264, and writes chunked MP4 files for upload (RTSP source → h264 parser → splitmuxsink). Process uses gst_parse_launch, cross-compiles C wrapper, then static linking of plugins, strips unused GLib features, applies --ffunction-sections --gc-sections, and finally UPX compression to reach about 2MB on the device successfully.
AI-written summary · about
chapters (8)
- 0:00Start
- 1:08Overview of GStreamer
- 4:50GStreamer: Perfect for embedded
- 6:53Examples A Security Camera
- 9:25Version AC program
- 10:28Static Build?
- 11:12Copy plugins
- 11:59Statically build plugins
related talks
28mOptimizing GStreamer Video Plugins
51mUsing GStreamer for Seamless Off-loading Audio Processing
35mNNStreamer: Efficient and Agile On-Device AI Application Development with Neural-Net Pipelines
41mBeyond Complex Cameras: Complex Video Graphs Using PipeWire
43mApplication Support with Libcamera
42mReaching the Multimedia Web from Embedded Platforms with WPEWebKit
22mWebRTC: Connecting Embedded, Mobile and Desktop with the Lowest Latencies
51mTinyGo, small but mighty! 💪
