Hi, I was wondering if anyone here had thought about FLAC support on the Android. It would be great for FLAC adoption. There's a bug open for it<http://code.google.com/p/android/issues/detail?id=1461>on which I've posted some details about how I think it would need to be implemented. It appears to me that it would need to be added to the OpenCore component, which is written in C. -Ben -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/flac-dev/attachments/20090223/9c2dc028/attachment.htm
Hi Ben. A quick scan of the Android information I could find online indicates that Java is the primary development environment. You're not going to be able to create a feasible FLAC implementation in Java. Instead, you'll need to use GCC to compile the C code in the FLAC library for the ARM processor in the Android platform. So, I'm not surprised that OpenCore is written in C. Also, to be useful, the new FLAC code will have to be hooked into the operating system so that it is universally recognized as a valid audio format. That doesn't seem like a small feat. The bug you cited lists some of the changes that would be needed. An alternative would be to modify the music player only, so that it supports FLAC even if the rest of Android does not. This would be an inferior solution. Finally, I suggest that you start small, and try to introduce a simple audio format as an addition to Android. If you can add a new format successfully, then you should be able to take the next step and compile the FLAC library as another added audio file format. I believe that some work has been done in the FLAC community to support optimized ARM compilations, but I do not have any recent information on this. Anyway, it would be really cool to see FLAC on Android, and as people are saying, it would be very appropriate. FLAC was designed to work on small platforms as well as large, so it should be possible if Android supports added audio formats. Good luck. When you get to specific questions, I'm sure you'll find some help from this list. Brian Willoughby Sound Consulting On Feb 23, 2009, at 14:21, Ben McCann wrote: I was wondering if anyone here had thought about FLAC support on the Android. It would be great for FLAC adoption. There's a bug open for it on which I've posted some details about how I think it would need to be implemented. It appears to me that it would need to be added to the OpenCore component, which is written in C. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/flac-dev/attachments/20090223/815695a2/attachment.htm
2009/2/24 Ben McCann <ben at benmccann.com>:> Hi, > I was wondering if anyone here had thought about FLAC support on the > Android. It would be great for FLAC adoption. > There's a bug open for it on which I've posted some details about how I > think it would need to be implemented. It appears to me that it would need > to be added to the OpenCore component, which is written in C.Yes, that's my understanding too. Although the official Android application developer API is Java, the underlying implementation of media codecs uses OpenCore, in C. OpenCore includes an implementation of OpenMAX IL components for each codec. A good start would be to make an OpenMAX IL component for FLAC, using the code layout and OpenMAX helper functions present in OpenCore. Do you have a link to the bug? Conrad.
Conrad: Ben's original email had a link embedded, but it was lost when you quoted the plain text. If this works, I will put the expanded link here: http://code.google.com/p/android/issues/detail?id=1461 Brian On Feb 23, 2009, at 17:01, Conrad Parker wrote: 2009/2/24 Ben McCann <ben at benmccann.com>:> I was wondering if anyone here had thought about FLAC support on the > Android. It would be great for FLAC adoption. > There's a bug open for it on which I've posted some details about > how I > think it would need to be implemented. It appears to me that it > would need > to be added to the OpenCore component, which is written in C.Yes, that's my understanding too. Although the official Android application developer API is Java, the underlying implementation of media codecs uses OpenCore, in C. OpenCore includes an implementation of OpenMAX IL components for each codec. A good start would be to make an OpenMAX IL component for FLAC, using the code layout and OpenMAX helper functions present in OpenCore. Do you have a link to the bug? Conrad.
Brian Willoughby schrieb:> You're not going to be able to create a feasible FLAC implementation > in Java.As long as Android obviously has a rather poorly performing VM and no support for playing software generated PCM samples (except for writing them to a temporary WAV file and telling Andorid to play it after decoding is complete) it's not feasible, but a "real" Java implementation of FLAC is very much feasible. Ben: Patching the Android operating system with C code won't be an option for the regular Android user, or did you hope Google would adopt the code in a future official release of Android? Tor