04

Multimedia

Multimedia processing is one of the most demanded and complex tasks in computing. It traverses all the software stack, ranging from the kernel up to the end-user application. Igalia has a strong team of multimedia experts with experience in all the layers of the stack, both on desktop environments and embedded devices.

GStreamer is the framework of choice for Linux-based multimedia and it has been powering multimedia embedded solutions for many years now. Our multimedia team includes many experienced GStreamer developers who are very familiar with the framework internals and contribute to its core and to many of its plugins.

We are the main developers and maintainers of the GStreamer-based multimedia back-ends of WebKit that are used by many of its ports, including WebkitGTK+ and WebkitEFL.

We also have experience bringing hardware acceleration to GStreamer, writing plugins and infrastructure required to use hardware accelerated multimedia such the case of asymmetric processing of media using multiple cores.

Beside media playback and recording, we are pioneers in digital media content discovery and browsing, and as a result, we are the main developers and maintainers of Grilo, a framework designed to provide application developers with tools that make digital media content integration extremely easy, scalable and highly maintainable.

Igalia can help you build top-notch solutions for media centres and players targeting TV, Set-top boxes and other multimedia enabled devices based on open source technologies. Our multimedia team can lead specific parts of the software development, provide advice and insight on the solutions used, join an in-house team to leverage its strenghts or help companies align their work and needs with the open source community.

  • Multimedia Middleware
  • Media Players
  • End-user Applications
  • Content Discovery
  • WebKit Multimedia
  • GStreamer
  • Grilo
  • PulseAudio
  • VAAPI/VDPAU
  • Kernel
  • V4L2

Featured Media

Inject the Web into your GStreamer pipeline with WPE (FOSDEM 2019)
Encrypted Media Extensions with GStreamer in WebKit (GStreamer Conference 2018)
Servo and GStreamer (GStreamer Conference 2018)
Video Editing with GStreamer, status update and plans for the future (GStreamer Conference 2018)
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer Conference 2018)
WebRTC in WebKitGTK+ and WPE (Web Engines Hackfest 2018)
The GStreamer-VAAPI report (GStreamer Conference 2017)
Media Source Extensions on WebKit (GStreamer Conference 2017)
VA-API binding to Rust (GStreamer Conference 2017)
GStreamer VA-API. A year after (GStreamer Conferece 2016)
Streams API (Web Engines Hackfest 2015)
GStreamer-VAAPI: Hardware-accelerated encoding and decoding on Intel hardware (GstConf 2015)
Efficient multimedia support in QtWebKit on Raspberry Pi (GStreamer Conference 2014)
WebKit: getUserMedia GStreamer implementation
WebKit and GStreamer (GStreamer Conference 2013)
WebKitGTK+ New media controls
Cairosink and GPU Buffer Sharing (GStreamer Conference 2013)
WebKitGTK+ Multimedia: HTML5 WebAudio API
Grilo: Enhancing the multimedia experience in MeeGo (SF 2011)
Grilo at ELC-E 2010
Browse your multimedia content
Browse your multimedia content
Browse and watch your videos from YouTube
Browse and watch your videos from YouTube
Combine media from different sources
Combine media from different sources
Manage your music, video and images with Grilo
Manage your music, video and images with Grilo

Updates

Thibault Saunier 22/04/2019

GStreamer Editing Services OpenTimelineIO support

GStreamer Editing Services OpenTimelineIO support OpenTimelineIO is an Open Source API and interchange format for editorial timeline information, it basically allows some form of interoperability between the different post production Video Editing tools....

Andrés Gómez 25/02/2019

Review of Igalia’s Graphics activities (2018)

This is the first report about Igalia’s activities around Computer Graphics, specifically 3D graphics and, in particular, the Mesa3D Graphics Library (Mesa), focusing on the year 2018. GL_ARB_gl_spirv and GL_ARB_spirv_extensions GL_ARB_gl_spirv is an...

Víctor Jáquez 13/02/2019

Generating a GStreamer-1.14 bundle for TravisCI with Ubuntu/Trusty

For having continous integration in your multimedia project hosted in GitHub with TravisCI, you may want to compile and run tests with a recent version of GStreamer. Nonetheless, TravisCI mainly offers Ubuntu Trusty as one of the possible distributions to...

Víctor Jáquez 11/02/2019

Review of Igalia’s Multimedia Activities (2018/H2)

This is the first semiyearly report about Igalia’s activities around multimedia, covering the second half of 2018. Great length of this report was exposed in Phil’s talk surveying mutimedia development in WebKitGTK and WPE: WebKit Media Source...

Víctor Jáquez 16/01/2019

Rust bindings for GStreamerGL: Memoirs

Rust is a great programming language but the community around it’s just amazing. Those are the ingredients for the craft of useful software tools, just like Servo, an experimental browser engine designed for tasks isolation and high parallelization....

Commits

Changeset in webkit [242075]: Fix WTFLogVerbose variadic parameters forwarding ...

2 edits in trunk/Source/WTF Fix WTFLogVerbose variadic parameters forwarding ​https://bugs.webkit.org/show_bug.cgi?id=194920 Reviewed by Alex Christensen. WTFLogVerbose was passing the va_list to WTFLog but this function also used variadic...

Xabier Rodríguez26/02/2019

glsinkbin: validate property in internal sink

It might be the case that glgsinkbin would try to set a property to its internal sink which doesn't exist in it, leading to a glib's warning. For example, when playsink sets 'force-aspect-ratio' property and glsinkbin has, as internal sink, appsink,...

Víctor Jáquez12/01/2019

msdk: add mfx in include path

Thus removing the preprocessor's directives to included if found.

Víctor Jáquez08/01/2019

msdk: meson: compile vp9dec if available

based on the patches provided by Haihao Xiang

Víctor Jáquez08/01/2019