Category: Development

  • So you want to do some free-fashioned GStreamer developent on Android? You are not alone. Android development – when using the stock SDK’s high level multimedia API – is geared towards a particular set of standard use cases. As a result it is kind of limiting, especially if you want to go beyond what is considered a regular use case. From this, you can easily assume there have been others like you who have gotten their feet wet in these revolving waters. The GStreamer project and other third parties have already done a lot of GStreamer development on Android; this work can be reused to make the road to that incredible application you have in mind a bit less rocky. There are many pieces that need to be put together to assemble a working development environment; the good thing is you don’t need to do this by yourself anymore (barring […]

    Read More
  • December 11, 2015 - Mike Blumenkrantz

    Manual Compositing with Compiz and Enlightenment

    This is the first article in a two part series on compositing with Compiz and Enlightenment. I recently implemented  a proof of concept for Compiz effect modules in the Enlightenment compositor. In this article, I will explore the methodology behind the implementation and cover some of the AWESOME hacks that made it possible. Replacing Default Compositor Behaviors with Compiz To start, let’s examine how Compiz operates. There is an OpenGL extension that allows an X11 pixmap to be bound to a texture. Compiz operates based on the principle that the compositor can render this texture in any way, at any time, and the underlying X11 input window will be moved quietly to wherever the rendered content ends up. This creates the illusion that the entire window (input and output) is moving in an irregular manner, when in reality, the window’s output is moving around and the window’s input region is […]

    Read More
  • Shuah Khan was the very first engineer to join Samsung’s North American Open Source Group shortly after it was founded in 2013. Since then, she has been extremely valuable to the company through her contributions to the Linux Kernel. She was recently elected to the Linux Foundation Technical Advisory Board, presenting her with a wonderful opportunity to help direct the Linux Kernel community from the highest technical level. We asked Shuah some questions to get a better sense of what took for her to get to this position and what it means for herself and for Samsung. Can you tell me about your work as an open source developer? I am a Linux Kernel developer, maintainer, and contributor. I maintain the Kernel Selftest sub-system and actively contribute to the Media sub-system, and I enjoy working on features that span multiple kernel sub-systems. Working on an open source project, like the Linux […]

    Read More
  • Media devices have hardware resources that are shared across several functions. However, media drivers have no knowledge of which resources are shared. At the root of this problem is a lack of a common locking mechanism that can provide access control. I have been working on solving the sharing problem for a year or so. At the Media Summit in San Jose back in March of this year, we reviewed my Media Token API patch series. It solved the problem with minimal changes to drivers, however, it introduced a new framework, in addition to the existing ones. Every new framework adds maintenance cost. This led to a discussion that identified the existing Media Controller API as a better alternative in the interest of avoiding adding a new framework. Since then, I’ve worked on implementing the solution using the Media Controller API, and I’ve ported it over to Media Controller Next Gen API. In this article, […]

    Read More
  • November 30, 2015 - Mario Smarduch

    An Introduction to Live Migration in NFV Deployment

    This article is the first of two on live migration in NFV Deployment. Live migration is a generic feature that is important in all cloud environments including Network Functions Virtualization (NFV) applications. This post covers likely NFV use cases for live migration, the type of loads that are likely to be executed on compute nodes, an overview of live migration, and some common issues to consider with focus on LTE Evolved Packet Core (EPC). This article uses VNF (Virtual Network Function) and  guest interchangeably. VNF essentially is a guest equivalent to a hardware Network Element. The Various Uses of Live Migration Here are some common live migration uses: Load Balancing – Migrating VMs between compute nodes to balance the load Hardware Maintenance – Routine maintenance, such as hardware upgrades, or  IPMI events such as thermal readings from sensors that indicate the node may fail soon for example cooling issues. This […]

    Read More
  • This year at LinuxCon EU, I gave a talk titled Static Analysis of Your OSS Project with Coverity. In this talk, I briefly touched on using the Travis Continuous Integration system to submit builds to the Coverity Scan service (slide 22). This is an extremely easy way for GitHub projects to use static analysis, and I think it deserves some more detail. While I was setting it up for another project I’m working on, I collected some notes to provide a steb-by-step guide to enable it for a project you have on GitHub. The project I’ll be using as an example is wpan-tools, the user space tools for Linux IEEE 802.15.4 stack. It is written in C with autotools for the build system, and it has only a few dependencies, making it easy to understand this guide. The final goal is to automatically submit new builds to the Coverity Scan […]

    Read More
  • November 23, 2015 - Javier Martinez Canillas

    Samsung OSG Contributions to the Linux Kernel 4.3

    Linux 4.3 was released two weeks ago; 5 engineers from the Samsung Open Source Group (OSG) contributed 168 patches that modified 4002 lines of code in a handful of kernel subsystems. The following list is all of the OSG engineers that contributed to this release and the number of changesets and lines of code as reported by Jonathan Corbet and Greg Kroah-Hartman’s gitdm tool. OSG developers by changesets Javier Martinez Canillas 65 38.7% Mauro Carvalho Chehab 56 33.3% Luis de Bethencourt 44 26.2% Mario Smarduch 2 1.2% Stefan Schmidt 1 0.6% OSG developers by changed lines Mauro Carvalho Chehab 1823 45.6% Javier Martinez Canillas 1746 43.6% Luis de Bethencourt 345 8.6% Mario Smarduch 76 1.9% Stefan Schmidt 12 0.3% Mauro worked on cleanups and bugfixing in the media subsystem and considerably improved the media DocBook. Javier worked on cleanups and bugfixing in ARM Exynos support and fixed module autoloading for […]

    Read More
  • Open Source Wrap Up: November 14-20, 2015 Group of Biohackers Start Work on Open Source Insulin More than 370 million people suffer from diabetes worldwide, and these people rely on regular insulin injections to regulate the amount of sugar in their blood. Despite this major need for insulin, there is no generic version available on the market, and the high cost results in it having limited availability in poorer parts of the world. A group of citizen and academic researchers and biohackers, led by Counter Culture Labs, have launched a project to develop a simple method for producing insulin and release the process to the public domain. They have launched a crowdfunding campaign (that has already exceeded their goal) to fund the first stage of this research.  For stage 1, ” the team will insert an optimized DNA sequence for insulin into E. coli bacteria, induce the bacteria to express […]

    Read More
  • The Linux Kernel Summit Media Workshop was held on October 26, 2015 in Seoul, South Korea. We had 21 attendees from various companies and places in the world gather to discuss the current state of Linux Media and the challenges that need to be overcome to push these technologies into the future. This article will cover the major topics that were discussed during this workshop and the decisions that were made about the direction of this community.   Codec API Improvements Currently, Video4Linux version 2 (V4L2) memory to memory devices uses the Stream API to handle coders/decoders (codecs), but it might be time for us to develop a Frame API to handle newer devices. Stream API The original V4L2 codec API was developed along with the Exynos codec driver. Since the device implements high-level operations in hardware, the resulting API was high-level as well with drivers accepting unprocessed raw streams. […]

    Read More
  • This is  the 2nd and final part of a series on measuring the value of open source developers. Part 1 can be found here. It’s been almost three years since the Open Source Group was established at Samsung. In that time we’ve grown quite a bit. Now that we’ve had some time to get our feet on the ground we’ve decided to take a look back at our impact. Why do We Need an Open Source Group Anyways? Samsung is on a multi-year journey to become both a better consumer of open source, and a better contributor and leader in the projects that end up in our products. The reasons for doing so are quite clear to us: while it’s easy to use code that’s made freely available, it’s risky and potentially quite expensive to rely upon it long-term, unless you are proactively working within the community. The reason it’s […]

    Read More