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

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...

Víctor Jáquez 19/11/2016

GStreamer-VAAPI 1.10 (now 1.10.1)

A lot of things have happened last month and I have neglected this report. Let me try to fix it. First, the autumn GStreamer Hackfest and the GStreamer Conference 2016 in Berlin. The hackfest’s venue was the famous C-Base, where we talked with...

Xabier Rodríguez 03/10/2016

WebRTC in WebKit/WPE

For some time I worked at Igalia to enable WebRTC on WebKitForWayland or WPE for the Raspberry Pi 2. The goal was to have the WebKit WebRTC tests working for a demo. My fellow Igalian Alex was working on the … Continue reading →

Víctor Jáquez 01/07/2016

VA-API and DRM/KMS in MinnowBoard

In 2012 I started to work in a video renderer for GStreamer which uses directly the DRM/KMS kernel subsystem to display images. I even blogged about it, but I didn’t finished it. Nonetheless, in December last year, a customer asked us to finish the...

Víctor Jáquez 20/05/2016

GStreamer Hackfest 2016

Yes, it happened again: the Gstreamer Spring Hackfest 2016! This time in the beautiful city of Thessaloniki. Thanks a lot, Vivia and Sebastian, for making it happen. My objective this time was to work with dma-buf support in gstreamer-vaapi. Though it...

Commits

qtdemux: distinguish TFDT with value 0 from no TFDT at all

TFDTs with time 0 are being ignored since commit 1fc3d42f. They're mistaken with the case of not having TFDT, but those two cases must be distinguished in some way. This patch passes an extra boolean flag when the TFDT is present. This is now the...

Enrique Ocaña22/03/2017

tests: h264parse: fix failures due to insertion of au delimiter

Since insertion of aud landed, we need to change some testcases accroding to the change. Note that counting frames are changed in parser.c, due to generated frames, AUD. https://bugzilla.gnome.org/show_bug.cgi?id=736213

Hyunjun Ko08/03/2017

h264parse: fix some failures in testcases

Move logic of judgement whether or not to insert AU Delimiter before draining. Besides, aud_needed flag is reset to TRUE when skip. https://bugzilla.gnome.org/show_bug.cgi?id=736213

Hyunjun Ko08/03/2017

h264parse: insert AU delimiter only in case of byte-stream

Inserts AU delimeter by default if missing au delimeter from upstream. This should be done only in case of byte-stream format. Note that: We have to compensate for the new bytes added for the AU, otherwise insertion of PPS/SPS will use wrong offsets...

Hyunjun Ko07/03/2017

Changeset [212830]: [GStreamer][EME] Fix issue with allowed systems extraction ...

2 edits in trunk/Source/WebCore [GStreamer][EME] Fix issue with allowed systems extraction ​https://bugs.webkit.org/show_bug.cgi?id=168717 Reviewed by Carlos Garcia Campos. The allowed systems were not being extracted from the need-context message...

Xabier Rodríguez22/02/2017