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

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

Hyunjun Ko 06/07/2017

100 commits in GStreamer

It’s been 3 years since I’ve started working on GStreamer, meanwhile I contributed over 100 commits fortunately! Let’s look at my commits in each project in GStreamer. gstreamer: 7 commits gst-plugins-base: 5 commits ...

Víctor Jáquez 30/05/2017

GstSpringHackfest2017: a quick report

Two weeks ago was the GStreamer Spring Hackfest 2017 and I am very happy about how it went. I have the feeling that most of the attendees had a good time, and made some progress in their projects. I want to thank all the people that participated, in some...

Víctor Jáquez 09/05/2017

GStreamer Spring Hackfest 2017 & GStreamer 1.12

Greetings earthlings! Two things: One GStreamer 1.12 is out! And with it, gstreamer-vaapi. Among other new features and improvements we have: GstVaapiDisplay now inherits from GstObject, thus the VA display logging messages are better and tracing the...

Hyunjun Ko 23/03/2017

Libva-rust(libva binding to rust) in development stage

Since Rust language appeared in the world, I felt strongly this is the language I should learn. This is because: Rust guarantees to prevent from common bugs in C/C++ such as memory corruption and race condition, which are very painful to fix...

Víctor Jáquez 17/03/2017

GStreamer VAAPI 1.11.x (development branch)

Greetings GstFolks! Last month the unstable release 1.11.2 of GStreamer hit the streets, and I would like to share with you all a quick heads-up of what we are working on in gstreamer-vaapi, since there are a lot of new stuff: GstVaapiDisplay inherits...

Commits

kmssink: initialize variable

Otherwise clang complains: gstkmssink.c:1192:7: warning: variable 'buf' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]

Víctor Jáquez10/07/2017

Changeset in webkit [219116]: [EME] Solve a couple of compiler warnings ...

3 edits in trunk/Source/WebCore [EME] Solve a couple of compiler warnings ​https://bugs.webkit.org/show_bug.cgi?id=174020 Reviewed by Michael Catanzaro. Modules/encryptedmedia/CDM.cpp: (WebCore::CDM::isPersistentType): Added default return...

Xabier Rodríguez04/07/2017

x264: fix memory leak

When the allowed caps are the same of template caps the allowed caps are not unrefed, leaking memory. https://bugzilla.gnome.org/show_bug.cgi?id=784060

Víctor Jáquez21/06/2017

Changeset in webkit [217966]: [GStreamer][EME] Remove the legacy code that was not even official and ...

19 edits in trunk [GStreamer][EME] Remove the legacy code that was not even official and is deprecated ​https://bugs.webkit.org/show_bug.cgi?id=173096 Reviewed by Žan Doberšek. .: Source/cmake/OptionsWPE.cmake: Remove LEGACY_ENCRYPTED_MEDIA...

Xabier Rodríguez09/06/2017

Changeset in webkit [217928]: MediaTime class has rounding issues in different platforms ...

8 edits in trunk MediaTime class has rounding issues in different platforms ​https://bugs.webkit.org/show_bug.cgi?id=172640 Reviewed by Jer Noble. Source/WTF: The way a timescale is set when creating a MediaTime from a double can create rounding...

Xabier Rodríguez08/06/2017