Notes from the PulseAudio Mini Summit 2014
The third week of October was quite action-packed, with a whole bunch of conferences happening in Düsseldorf. The Linux audio developer community as well as the PulseAudio developers each had a whole...
View ArticleReviewing moved files with git
This might be a well-known trick already, but just in case it’s not… Reviewing a patch can be a bit painful when a file that has been changed and moved or renamed at one go (and there can be perfectly...
View ArticleGNOME Asia 2015
I was in Depok, Indonesia last week to speak at GNOME Asia 2015. It was a great experience — the organisers did a fantastic job and as a bonus, the venue was incredibly pretty! View from our room My...
View ArticleGUADEC 2015
This one’s a bit late, for reasons that’ll be clear enough later in this post. I had the happy opportunity to go to GUADEC in Gothenburg this year (after missing the last two, unfortunately). It was a...
View ArticlePSA: Breaking webrtc-audio-processing API
I know it’s been ages, but I am now working on updating the webrtc-audio-processing library. You might remember this as the code that we split off from the webrtc.org code to use in the PulseAudio echo...
View ArticlePulseAudio 7.1 is out
We just rolled out a minor bugfix release. Quick changelog: Fix a crasher when using srbchannel Fix a build system typo that caused symlinks to turn up in / Make Xonar cards work better Other minor bug...
View ArticleA Quick Update
Happy 2016 everyone! While I did mention a while back (almost two years ago, wow) that I was taking a break, I realised recently that I hadn’t posted an update from when I started again. For the last...
View ArticleAudio Devices and Configuration
This one’s going to be a bit of a long post. You might want to grab a cup of coffee before you jump in! Over the last few years, I’ve spent some time getting PulseAudio up and running on a few...
View ArticleImprovements to PulseAudio’s Echo Cancellation
As we approach the PulseAudio 9.0 release, I thought it would be a good time to talk about one of the things I had a chance to work on, that landed in this cycle. Old-time readers will remember the...
View ArticleBeamforming in PulseAudio
In case you missed it — we got PulseAudio 9.0 out the door, with the echo cancellation improvements that I wrote about. Now is probably a good time for me to make good on my promise to expand upon the...
View ArticleGStreamer on Android and universal builds
This is a quick PSA for those of you using the GStreamer binary builds for Android. With the Android NDK r12, the default behaviour while building native code changed from building for armeabi to...
View ArticleGStreamer and Synchronisation Made Easy
A lesser known, but particularly powerful feature of GStreamer is our ability to play media synchronised across devices with fairly good accuracy. The way things stand right now, though, achieving this...
View ArticleSynchronised Playback and Video Walls
Hello again, and I hope you’re having a pleasant end of the year (if you are, maybe don’t check the news until next year). I’d written about synchronised playback with GStreamer a little while ago, and...
View ArticleQuantifying Synchronisation: Oscilloscope Edition
I’ve written a bit in my last two blog posts about the work I’ve been doing in inter-device synchronised playback using GStreamer. I introduced the library and then demonstrated its use in building...
View ArticleStricter JSON parsing with Haskell and Aeson
I’ve been having fun recently, writing a RESTful service using Haskell and Servant. I did run into a problem that I couldn’t easily find a solution to on the magical bounty of knowledge that is the...
View ArticleA Late GUADEC 2017 Post
It’s been a little over a month since I got back from Manchester, and this post should’ve come out earlier but I’ve been swamped. The conference was absolutely lovely, the organisation was a 110% on...
View ArticleApplicative Functors for Fun and Parsing
PSA: This post has a bunch of Haskell code, but I’m going to try to make it more broadly accessible. Let’s see how that goes. I’ve been proceeding apace with my 3rd year in Abhinav’s Haskell classes at...
View ArticleUpdate from the PipeWire hackfest
As the third and final day of the PipeWire hackfest draws to a close, I thought I’d summarise some of my thoughts on the goings-on and the future. Thanks Before I get into the details, I want to send...
View ArticleGStreamer for your backend services
For the last year and a half, we at Asymptotic have been working with the excellent team at Daily. I’d like to share a little bit about what we’ve learned. Daily is a real time calling platform as a...
View ArticleTo Conference Organisers Everywhere…
(well, not exactly everywhere …) This is not an easy post for me to write, being a bit of a criticism / “you can do better” note for organisers of conferences that cater to a global community. It’s not...
View Article
More Pages to Explore .....