Every now and then you come to the comfortable situation that a client requests you to develop a technology for a product of theirs, which you can then use in your own productions as well. This happened to us in the last couple of months, when we had to create an audio streaming engine for iOS for an internet radio app.
Now the internet radio app market on iOS is completely saturated. We browsed through the AppStore and found hundreds of radio station apps, half of them for free, half of them between 1 and 3 EUR. We downloaded quite a bunch and analyzed what we liked and what we didn’t like. With regards to the latter, we have seen splash screens, click-through ads, complicated UIs, and — most annoying of all — broken stations. Only a few apps actually do well in what they advertise… streaming radio!
This is what lead us to the development of Volksradio: Just Radio! A no fuzz no buzz streaming radio app. This is what it looks like:
A clean uncluttered UI that focuses on what the app does best… streaming radio. While we have refrained from feature overload, we put a couple of goodies into it, such as:
- HiFi streaming engine, even via EDGE
- Headphone remote control support
- iOS4 background streaming and multimedia dock support
- Automatically picks up playing the station you last heard
- Order channels alphabetically or by rating — either just your own or total rating of all users.
We even did a small video to show the features, which you can see by clicking here. Note that right now we focused on german radio stations, so if you don’t like german radio, don’t buy! If you are missing your favourite channel, please mail us to support app-developers.de. Thanks for listening!
Despite being incredibly busy due to some nightmare project I have been working on for the last couple of months, I have managed to sneak in some time to update Sid Player Pro to catch up with iOS4’s idea of multitasking.
Sid Player Pro now can stream audio in the background, just as the iPod application can. Moreover, it also reacts to headphone remote control events and hooks itself with the lock and multimedia dock screen controls.
The update has been submitted to Apple for review and we expect it to be posted very soon. Once Sid Player Pro appears in the AppStore, Module Player and Pokey Player will also be updated.
Here’s a video that demonstrates the new features in Sid Player Pro for iOS4.
I’m feeling not too well these days. Some extremely bad performing contract projects combined with a general feeling of restlessness, uneasiness, and aimlessness are haunting me. I have the strong desire to simplify my life, getting rid of a couple of construction sites, and focusing more deeply, but on fewer things. I’m afraid this also means my involvement in various open source projects is at stake. I need to find some answers, soon.
I’m now on twitter. I’ll use that for small status updates on the various open source related work I’m doing, e.g. FSO, OpenEmbedded, Vala, and the like.
Follow me, if you can
Looks like the freesmartphone.org project was rejected again as potential mentoring organization, same as last year. I guess I won’t bother applying any more. It’s not worth spending the time working on the submission when the whole process is completely intransparent and you don’t even get feedback. After having served for other projects as mentor and twice even as project admin for Openmoko, I’m somewhat disappointed about that. Looks like a truly FOSS middleware for embedded systems is nothing Google wants to support. Oh well, less to care about next year.
After Trolltech dropping the ball with the community back in the old days of Opie, I pretty much gave up on Qt (and C++) apart from accepting some contract work, so my C++/Qt skills would not get too rusty. Since my nightmares with getting something fluid out of Gtk+ (back in the Openmoko days), I did not have the chance to do much UI work — the freesmartphone.org middleware kept me busy enough.
I have been watching Qt progressing though, and ever since they introduced Qt Kinetic and QML it became very interesting for me again. QML looks like EFL’s Edje been thought through — don’t get me wrong, Edje was groundbreaking (as most of Rasterman’s work) when it made its debut, however in my opinion it got stuck in the middle and never lived up to what I was expecting from it.
Once QML ships with Qt — hopefully in the next minor or at least major version of Qt, I will get back on doing some FOSS work on application level to complete creating a smart phone stack. That’s going to be fun!
New versions of the Sid Player and the Module Player are now available via the AppStore. While Sid Player just received a minor update with some performance tweaks, Module Player received a major content and performance update. Here’s the changelog:
- Artwork: Module Player has a blueish tone now which leads to better identification if you also own Sid Player and Pokey Player.
- Performance: Database access has been completely rewritten for improved performance and less impact on the audio engine. It also helps with battery life.
- Database: Module Player now doubles the amount of available songs, we have added 70.000 songs in multiple new formats, such as 669, ABC, AMF, AMS, DBM, DMF, FAR, IT, J2B, MDL, MID, MT2, OKT, PSM, S3M, STM, ULT, UMX, WAV, and XM. The database has also been updated to incorporate new MOD songs uploaded since the last release.
- Authors & Songs: The number of songs per author is now being displayed next to the composer. Since there are so many song formats now, the type of song is shown next to the song title.
- Playlists: Double tapping on a song moves you into the author’s view where you can see all songs of said authors. You can shuffle any of the playlists now. The random playlist will come up with new titles on every query.
- Player: The currently played pattern and row is now shown. Release notes longer than the screen width are now presented in old-style scrolltext fashion. We also added a seek bar (#1 feature wish), so you can jump to your favourite parts of the songs. The Oscillator view has been rewritten in OpenGL for improved performance. If you still experience audio glitches, you can turn off the Oscillator in the settings.
I also finally took the time to work on an updated website for our team. Since I do not fancy direct HTML or CSS editing any more (I’m a big fan of frontends of all kinds), I did a small survey on website creation tools. I have settled down on Freeway Pro now, which is really amazing and allows me to realize my layout without having to care about the nitty details.
Update: Sid Player Pro has just been updated as well, receiving all the internal goodies from the Mod Player plus an update to HVSC.52+PSID
Just came back from FOSDEM 2010, which — after skipping the last incarnation — was a great inspiring and productive event. The Openmoko devroom we originally requested was declined, however thanks to the initiative of Serdar Dere, it turned out we could snatch a last minute 3 hours timeslot that was left open by the Xorg guys. Very shortly we prepared a schedule and managed to get a nice program which was very well received.
Due to the short notice, we could not manage to create a video recording infrastructure, so I’m afraid this year we can only provide the slides — which are a notoriously bad substitute for real talks though. We try to improve for next year — if we can get a devroom again. The pictures you are seeing are courtesy Dr. Nikolaus Schaller from Goldelico, btw. — thanks!
The FOSDEM team did certainly improve its organization over the last years, I was very pleased to see some of my criticism being taken into account. Apart from the lack of good coffee in Brussels (which the FOSDEM team probably is unguilty for), I can’t complain about anything. Even WiFi worked tremendously well on saturday. I still think due to the size of the ever growing interest in this conference that the ULB as location should seriously be reconsidered though. The special service transport on sunday to the main station is a great idea, folks — thanks a lot! Funnily enough, half of the ICE that took me to/from Frankfurt/Main to Brussels Zuid was filled with hackers, btw.
I have met some interesting people working on mobile devices, such as dcordes, leviathan, GNUtoo, cr2, larsc, heinervdm, etc. It’s great to see there is still momentum in real mobile FOSS architectures (i.e. something besides the Android, Maemo, or WebOS systems). I’m glad to tell you that this year we will see an exciting breakthrough in freesmartphone.org middleware supporting new platforms, i.e. progress on the HTC Dream and the Palm Pre is looking _very_ well. Stay tuned for more details appearing here soon.
I wish every conference would be like that. The only slightly disappointing thing was the cross-buildsystem-session in the embedded room. Just when I was expecting the discussion about the problems and potential collaboration to start, the time for the session was over. Rather than wasting time watching Andy Green telling us that our projects will die soon and we should all start using Fedora/Embedded now, we could have had some progress… Oh well, perhaps next year.
Due to some lucky coincidences, we got a devroom at this year’s FOSDEM. I’ll be there, presenting a short overview about the history of the Openmoko project as well as a wrap-up of the latest work on the freesmartphone.org mobile devices middleware.
Hope to see you there!
I’m fed up with booting my Linux-based smartphones like desktop-systems. Two major developments will help me accomplish enormous improvements in boot speed:
- devtmpfs — kernel support for the /dev file system
- dbus system activation — on-demand launching of dbus-based services
I’m going to carry out the following two tasks in OE:
- Writing fso-boot, a small executable written in C, which mounts the filesystems, brings up DBus and (optionally) launches X11
- Setting fso-boot as new init process, that way you still have sysvinit and udev in your root file system, but they’re not active unless explicitly asked for
I’ll do that for the freesmartphone.org adaptation for the HTC Dream (T-Mobile G1, Google ADP-1), which I’m running on 2.6.32 (necessary for devtmpfs) — stay tuned for the first benchmarks.