davster writes
"I was just checking out the Linux 2.5 changeset and noticed that Linus has just merged ALSA into his tree. Its about time." CD: Looks like Jaroslav Kysela did the merge work, but Linus obviously allowed it to happen. I'm a happy Alsa user so this looks like a good thing.
Re:Explanation? (Score:3, Informative)
ASLA? (Score:4, Informative)
It would not only save people a bit of time, but avoid everyone who doesn't know, having to click through to the page, increasing chances of an unnecessary slashdot effect...
-me
Re:what is alsa? (Score:2, Informative)
To anyone who is wondering: this is a Big Deal (Score:5, Informative)
Some history, Alsa kindof grew out of the enhanced Gravis ultrasound drivers (not to say that you'll find any code lingering.. it just came out of that project).
That said, this will bump up linux sound a quantum leap.
The major thing that caused ALSA to not be included was stability--their API would change drastically and suddenly all the time (which may be a good thing, though it was done VERY suddenly and often without notice). That aside that has stabilized as they approach a 1.0 release.
Note that there are oss compatability functions, and support for tons of soundcards, so don't think that thinks will stop working.
As a matter of fact, you can expect this to really push things forward (yes I'm repeating myself, but I can't stress this enough). Many good sound apps now already require ALSA. if you check out their website [alsa-project.org] (linked in the main story), amongst other info you can find their supported card matrix.
I tip my hat to the ALSA team, for their great work and perseverance. thanks a million!! We can all look forward to better sound (more features, lower latency, more flexible API, everything you want) now =)
Please say they fixed the emu10k1 mixer & MIDI (Score:3, Informative)
The last time I tried ALSA (0.9.0beta9) with a Sound Blaster Live!, I was confounded with the way they presented the mixer setup. It provided me with dozens of individual effect and audio sends, "mutes" that actually turned things on, confusingly named controls for laypeople, etc. While their wavetable MIDI worked for the most part, I have songs that suddenly mute one or more channels, with notes always cut short (no sustains).
Fortunately, the wonderful thing about the Linux kernel is that one can often find alternative (OSS_Free, etc.) drivers. I'm not putting ALSA down; I like how it is progressing, and it has the wavetable support that the OSS Free-style driver presently lacks. Hopefully ALSA's inclusion into 2.5 will help coax more people to find bugs, add cards, and fix problems.
(Before anyone flames me, I did file bug reports to ALSA. Many projects seems to be drowning in them; if you want to get into open source development and cannot code, perhaps you could help verify reported bugs!)
Re:Explanation? (Score:5, Informative)
Hope this helps..
ALSA = Advanced Linux Sound Architecture (Score:5, Informative)
Jaroslav Kysela, a Czech developer paid by SuSE, has worked for years to create and lead the ALSA project [alsa-project.org]. It's GPL - its code has always been intended to go into the mainstream kernel and replace the OSS code. Linus has just done so.
Okay, what does it do: ALSA is just a set of utilities, general code and drivers for soundcards. After 4Front Technologies went commercial with OSS some years ago, Linux did not have supported GPLed soundcard drivers anymore. The commercial OSS-drivers are up-to-date, but those in the Linux kernel are old. A lot of obscure soundcards are currently only supported under Linux by either adding the commercial binary OSS modules, or adding the ALSA modules to your kernel. For example, my Aztech 2320 and Mediaforte cards that wouldn't even work with the legacy Win95 drivers (newer aren't to be found anywhere), nor with the old OSS, but they work very cleanly with ALSA since two years. Believe me, the ALSA codebase rocks. It has been stable for a long time and is good enough to add to your 2.4 kernel yourself. Visit the web site, it's just as easy as compiling any other module. And uh, before you all flood the ALSA mailinglists, start alsamixer first before testing, because all channels start muted as default
Re:What's going on with Linus? (Score:5, Informative)
I think you're missing something.
Kernel versions with an even number in the second position are meant to be stable. Nothing risky goes in these.
Kernel versions with an odd number in the second position are development versions. This is where risky and innovative new technology can be introduced and experimented with.
Linus only recently opened the 2.5 kernel series. He's been maintaining 2.4. I believe what you're attributing to ownership is his being aware of the fact that a broken "stable" kernel could do terrible damage, and nifty new sound bits and experimental reworking of the task scheduler aren't worth taking that risk.
Re:ASLA? (Score:5, Informative)
Re:What's going on with Linus? (Score:4, Informative)
Re:Explanation? (Score:2, Informative)
As a perfect example of why Alsa is powerful, take a look at RX/Saturno [reduz.com.ar]
Its a Yamaha DX7 emulator that installs itself as a virtual ASLA midi port, that any Alsa MIDI player/app can use.
Basically, the ALSA architecture can, in theory, let you work around your OPL midi limitation. You can install 'virtual' drivers that use wavetable, or whatever, synthesis to provide better MIDI playback.
Re:ALSA = Advanced Linux Sound Architecture (Score:2, Informative)
The mistake was probably due to the BK changelog, which quotes Jaroslav's email message:
(@*#&$^(*& llllaaaammmmeeeennnneeeessssssss ffffiiiilllltttteeeerrrr)
Re:ASLA? (Score:2, Informative)
Re:ALSA does not impress me (Score:3, Informative)
Re:ALSA in any distro default kernels? (Score:2, Informative)
Re:Two points: (Score:2, Informative)
You forgot new input device layer. If we get the matching new console layer, multi-head will be pretty much built in. (Yes, I know XFree86 supports multiple displays - I'm talking about multiple sets of keyboard+mouse+video running independently of each other. SGI has sold dual-console workstations for a long time - why can't I do this with Linux, y'know?)
Oh yeah, there's also USB 2.0, but that's more of a driver update than a whole new thing.
...And x86-64 (also in 2.5.5pre1), so we're ready for the Hammer when it comes out.
...And better filesystem threading. The unstoppable Al Viro just added fine-grained locking to a couple more VFS calls in 2.5.5pre1. I guess it isn't really news, more of a work in progress; he has been improving VFS scalability since mid-to-late 2.3.
Re:ALSA in any distro default kernels? (Score:3, Informative)
JACK + ALSA = future PCM subsystem for Linux! (Score:5, Informative)
JACK = highlevel audio (PCM) API
So JACK is using ALSA to output audio. The nice thing about JACK is that it's the first serious attempt in the Linux (Unix) world to get a professional audio API in the hands of developers. SGI's dmSDK was promising but that project seem to have stalled, i.e. no open development going on (no CVS). JACK also replaces arts and esd when it comes to multiplexing audio output. The only problem is that developers may find they have to redesign their whole audio application in order to fit inside the JACK (callback based) framework.
A typical Linux/Unix audio application opens a special file and starts writing the audio data to it. The application will block on the write() (or read() when recording). This works fine for simple things like playing an mp3 or doing some window manager sound. It gets hairy when you try to sync multiple audio applications and achieve low latency at the same time. With jack this is as easy as pie, because the applications are driven by the JACK callback. So when it is time for the soundcard to get its next buffer JACK simple calls the process() function of all the connected audio applications. Every application has the chance to insert its own piece of audio data (or inspect what's already there), all app will always write the exact same amount of samples per callback, which keeps them in perfect sync. You can also do cool things like create your own ports and wire JACK aware apps together. In short, it rocks
More on this at the JACK website [sf.net]
Shameless plug
-adnans
Re:BIG MISTAKE! (Score:3, Informative)