Today I’m happy to announce that the world is one audio player richer! This is a personal project of mine that I have been working on for a little while. It’s written in clojure and javascript (jQuery) and uses alsaplayer as the audio player. I probably won’t have much time to hack on it, so consider this a code dump that hopefully someone else will find useful and play/run/do-whatever with. As for maturity I use it almost daily and it’s pretty stable. There are some known bugs and kinks (mostly due to that its using alsaplayer and that the java inotify library is buggy).
Tag: linux
Profiling multithreading applications
I’ve written about profiling before in the general case. But when it comes to multithreading, there are a few more factors to consider such as lock contention and cache invalidation that affect performance. And this is where mutrace (mutex profiler) comes into the picture. The profiler has a very low overhead compared (no perceived delay for me) to other solutions and gives quite nice results. I tested it on My Media System (C++) and Nemo (C#) and got interesting results for both. I knew more or less what the results for mms would be, but the results for Nemo was a bit suprising. The lock contention was significantly higher than for mms, even though I didn’t really use a multithreaded design for Nemo. So I guess it comes from the mono platform itself. Sadly it seems that mono programs aren’t compiled with -rdynamic, so the results that one gets are quite hard to decipher.
Vdpau without tearing
Acmelabs made a great blog post about how to install the latest nvidia drivers (180.29) and set them up to avoid annoying tearing. I installed it on my system and it A/V sync has also been much better so far. Upgrading heavily recommended 🙂
Updated: Fixed a bunch of issues by using latest patch for mplayer from here.
I installed a nvidia 9400 fanless graphics card today. I’ve been hearing good things about the rate of their driver development so I thought I’d try it out. My experiences after having tried the latest 180.18 drivers is:
- A good deal of 1080p mkv’s still crashed after a second or so of playback. Even with the hack posted here.
- cpu usage is very low (max 20% and the cpu is at 1GHz)
I changed it to my default movie player in MMS to use vdpau by default with the following script to detect extension as vfm is not working yet. Linux kernel was 2.6.27-r2 in case anyone is interested.