Date: Wed, 14 Jul 2004 13:51:44 -0700 From: 4Front Technologies <dev@opensound.com> To: freebsd-multimedia@freebsd.org Subject: Re: Does anyone compose music using any of the portsfromthe/ports/audio collection in FreeBSD? Message-ID: <40F59CE0.1070008@opensound.com>
next in thread | raw e-mail | index | archive | help
> On Tuesday 13 July 2004 17:31, Axel Auweter wrote: > >> AFAIK it has already been discussed that porting ALSA to FreeBSD seems >> to be nearly impossible. > > Dev Mazumar of 4Front Tech wrote here some time ago they had/were working on > an alsa emulation in (commercial) OSS. Perhaps he can comment on the status > of it right now (and if it's going to be available in the FreeBSD versions of > OSS). > >> Does anybody know, whether there are any plans or ongoing projects to >> create a better sound architecture for FreeBSD than OSS? > > It's rather a question of making applications support !ALSA or at least some > middleware. Inventing yet another API and replacing OSS with it will not produce > application support out of thin air (but instead would leave FreeBSD > without any application support at all). > > > =2D-=20 > ,_, | Michael Nottebrock | lofi@freebsd.org > (/^ ^\) | FreeBSD - The Power to Serve | http://www.freebsd.org > \u/ | K Desktop Environment on FreeBSD | http://freebsd.kde.org Hi, I think ALSA is going to be really to port to FreeBSD (without a lot of internal changes to FreeBSD kernel) because of high dependance on the Linux's /proc file system and Linux system calls that just arn't available for FreeBSD. OSS apps for Linux work nicely with FreeBSD's Linux emulation (case in point, check out Skype for Linux). I'm not sure how well a Linux binary that has a high reliance on /proc and other Linux oddities will work on FreeBSD. OSS is designed with "pure" UNIX sematics - read/write/ioctl/poll/mmap and nothing else. Ofcourse I could be wrong about porting ALSA. Just that from our experiences on developing the ALSA emulation, it looked highly suspect. It's actually easier to add OSS support to most apps. The problem is that none of the app developers have really understood OSS sequencers because they are lowlevel. ALSA provides better high level abstraction but we have already done a libOSSlib.a sequencer abstraction for OSS - nobody bothered with it. As for MIDI I/O, OSS already has powerful support for MIDI input and output that are also the basis for ALSA. Where ALSA seems to be ahead is in terms of sequencing and this part is in the ALSA libraries rather than the kernel drivers. We started with a project called Cuckoo - as a proof of concept that ALSA isn't all that it's cracked up to be (except for MIDI and even in MIDI, they rely on the OSS lowlevel MIDI/Sequencer drivers). We just gave up trying to keep pace with ALSA that keeps changing on a weekly basis - now the Cuckoo module will not compile on the latest ALSA drivers in the Linux 2.6.7 kernels. QNX used ALSA 0.5 and gave up trying to keep pace and now QNX Audio is something like ALSA but none of the ALSA apps can actually recompile on QNX without major work. We are working on OSS v4.0 and we would like to first invite FreeBSD audio driver maintainers to sit down with us and implement all the new mixer extension features that will allow FreeBSD driver developers to extend the old OSS mixer APIs to support more pro audio devices. OSS's mixer extensions are sane and aren't like ALSA's flat space (try running alsamixer on SBLive in Linux and then compare our OSS mixer in FreeBSD and you'll see how well it's designed). We have some work to do in the MIDI Sequencer space. We plan to address this and we'll be happy to share our work with FreeBSD developers. Just that right now, we see that MIDI isn't important for music creation. Companies like MAudio are more focussed on pro audio than MIDI. The M-Audio Revolution 7.1 audio card doesn't even have a MIDI port. We do plan on doing proper ALSA emulation for audio and MIDI by completely rewriting the ALSA Libraries to use OSS rather than ALSA lowlevel drivers. It can be done, just a whole lot of work is needed. It's a better approach than using the Cuckoo concept because ALSA keeps changing internally and the only thing relatively stable would be the ALSA libraries. I hope that we have the time and man power to pull this off. Right now there are so many cooler things we can do with audio - like 3D spatialization and other neat features (check out http://www.oss3d.com/usite/tech.html) BTW, we're working on OSS 3.99.1 for FreeBSD (please see my post on the open() call under the freebsd-hackers ML). If we can get that going, audio for FreeBSD will totally rock. best regards Dev Mazumdar ----------------------------------------------------------- 4Front Technologies 4035 Lafayette Place, Unit F, Culver City, CA 90232, USA. Tel: (310) 202 8530 URL: www.opensound.com Fax: (310) 202 0496 Email: info@opensound.com -----------------------------------------------------------
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40F59CE0.1070008>