Hardware Accelerated Video Decoding and System Load Monitoring Demos

In the past few months, BayLibre engineers Maxime Jourdan, Alexandre Bailon and Neil Armstrong showcased two demos to illustrate some of their recent work: fully hardware-accelerated video decoding which was linked to non-intrusive System Load monitoring via JTAG.

While these two demos seem unrelated, the non-intrusive System Load monitoring via JTAG developed by Alexandre Bailon was a good way to prove that the Amlogic Video Decoder driver from Maxime Jourdan and the Amlogic Video Processing Unit graphics output work well together, and that it’s possible to monitor system load without causing video frames to be dropped.

First of all, Maxime Jourdan did a talk at Embedded Recipes 2018 in Paris about his work on developing and upstreaming the Amlogic Video Decoder driver for the Amlogic S905, S905X, S9095D and S9012 SoCs.

You can access the talk here :

And slides at: https://www.slideshare.net/ennael/embedded-recipes-2018-upstream-multimedia-on-amlogic-so-cs-from-fiction-to-reality-maxime-jourdan

Then, Alexandre Bailon and Patrick Titiano spoke about their “libSoCCA” project which gets the real-time statistics of a running system via the well-known JTAG interface without interfering with the system’s execution or requiring any modifications to the code.

The ultimate demonstration was to show, in real-time, the CPU Load and CPU Bus accesses of a Libre Computer AML-S905X-CC system (running the LibreELEC Kodi distribution) with a steady 10% load decoding 50mbps 4K H.264 and 4K H.265 10-bit video samples from the JellyFish Video Bitrate test files http://jell.yfish.us/. And all without changing a single byte of the Linux filesystem or Kodi binaries.

The most interesting fact of this demo is that Kodi doesn’t have any platform-specific code to handle Accelerated Hardware Video decoding, nor does FFmpeg which speaks to the decoder driver.

All of this is made possible thanks to the Linux DRM (Direct Rendering Manager) KMS (Kernel Mode Setting) GBM (Graphics Buffer Management) display support handled in Kodi, and the V4L2 (Video For Linux 2) Memory2Memory Hardware Decoder support from FFmpeg.

With these two graphics subsystems combined, decoded frames from the V4L2 interface can be passed to the DRM Video driver and scaled, blended and displayed. And thanks to the Linux DMA-BUF framework, none of the frames need to be copied.

3D Graphics on mainline Linux

During the ELC Showcase event, BayLibre showed, among other demos, Quake III Arena running fully accelerated on an Odroid-C2 powered by the Amlogic S905 SoC.

This particular demo was running the lastest Linux 4.10 release with some in-development patches for HDMI Support, Audio and Mali acceleration that will certainly go into the next Linux releases.

The AmLogic S905 embeds an ARM Mali-450 MP3 GPU running at 750MHz.

The technical showcase poster is available as PDF Version.

BayLibre Attended ELC 2017 in Portland

Last week, BayLibre team attended the Embedded Linux Conference North America 2017 edition in Portland, Oregon.

In this particular edition, Patrick, Fabien and Neil talked about Power Instrumentation, Zephyr and Amlogic Mainline Linux status.

If you missed the event, here are the slides :

 

BayLibre 3rd Anniversary

October 11 was the third anniversary of the founding of BayLibre and the team celebrated in style! As usual, this anniversary occurred around the same time as Embedded Linux Conference Europe. Both the US team and the France team travelled to Berlin for the conference, delivering several talks and presentations along the way, and then enjoyed a long weekend in Wrocław, Poland to finish the team celebration.

In addition to our anniversary celebration, BayLibre has created a short video highlighting our expertise, our strengths and the ways in which we deliver value to you, the customer.

ELC-E was a great event in 2016 and BayLibre looks forward to seeing you next year in 2017!

BayLibre is a leading embedded software services provider. We develop device drivers and maintain both platforms & subsystems in the Linux kernel. BayLibre ports and customizes Android and Yocto for a variety of CE devices, including Wearables and IoT.

BayLibre is attending Embedded Linux Conference at San Jose

BayLibre is attending ELC at San Jose this week.

Bartosz will have a talk: Sigrok: Adventures in Integrating a Power-Measurement Device.

Later we will show some ACME HW during Demo Showcase and Booth Crawl.

Last but not least, BayLibre is hiring, so if you want to meet us, we will be around.

See you there!

The BayLibre Team