Google Releases Patchfield, a New Open-Source Android Audio Library

Patchfield can be used by Android developers to create specialized audio apps that can be connected to other audio apps for Android.


Google has given Android developers another tool for building audio apps with its recent release of the Patchfield open-source audio library.

Patchfield for Android was announced in a Sept. 4 post by Peter Brinkmann of the Android speech infrastructure team, on the Google Open Source Blog.

"Some of the best apps are those that specialize in a single task," wrote Brinkmann. "With Patchfield, a new open-source audio library for Android, you can create highly focused audio apps (such as synthesizers and effects) and then combine their capabilities by connecting them to one another in a virtual patch bay."

Patchfield was inspired by JACK, the JACK Audio Connection Kit, and provides a callback-driven API for implementing audio modules, a flexible API for managing the signal processing graph, and support for inter-app audio routing, wrote Brinkmann. The library was created by Brinkmann as his "20 percent" project at Google, where employees are permitted to use up to 20 percent of their working time building innovative projects, applications and related work in areas that interest them personally.

"Running as a remote service, Patchfield allows audio developers to create interoperable apps that focus on a single task each, such as synthesis or effects or recording," wrote Brinkmann. "The output of one app can be connected to the input of another, for a combinatorial explosion of possibilities. Running locally within a single app, Patchfield provides a powerful way of organizing the audio components of an app."

Brinkmann wrote that the "implementation resides entirely in user space and works on many stock consumer devices, such as Nexus 7 and 10."

Developers can access Patchfield at GitHub, under the Apache 2.0 License.

Patchfield is just one of many open-source tools and projects that Google has released to software developers in recent months.

In August, Google unveiled its Gumbo HTML parser, which is a C implementation of the HTML5 parsing algorithm. The open-source code release gives developers a simple library that can serve as a basic building block for linters, refactoring tools, templating languages, page analysis and other small programs that need to manipulate HTML, according to Google. Gumbo conforms fully to the HTML5 specification, and is robust and resilient to bad input, according to the Gumbo project page on GitHub. Gumbo includes support for source locations and references back to the original text and has been tested on more than 2.5 billion pages from Google's index, according to the project page.

In June, Google released its open-source Cloud Playground environment where developers can quickly try out ideas on a whim, without having to commit to setting up a local development environment that's safe for testing coding experiments outside the production infrastructure. The new Cloud Playground is presently limited to supporting Python 2.7 App Engine apps.

Also in June, Google opened its Google Maps Engine API to developers so they can build consumer and business applications that incorporate the features and flexibility of Google Maps. By using the Maps API, developers can now use Google's cloud infrastructure to add their data on top of a Google Map and share that custom mash-up with consumers, employees or other users. The maps can then be shared internally by companies or organizations or be published on the Web.

In May, Google's Go open-source programming language was updated to Version 1.1, bringing developers new capabilities and performance improvements such as a race detector for finding concurrency bugs and new standard library functionality. Go 1.1 arrived 14 months after the release of the original 1.0 version in March 2012. There had been two minor "point releases" in between, but they fixed only critical issues and didn't amount to a reworking of the application. The new version includes significant performance-related improvements, he wrote, including optimizations in the compiler and linker, garbage collector, goroutine scheduler, map implementation and parts of the standard library.

In April, Google released the open-source Android-based kernel code for its Glass project to encourage software developers to begin much more Google Glass apps development in a big way.

In January, Google announced that it was moving its Google Cloud Platform (GCP) over to the GitHub collaborative development environment to make it easier for software developers to contribute and continue the evolution of GCP. The GCP program has been growing since Google unveiled a new partner program in July 2012 to help business clients discover all of Google's available cloud services. GitHub is a rapidly growing collaborative software development platform for public and private code-sharing and hosting.