FOSDEM 3 February 2018, Brussels. Tim-Philipp Müller < >

Similar documents
FOSDEM Open Media Devroom. 02 February 2019, Brussels. Tim-Philipp Müller < >

What's new in GStreamer Land The last 2 years and the future

GStreamer Status Report: The Road Ahead. GStreamer Conference August 2012 San Diego. Tim-Philipp Müller

Taking GStreamer to the Next Level. Tim-Philipp Müller

What's new in GStreamer

What s new in GStreamer. GUADEC, Strasbourg 26 July Tim-Philipp Müller Sebastian Dröge

GStreamer 1.0. FOSDEM, Brussels 4 February Tim-Philipp Müller

What s cooking in GStreamer. FOSDEM, Brussels 1 February Tim-Philipp Müller Sebastian Dröge

GStreamer in the living room and in outer space

The GStreamer Multimedia Architecture. What is GStreamer. What is GStreamer. Why create GStreamer

Efficient Video Processing on Embedded GPU

4K Video Processing and Streaming Platform on TX1

4K Video Processing and Streaming Platform on TX1

Simple Plugin API. Wim Taymans Principal Software Engineer October 10, Pinos Wim Taymans

GStreamer Conference 2013, Edinburgh 22 October Sebastian Dröge Centricular Ltd

History of Video in Linux

GStreamer Daemon - Building a media server under 30min. Michael Grüner - David Soto -

Android Multimedia Framework Overview. Li Li, Solution and Service Wind River

Porting Tizen-IVI 3.0 to an ARM based SoC Platform

Porting Tizen-IVI 3.0 to an ARM based SoC Platform. Damian Hobson-Garcia, IGEL Co., Ltd.

WPE WebKit. HTML5 user interfaces for embedded devices. Juan José Sánchez Penas Embedded Linux Conference Prague, October 2017

Transcoding SDK. Professional Transcoding Engine

How Libre can you go?

CE Linux 2007 GStreamer Tutorial

GStreamer in the living room and in outer space

GstShark profiling: a real-life example. Michael Grüner - David Soto -

Synchronised multi-room media playback and distributed live media processing and mixing

Using Gstreamer for building Automated Webcasting Systems

HIGH PACKET RATES IN GSTREAMER

Streaming Technologies Delivering Multimedia into the Future. May 2014

A Linux multimedia platform for SH-Mobile processors

Oxidising GStreamer. Rust out your multimedia! GStreamer Conference October 2017, Prague. Sebastian 'slomo' Dröge < >

More performance options

Audio debugging techniques

Accelerating Cloud Graphics

4K HEVC Video Processing with GPU Optimization on Jetson TX1

Achieving Low-Latency Streaming At Scale

Streaming Media. Advanced Audio. Erik Noreke Standardization Consultant Chair, OpenSL ES. Copyright Khronos Group, Page 1

Our Technology Expertise for Software Engineering Services. AceThought Services Your Partner in Innovation

Lecture 27 DASH (Dynamic Adaptive Streaming over HTTP)

Christophe Massiot (FOSDEM 2016) What makes Upipe great for video processing

Completing the Multimedia Architecture

MCN Streaming. An Adaptive Video Streaming Platform. Qin Chen Advisor: Prof. Dapeng Oliver Wu

Janus: a general purpose WebRTC gateway

VLC & Subtitles Rants

Synchronised multi-device media playback with GStreamer

DVS-100P Configuration Guide

Case Study: Building a High Quality Video Pipeline Using GStreamer and V4Linux on an i.mx6

Multimedia SoC System Solutions

Internet Video Delivery. Professor Hui Zhang

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink

Streaming Media Portability

Cobalt Digital Inc Galen Drive Champaign, IL USA

Can "scale" cloud applications "on the edge" by adding server instances. (So far, haven't considered scaling the interior of the cloud).

Exploiting Concurrency

Embedded Streaming Media with GStreamer and BeagleBoard. Presented by Todd Fischer todd.fischer (at) ridgerun.com

OpenMAX AL, OpenSL ES

ORBX 2 Technical Introduction. October 2013

Asterisk: Where is it going this year?

Remote Access and Output Sharing Between Multiple ECUs for Automotive

Anatomy of a DASH Client. Ali C. Begen, Ph.D.

Copyright Khronos Group, Page 1. OpenCL. GDC, March 2010

OPEN SOURCE SOFTWARE A Tool for Digital Transformation in the Broadcasting Industry

Managing build infrastructure of a Debian derivative

DVS-200 Configuration Guide

Is this a known issue? Seems to affect only recurring events. I have some of them and all are shifted. Non-recurring events show properly.

WebGL Meetup GDC Copyright Khronos Group, Page 1

irtc: Live Broadcasting

Mobile AR Hardware Futures

The Frozen Mountain irtc White Paper Series

Jan Schmidt Sydney, Australia / 18 January 2007

Identity Management and WebRTC

IMPROVING LIVE PERFORMANCE IN HTTP ADAPTIVE STREAMING SYSTEMS

Using the SDACK Architecture to Build a Big Data Product. Yu-hsin Yeh (Evans Ye) Apache Big Data NA 2016 Vancouver

! Readings! ! Room-level, on-chip! vs.!

WebRTC Monitoring and Alerting

MEDIA THEME INTRODUCTION FREE SOFTWARE IN BROADCASTING MATHIAS COINCHON, MICHAEL BARROCO EBU TECHNOLOGY & INNOVATION RMLL BRUXELLES - 14 TH JUNE 2013

EVO-CDN: TV BROADCAST

The Mobile Advantage. Erik Noreke Independent Standardization Consultant Chair, OpenSL ES. Copyright Khronos Group, Page 1

15: OS Scheduling and Buffering

White Paper: HTML5 Streaming (Plug-in Free Web Viewer) hanwhasecurity.com

Our Market. Overwhelming Growth of Video & It s Still Early

The Frozen Mountain irtc White Paper Series

Adopting HTML5 for Television: Next Steps

Remote Health Monitoring for an Embedded System

HTML5 Evolution and Development. Matt Spencer UI & Browser Marketing Manager

Making presentations web ready

H5STREAM. Copyright 2018 linkingvison, All rights reserved

CS 61C: Great Ideas in Computer Architecture. MapReduce

History of Audio in Unity

Networked Multimedia and Internet Video. Colin Perkins

Staleness and Isolation in Prometheus 2.0. Brian Brazil Founder

Elecard GStreamer Codec SDK v.2.0. Reference Manual

Khronos and the Mobile Ecosystem

Graphics Stack Update

Introduction to creating 3D UI with BeagleBoard. ESC-341 Presented by Diego Dompe

November 2017 WebRTC for Live Media and Broadcast Second screen and CDN traffic optimization. Author: Jesús Oliva Founder & Media Lead Architect

Erlang and Thrift for Web Development

Choosing free software graphical libraries for embedded devices

Live Streaming: Why Transcoding is so Cri7cal to Quality. Ryan Jespersen Training Manager Wowza Media Systems

Transcription:

WHAT'S NEW IN GSTREAMER? FOSDEM 3 February 2018, Brussels Tim-Philipp Müller < > tim@centricular.com

INTRODUCTION

WHO AM I? GStreamer core developer, maintainer, backseat release manager Centricular co-founder

WHAT IS GSTREAMER? Most of you know this, so key points only.

Framework for multimedia processing. Cross-platform, toolkit agnostic. Any and all use cases. Set of libraries and plugins. Abstract API, very extensible. We o en wrap other libraries.

Low-level API and high-level API: playbin, encodebin, RTSP server, non-linear editing, VoIP etc.

Integration with other frameworks and projects e.g. WebKit/Blink, Clutter, OpenGL Windows, OS X, Android, ios Goal is to adapt to and integrate with other platforms and frameworks (inputs, outputs, decoders, DSPs/GPUs..)

SO, WHAT HAVE WE BEEN UP TO?

RELEASES! 1.12: May 2017 1.14: coming up real soon now

SOME THINGS THAT LANDED IN 1.12...

VIDEOSCALE + VIDEOCONVERT Multi-threaded scaling and conversion.

TIMED TEXT MARKUP LANGUAGE (TTML) New ttml plugin. Supports the EBU-TT-D profile for now. Has potential as general intermediary representation for text subtitles.

SPLITMUXSINK Buffer collection and scheduling rewritten. Splitting should be deterministic now. New "format-location-full" signal. Automatically starts new chunk if caps change.

DASH TRICK MODE PLAYBACK

LOTS OF NEW FEATURES AND PERF IMPROVEMENTS FOR EMBEDDED v4l, dmabuf, zero-copy, openmax etc. --> Olivier's talk

HARDWARE-ACCELERATED VIDEO ENCODING/DECODING New msdk plugin for Intel's Media SDK GStreamer VA-API: new features + fixes Encoders are now autoplugged. nvdec for NVIDIA hardware + nvenc improvements v4l + omx for embedded

SOME COOL THINGS THAT WILL LAND IN 1.14...

AOMEDIA AV1 SUPPORT Next-gen royalty-free video codec! Experimental, but bitstream stabilised (ish?). Encoding still "a bit" slow, but works. -> Tim's talk at 5pm today in this room.

IPCPIPELINE Split pipelines across multiple processes! Isolate demuxers, parsers, decoders. --> Olivier's talk!

RING BUFFER FOR DEBUG LOGS Useful for long running tasks. Or disk space constrained environments. Retrieve log lines when things fail.

TRACING FRAMEWORK IMPROVEMENTS Leak tracer: stack traces, snapshotting, live objects Latency tracer improvements are also in the pipeline

HLSSINK2 Takes elementary streams as input Uses splitmuxsink internally Handles transmuxing better, without encoder up front

RTSP RTSP 2.0 support in client + server ONVIF audio backchannel (coming up)

MISSION: PLUGIN MOVES AND MODULE CONSOLIDATION... Ongoing effort to move things from -bad into other modules. Going strong!

MP3 PATENTS HAVE EXPIRED! mpg123 mp3 decoder -> good LAME mp3 encoder -> good twolame mp2 encoder -> good

AC-3 PATENTS HAVE EXPIRED! a52dec has to stay in -ugly liba52 is GPL :(

COMING SOON (HOPEFULLY!) aggregator base class -> core (done) audiomixer + audioaggregator -> base incl. audiomixer conversion support compositor + videoaggregator -> base Next: port muxers, for defined-latency

GSTREAMER OPENGL INTEGRATION HAS MOVED TO -BASE! Library + plugins API stable now.

WEBRTC "How do I stream to my web browser?" It's going to work everywhere. It's going to be big.

WEBRTC: WEBRTCBIN New GStreamer WebRTC plugin and library Just landed in git master \o/ \o/ \o/ Uses libnice + plugins for ICE. -> Nirbheek's blog post -> https://github.com/centricular/gstwebrtc-demos

WEBRTC: EXISTING EFFORTS OpenWebRTC Kurento some proprietary SDKs libwebrtc: works, but..

WEBRTCBIN: ADVANTAGES very flexible + full control easy to use with hardware encoders/decoders, zero-copy capture/render where supported leverage existing GStreamer support on embedded devices easy to feed already-encoded content no need to deal with or fork libwebrtc

WEBRTCBIN: CAVEATS SDP renegotiation is not implemented or incomplete, so dynamically adding/removing streams doesn't work yet recvonly streams aren't implemented properly yet, but that's fixable internals are sound and follow the spec, so easy to identify clear spaces and fit in missing features. help wanted!

KLV METADATA SUPPORT Generic per-frame KLV metadata (soon) Muxing / demuxing KLV meta per frame

PERFORMANCE OPTIMISATIONS.. Everywhere, of course. Lots of things in the pipeline.

SRT - "SECURE, RELIABLE, TRANSPORT" Source/Sink elements now merged. Seems well-placed to replace RTMP.

MESON BUILD SYSTEM STATUS UPDATE: Mostly complete, just a few things still missing: full set of options static build untested ios/android untested cerbero integration MSVC build works. Also: gst-build

RUST Let's talk about Rust! ("Fast, safe and productive - pick three.")

RUST No plans to switch to it in the short run. No plans to make it a hard dep in core components. We can do a lot without breaking GStreamer backwards compat. We're playing with it, experimenting, gaining experience. Something for the longer term.

GSTREAMER RUST BINDINGS Should be in pretty good shape now. --> Sebastian's talk tomorrow 11am in the Rust devroom

GSTREAMER C# BINDINGS Have also been resurrected and updated.

ROOM FOR IMPROVEMENT?

ADAPTIVE STREAMING (DASH, HLS, ETC.) Really need to improve our creation story!

MAKE IT EASIER TO WRITE "SIMPLE SERVERS" souphttpserversink rtspserversink

THAT'S ALL FOLKS THANK YOU (AND THANKS TO THE ORGANISERS!) QUESTIONS? COMMENTS?

PS: follow us on Twitter @GStreamer find us on IRC in #gstreamer on FreeNode GStreamer hackfest in spring GStreamer Conference in Edinburgh in ~late October