Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
X GUI Graphics Media Music Software

A Sound Server For X 226

An anonymous reader writes "X.org, the organization that governs the evolution of the X11R6 specifications, has released a sound server for X, called MAS. According to their site: 'MAS integrates with a compatible X11 server on your desktop. It processes graphic information locally, alleviating the need for network transmission of uncompressed graphical content. Graphic events are easily synchronized with audio events for professional-quality multimedia and accessibility-enabled applications.'" The X.org site describes MAS as an "affiliated technology" rather than "official," but it is released under the same license. "MAS" stands for "Media Application Server," and it's developed by Shiman Associates.
This discussion has been archived. No new comments can be posted.

A Sound Server For X

Comments Filter:
  • by martinde ( 137088 ) on Monday February 03, 2003 @06:26PM (#5218545) Homepage
    There are already a bunch of remote sound servers. I happen to like rplay [doit.org], but there is also artsd, nas, esd, etc... Was the problem simply NIH syndrome?
    • by akeru ( 15942 ) on Monday February 03, 2003 @06:35PM (#5218620)
      1. esound sucks, I mean, really
      2. network transparent sound (ala X)
      3. tightly coupled video and audio (check out their page for the latency requirements)
      4. cooperates with the X server:
        can send audio data over a number of different transports, including CORE X


      I could go on, but I can summarize with: MAS is a much, much better solution than those you mentioned for X applications. To top it all off, I'm pretty sure it doesn't require X, and can be used for console apps as well. (mpg321, etc.)
      • because it keeps /dev/dsp from fucking up, allows simultaneous feeds, and doesn't give me crap.

        Couldn't a /dev/dsp replacement be made with the same features?
        • Depends on your sound card driver.

          I have a SBLive and my /dev/dsp allows multiple open()s and doesn't give me any crap.
      • by optikSmoke ( 264261 ) on Monday February 03, 2003 @06:46PM (#5218696)
        arts = network-transparent, can be configured to send data over X, works with console apps, includes a plugin architecture for combining sound streams and applying funky effects and whatnot, and is already well-developed and stable. Also, it supports multiple underlying sound architectures (OSS, ALSA, and some for non-linux unices). Plus, it can play formats such as ogg and mp3, and can route normal oss apps to use it using artsdsp. Why the need to constantly be reinventing the wheel?
        • by VistaBoy ( 570995 ) on Monday February 03, 2003 @07:11PM (#5218872)
          I have much to bitch about aRts...Quake 3 for Linux crashes at startup with it on, and artsdsp doesn't work very well with Quake 3. Not only do you have to do "artsdsp -m quake3", but when you fire a shot, you see the shot, and about two seconds later you hear it. To alleviate that little problem, you have to turn down the buffer that the aRts server has. However, in doing that, you make the sound stutter like a mofo. OSS works properly with Quake3, but aRts is a stumbling block.

          Remember: The first thing you should do when you log into KDE for the first time is go to the KDE sound server window and turn off the aRts server.
        • I can say from experience though, that is not the friendliest system in the world to set up. Crap, if I have a Wish shell that plays a music file I want to hear it on the remote terminal without having to fart around with special server software.
        • by dozer ( 30790 ) on Monday February 03, 2003 @09:06PM (#5219718)
          aRts is every bit as bad as esd. That performance/latency slider is impossible to set such that sound has decent latency and doesn't stutter.

          This is life with aRts:

          Open control panel. Tweak slider down. Launch MAME.
          Open control panel. Tweak slider way up. Play mp3s while I work.
          Open control panel. Tweak slider down. Launch Quake3.
          Open control panel. Tweak slider up. Launch Xine. Live with audio and video being ~300ms out of sync because anything less causes horrible stutter.

          The worst part is, if aRts were designed properly, this slider would be totally unnecessary. aRts also uses an insane amount of CPU time.

          I'd like to see Gnome and KDE adopt Jack [sourceforge.net]. Jack works. MAS sounds interesting too. I look forward to seeing comparisons.

        • Have you ever tried to use aRts' network transparancy? It's a sick joke. Neraly impossible to get functioning correctly, impossible to get working acceptably, and lacking any useful documentation or examples. I tried setting it up so I could have network audio on a (net-booted, diskless, Debian) X-terminal. I had to install aRtsd on the X-terminal (no problem), but ran in to problems because the aRts server must run as the same user that's logged in to the server. Small problem, since I use LDAP, but this destroyed my dreams of zero-administration on the X-Terminal. Oh, and aRtsd needs to be spawned on the X-Terminal at login time, and it doesn't die when you log out, so you need to manually kill off all the artsd processes, or restart the terminal.

          When I did (finally) get it to work at all, the sound stuttered when playing any kind of audio. Upped the buffers, to no avail. This is on a 100mbit switched network.

          Filed a bunch of bugs with the KDE/aRts folks, posted to the mailing lists and never got a satisfactory reply or fix.

          Bring on MAS.
      • Finally, maybe we can end every half assed project having it's own sound server. Honestly to keep sound working between KDE, Gnome, and other apps I've constantly flicking on and off various sound servers. Sure apps can autodetect them and deal with them but some apps don't bother and there is always one app you use that won't work with the sound server all the other apps work with. I'll be a happy camper when we have a good standard that works with everything. Maybe MAS is that standard. :)
    • by DunbarTheInept ( 764 ) on Monday February 03, 2003 @07:02PM (#5218814) Homepage
      For one thing, I've wanted for a long time the convenience of being able, in one setting, to describe the remote-relationship for all media. I don't want to have to say, "send my $DISPLAY to this host, and then here's a command-line arg to do the same thing for this one music file I want to play." I want to be able to say, "Send all my media to $DISPLAY, both visual and audio" and then be able to have all X programs pick up on that.
    • me@box2$ ssh box1
      Password:
      me@box1$ export SPEAKER="box2:0"
      me@box1$ ogg123 cool_sounds.ogg

      And hear it where I'm sitting, at box 2. Try THAt with esound or artsd.
    • The problem is that without some level of integration with the video system (i.e. X), synchronizing full audio/video streams via an external daemon mixing process will result in noticeable latency. That latency can be minimized to about 100 ms or so before you run into the problem of "stutterring" audio streams (audio not reaching the mixer fast enough). This latency is irrelevant for "long, continuous" streams (such as mp3's), and barely noticeable for "sporadic" events (window manager squonks, game bleeps, etc.).

      Five years ago, when esd, arts, etc. were in design, the majority of the (Linux) desktop environments that were in existence were limited to xanim and realplayer for a/v playback, which only played back a limited amount of the media available at the time. I figured allowing the capability to have ESD release control of the sound card for "incompatible" programs (quake, low latency audio mastering software, etc.) would be sufficient.

      And judging by the fact that it's still available on most distributions today, that original feature set (hear messenging and wm beeps while playing mp3s) seems to hold up well. The problem is going to the next level beyond the external audio mixer, into the realm of synchronized A/V streams (much more prevalent today) and for that an integrated solution is necessary. NAS was the closest thing "back then", i.e. 5 years ago, and I couldn't get it working on Linux for more than two seconds, regardless of whose patches I applied. I assume none of the other mixing daemon authors could either...
  • About time (Score:3, Interesting)

    by InterruptDescriptorT ( 531083 ) on Monday February 03, 2003 @06:26PM (#5218551) Homepage
    From all the experience I've had with X applications, a sound server is the first thing that they need.

    I've used a lot of X apps that have crashed due to bad requests (especially those dealing with unsupported colourmaps), and it makes sense that someone would shore up the current state of the code and work on stability. But why has it taken so long?

    At any rate, this is a good step forward--hopefully we'll see more X-based apps improved as to stability and speed (X isn't the speediest thing in the world).
    • At any rate, this is a good step forward--hopefully we'll see more X-based apps improved as to stability and speed (X isn't the speediest thing in the world).

      You're kidding, right? The most stable and efficient window system servers around are X11-based. MS Windows and (in particular) OS X are flaky and sluggish in comparison.

  • cool! (Score:2, Funny)

    Now this is a ground breaking technology: now I can listen to my mp3 collection even when I'm accessing my workstation remotely!

    Wait a few days and you'll see RIAA trying to sue them :o)

  • by cronot ( 530669 ) on Monday February 03, 2003 @06:30PM (#5218577)
    ESound? Asd? ARTs? It seems a little different in concept, but I just can't get it. If it is, so cheers to the guys that made it... Linux at least (as I understand this is for X, so *BSDs and other *nix should benefit too) need a more standardized sound architecture (Yeah, I know about ALSA, but I mean something more higher level - like DirectSound)
  • by FreeLinux ( 555387 ) on Monday February 03, 2003 @06:30PM (#5218581)
    It processes graphic information locally, alleviating the need for network transmission of uncompressed graphical content.

    Since it relies on X11 I suspect the bandwidth requirements are going to be really high. X11 over the network is a bandwidth hog, that's all there is to it. Now they're adding sound?

    X11 needs a new protocol. Graphical applications run across the network consume ridiculous amounts of bandwidth. If you want to do a test try running the XMMS gui across the network via X11. The last time I did it, XMMS was using 11 megabits per second. It would really suck to try that over a modem or a 64K frame-relay link.
    • Completely agree,

      For a remote display, X uses too much bandwith and has issues with firewalls and NAT, so people use vnc instead.
      For a local display, X is too heavy.

    • by akeru ( 15942 ) on Monday February 03, 2003 @06:45PM (#5218689)
      If XMMS is using that much, then it is seriously broken. Admittedly, X *can* use a lot of bandwidth, but the onus for this is almost entirely on the application (toolkit) developer. Gtk+ and QT used to be really bad at this, but have since improved dramatically. Even so, there are a lot of variables to consider and using a light-weight theme in your respective toolkit can make a large impact on network performance.

      When I work from home, I do so *entirely* out of an ssh-forwarded X connection, including, but not limited to, multiple XEmacs sessions, terminals and occasionally a remote Mozilla. The *only* problems I have encountered involved XEmacs doing silly things with the cut-buffer and pausing momentarily.

      I am, admittedly, not an expert on the X11 wire protocol, but from what I have read from those who are, it is not inherently bandwidth heavy, but any protocol can be abused.

      Additionally, sound is surprisingly light on a LAN. Doing some tests with K12LTSP esd integration Eric Harrison discovered that streaming audio frequently takes up less bandwidth than moving a window in "opaque" mode (contents continually updated)
      • When I work from home, I do so *entirely* out of an ssh-forwarded X connection, including, but not limited to, multiple XEmacs sessions, terminals and occasionally a remote Mozilla. The *only* problems I have encountered involved XEmacs doing silly things with the cut-buffer and pausing momentarily.

        You can improve things further by using LBX (low-bandwidth X), by running "lbxproxy".

        It does some X protocol aware compression. In addition, and perhaps more importantly, it caches some server information that applications commonly re-request over and over again unnecessarily.

        Basically, all you need to do is:

        $ lbxproxy &
        $ export DISPLAY=:63
        $ xterm&

    • by aardvarkjoe ( 156801 ) on Monday February 03, 2003 @06:47PM (#5218710)
      Your problem is that you're trying to use a program that relies on eye-candy over the network. (At least, I think that's the idea. I can't imagine any other reason for the incredibly bizarre interface of XMMS.) Of course it's going to be slow without a fast link. How is a "new protocol" going to help?

      This will essentially be the same as streaming audio from the network. (You might be able to cache some sounds locally, for improvement, but for playing music or whatever that's probably not much of an option.) No, the modem users probably won't find this useful. But those of us with a fast connection to the other computer can benefit greatly.
    • by xeniten ( 550128 ) on Monday February 03, 2003 @06:49PM (#5218723) Homepage
      It sounds like ( pun intended ) that they have taken bandwidth into account. There are a number of references to bandwidth performance on the MAS site.


      "MAS enables low-latency Internet conferencing and telephony. Automatic bandwidth measurements and MAS's dynamically-switchable CODECs insure that the conference quality scales from 56K modems to T1 lines. "


      "MAS integrates with a compatible X11 server on your desktop. It processes graphic information locally, alleviating the need for network transmission of uncompressed graphical content. Graphic events are easily synchronized with audio events for professional-quality multimedia and accessibility-enabled applications. "


      "MAS handles network-distributed media processing and intricate format configuration tasks. It continually measures system performance and adjusts its actions depending on the available system resources. The longer it runs, the better it knows your system."

    • by eviltypeguy ( 521224 ) on Monday February 03, 2003 @07:03PM (#5218823)
      Actually, MAS may integrate with X11, but it doesn't use the X11 protocol, it uses the "RTP" (Real Time Protocl RFC 1889, January 1996) for all communications. Except for multicast mode or in multi-participant mode. RTP is obviously very efficient for this type of data payload...
    • X11 over the network is a bandwidth hog

      Use VNC. Problem solved. I've frequently used VNC at high resolutions over slow links. It takes a bit of configuration to select the correct options (or perhaps not, realvnc is trying to do that part automatically now).
    • It's not X itself that is to blame. It's many of the applications written for it. All too often people get lazy and forget that calls to the X server shouldn't be needlessly repeated. If information returned by an X call isn't going to change, then get the info just once and remember it in a variable - don't repeat the same call over and over in a complex mathematical expression, for example. X *can* be efficient, but it doesn't force the applications to be effiecient, so many of them turned out not to be.
      (Try running the old xterm over a modem link sometime, and compare it to something like gnome-terminal or konsole over that link. Even though the programs are essentially doing the exact same amount of screen manipulation, the old xterm is very fast and responsive even over a slow link. It doesn't feel much slower than a straight telnet or ssh would over the modem connection. In the olden days of X11, people still designed X applications not to be wasteful of bandwith. Today they don't really care anymore because bandwith is cheap.
    • Okay, CD quality sound in stereo 44Khz * 2 = 88Khz.

      Assumin a 16 bit sample rate, That 88,000 * 16 = 1.4 MB/sec. Worst case scenario, uncompressed. Everything in real life will be cutting some kind of corner, so this is the uber high-ball. (Drop your bir rate in half by going to 8 bit sampling, and again by going to 22Khz.)

      That really isn't all that outrageous.

      Now, if you are trying to make sound work over a modem, JUST USE THE PHONE INSTEAD.

    • You can choose:

      It can use RTP, or be embedded using X extentions so you can have remote sound where you have X (good for firewalls). You can even write another "net device" which is like a net abstraction layer - it's real flexible...

    • The X protocol gets slow for some applications because the applications are generating too many requests, because they're doing the rendering essentially on the client side and sending it in little updates across the network to the server. That's why MAS "processes graphic information locally (i.e., on the X server)", so that you send the compressed synchronized sound and video to the server, which then puts it on the screen without sending it uncompressed over the network, like xmms is doing with its UI.
    • If you want to do a test try running the XMMS gui across the network via X11. The last time I did it, XMMS was using 11 megabits per second. It would really suck to try that over a modem or a 64K frame-relay link.

      I'd really like to know just -what- you were running with XMMS that made it do 11mbps -- a graphical visulizer perhaps? I run XMMS across my 10mbps network all the time. I gave up on putting my XMMS skins on the server though, so I went with the "bandwidth hog" approach instead. I NFS mount my music from the server, play it locally on my laptop which pushes the sound BACK to the same server via EsoundD. It's not perfect, but it does work -- total usage is typically 2.5MBps for that route. Just doing XMMS from the server displayed on my laptop was -way- less than that too. I've got MRTG stats to show it too, but that's a few weeks old and the little bumps it made aren't really recognizable.

      If you hit 11mbps you were trying to run a visualization tool over the network. Although, most of the vis. tools I see need local X to grab portions of the video card -- maybe some of the lesser intense tools don't though.

      Just my thoughts -- me thinks that 11mbps total was coming from something besides X though. I've just never seen it.
    • X11 needs a new protocol.

      No, it doesn't. The X11 protocol is the most efficient protocol for local and LAN usage around. It is, however, not a protocol designed for slow links (LBX is).

      If you want to do a test try running the XMMS gui across the network via X11.

      Then XMMS is a poorly designed X11 application. There are plenty of those around. In fact, there are very popular toolkits for X11 that are bandwidth hogs. But that's because the toolkits don't use X11 properly, not because there is anything wrong with X11. No protocol improvements can reduce bandwidth when an toolkit's or application's idea of a GUI is to ship lots of bouncing bitmaps around.

    • The reason for not compressing stuff by default is to keep latency low. As long as you are on a LAN, this is a good idea, and is so by design.

      For people wanting to use X over low bandwidth connections, the X consortium (?) in their infinite wisdom invented LBX [paulandlesley.org] ("low bandwidth X").

      Note that I don't know much about LBX except for the above, so if you used it and you think it sucks, it probably does. My point is that the X Consortium hasn't been ignoring bandwidth as you seem to suggest.

  • Really swell - one of the things that has held me back from linux is the lack of hardware/software high quality audio. Could we see Protools for Linux(TM) (hmm? OS X not *that* different?)

    Perhaps this will kick some audio hardware makers into releasing some drivers for the Penguin.

    I really wish I could run my Aardvark Q10 (awesome hardware) under something other than MS - they were working on Beos drivers before the death of Be. Those are probably sitting on a floppy in a file cabinet. :(

  • no mas! (Score:5, Funny)

    by prockcore ( 543967 ) on Monday February 03, 2003 @06:34PM (#5218607)
    Great, all the people who think X is too bloated as it is will now be crying "No mas!"
    • Re:no mas! (Score:2, Troll)

      by moosesocks ( 264553 )
      X isn't bloated. It's unnecessarily complicated.

      Sure, it it has remote desktop capabilities to boot, but they're virtually impossible to configure and use.

      To prove that a good, easy unix remote desktop is possible, look at VNC. You can have the same functionality with practically NO configuration (start the daemon, launch the client on the remote end, enter the IP address or domain name, and you're done.)

      X11 has a lot of great concepts behind it. They're just implemented in a manner which makes them hard to use.

      Either way, these problems should have been corrected 10 years ago. It would be easier to define a new protocol than fix X.
    • Great, all the people who think X is too bloated as it is will now be crying "No Xmas!"

      The battle cry of X and Christian haters world wide.

  • by niall2 ( 192734 ) on Monday February 03, 2003 @06:42PM (#5218669) Homepage
    Thats the real question...
    • by Anonymous Coward

      apparently so!

      devices/anx/mixer.c, line 96:
      (100 seems to be max volume)

      int16
      dbvol_to_linear( int16 dbvol )
      { .....
      if ( lvol > 110 ) lvol = 110; /* clamp at 110. It's one louder */ .....

      • The official reason is that we're going to restrict the volume settings to 0-100 for non-privileged users, and allow privileged users to set the volume up to 110. This way, privileged users can always punch through the mix with something that's a little bit louder. How much louder, you ask? One louder.

        There's also a db scale, but... it's just not the same thing.

        -Mike
  • Poor name choice (Score:3, Informative)

    by soupdevil ( 587476 ) on Monday February 03, 2003 @06:45PM (#5218693)
    There is already a MAS associated with audio -- MOTU Audio System plugins.
    (http://www.motu.com/english/software/gl obal/index .html)

    Perhaps they should have done a bit of name research.
  • A clipboard server! Has anyone else noticed the really unpredictable behavior of the clipboard in X applications?
  • by YetAnotherName ( 168064 ) on Monday February 03, 2003 @06:47PM (#5218705) Homepage
    A sound, solid server will certainly help with all sorts of stability problems I've experienced with X over the years.

    Oh wait ... you meant sound as in audio? Oh, nevermind.
  • by GGardner ( 97375 ) on Monday February 03, 2003 @06:48PM (#5218713)
    Is the X Consortium (err, the Open Group), even relevant anymore? Substantially all the good work for X is done under the auspices of the XFree86 folks, or the higher level toolkits (GTK, KDE, etc.).

    The last big push from the Open Group was Broadway, which was an X protocol based plugin for web browsers. Look at how popular it is today! Their XPrint work is just as successful.

  • About time! (Score:3, Insightful)

    by Kickasso ( 210195 ) on Monday February 03, 2003 @06:54PM (#5218770)
    And for those who are asking what's wrong with existing sound servers: there's no standard mechanism to query whether one of them is running, especially on a remote machine. (No, relying on magic port numbers is wrong.) And not all of these servers run under all Unix variants. I personally have had very hard time trying to make aRTs work under comercial unices. With this stuff you just talk to X server. There's hope big players will support it because X is the industry standard. esd, to put it bluntly, isn't.
    • Re:About time! (Score:2, Insightful)

      I know a lot of people get upset thinking that a good standard coming along will make obsolete similar work done by others, but is this not what's good about open source?

      If there are wonderful ideas implimented in existing projects, what's great about them all can be brought together and implimented into a new and accepted standard. Applications that exist to support them all can easily be modified by the community to support the new standard.

      If there are 10 different sound servers out there in use, and they're consolidated down into just 1 or 2 using nothing but the best features, this can be a great thing. If one becomes standard and makes sound applications easier to bring to Unix, this is even better.

      I personally have a lot of problems with X, but I still think something like this is a very good thing.
  • What about NAS? (Score:5, Informative)

    by axxackall ( 579006 ) on Monday February 03, 2003 @07:08PM (#5218849) Homepage Journal
    Why not use NAS [radscan.com], The Network Audio System?

    Key features of the Network Audio System include:

    • Device-independent audio over the network
    • Lots of audio file and data formats
    • Can store sounds in server for rapid replay
    • Extensive mixing, separating, and manipulation of audio data
    • Simultaneous use of audio devices by multiple applications
    • Use by a growing number of ISVs
    • Small size
    • Free! No obnoxious licensing terms
    Applications that support NAS natively:
    • Festival [ed.ac.uk] - The Festival Speech Synthesis System.
    • mpg123 [mpg123.de] - a command line MP3 player
    • GAIM [marko.net] - a free AOL IM client
    • OpenOffice (StarOffice) [openoffice.org] - the (now opensourced) StarOffice Suite has built-in NAS support for the Solaris and Linux Platforms.
    • The Qt Library [trolltech.com] - from Trolltech [trolltech.com] supports NAS natively. You will need to pass the '-system-nas-sound' to './configure' before building.
    • libSDL [libsdl.org] - SDL, the Simple DirectMedia Layer library, now has native NAS support thanks to Erik Inge Bols\x{00F8} [mailto]
    • XAnim [pubnix.com] - the X Animation viewer
    • XBoing [techrescue.org] - a blockout type X game
    • XPilot [xpilot.org] - a multiplayer client/server space warfare game
    • Xemacs [xemacs.org] - the best cross-plaform, cross-language IDE
    • Alsaplayer [alsa-project.org] - A NAS Output plugin written by Erik Inge Bols\x{00F8} [mailto] is now supplied with the Alsaplayer distribution.
    • X MultiMedia System (XMMS) [xmms.org]. A NAS Output plugin written by Willem Monsuwe [mailto] is available at ftp://ftp.stack.nl/pub/users/willem/ [stack.nl]
    • Wine [winehq.org]. A NAS plugin written by Nicolas Escuder [mailto] is now available with the WINE distrubution.
    Not a troll
    • by stem ( 83752 ) on Monday February 03, 2003 @10:27PM (#5220114) Homepage
      Well, we looked hard at the Network Audio System (NAS), and at DEC AudioFile, and esound and aRTs. And we looked hard at the efforts of Tice and Welch at the X Consortium whose X Common Audio project was to take the best of the NAS and DEC AudioFile to form the standard solution. And, we looked hard at all kinds of other soundserver-related things out there.

      Our conclusion: none of them had the kind of system-pervasive time management one needs to handle sound, let alone video or other time-dependent information. The system that came closest to meeting our timing needs was DEC AudioFile, but it was not extensible enough for our needs, and lacked support for sample rate conversion.

      We didn't take the conclusion lightly. As you say, there's all these applications that support the Network Audio System natively. There's all those old NCD X tubes that support it in firmware, too. And, I really have no interest in stepping away from code that has most of its bugs worked out. But, we just did not see how NAS would scale in both performance and in functionality to handle the kind of high-performance multi-media we all want to see on Linux and UNIX.

      I think MAS is a great platform to handle the timing. It's young, though. We're working hard now on a soundserver-style API to ride on top of the lower level core API that's in the source distribution. Beyond that, there are a host of security issues to work through, and the X.org standards process. (Also on our to-do list is a more detailed developement roadmap for the website!)

      I think there's a ton of cool, useful stuff in the core of MAS now. For instance, we compute a running estimate of your soundcard's actual sampling rate. You can use that estimate to drive the sample rate converter (srate) device to resample audio to the actual rate of your sound card. We've been appalled at how far off some soundcards' crystals have been!

      Please be patient if you e-mail us... We're getting a lot of e-mails for some reason.

      Thanks,
      Mike Andrews
      Lead Developer, Media Application Server (MAS) Project

      • For instance, we compute a running estimate of your soundcard's actual sampling rate. You can use that estimate to drive the sample rate converter (srate) device to resample audio to the actual rate of your sound card.


        Now THAT's hardcore. If only this existed two years ago... ::sobs::
  • by Anonymous Coward
    I am a composer/musician using Linux for my needs and from what I've seen so far all of the aforementioned servers esd, asd, artsd etc. are rather rudimentary and incomplete. Furthermore they have monstrous latencies (which is a big problem for any kind of time-sensitive interactive music).

    To this date the best audio server on Linux is JACK [sf.net], but unfortunately just as any other of the current servers, it is still under development. Nonetheless, its advantages over the given bunch of audio servers is immeasurable:

    1) absolutely the best latencies (including even other OS's) down to 2.5-3 milliseconds (you need to patch the kernel for low-latency operation though since the vanilla Linux kernel 2.4 and down has some big issues with the scheduler). All this is achievable even with the current version, even though it is under development.

    2) integration where the signal could be routed not only to the dsp but also between the apps (so you could theoretically get the signal routed from xmms into your real-time sound processing app and then to the audio recorder and audio output).

    3) Relatively easy to implement and allowing for practically unlimited number of connects

    4) Relatively low overhead

    Unfortunately, as I mentioned before it is still under development and has its own issues that need attention. Furthermore, apps need to be adapted to be compatible with this server (in another words this server is not trying to be compatible with older servers simply because they are inferior, dead-end kinds of implementations). That being said, it is still the best sound server around.

    I would really like to see Linux community let the audio programmers/musicians to provide solution to this issue, because they are the ones who know the best how to create the best possible sound server that will suit their highly demanding needs and yet provide a great architecture for the rest of the casual users.

    It is unfortunate though that instead of unifying our efforts everyone feels like they need to make a brand new implementation of the same idea instead of contributing to the projects that are already semi-mature and need further assistance in development. Because of this "so-called-diversity" we now have half-dozen sound servers out of which 90% blow chunks, while the other 10% have a great potential but are incomplete.
    • MAS is not a tool (Score:3, Insightful)

      by g4dget ( 579145 )
      X11 is not a window system, it's a network protocol. That's its strength. XFree86 is a reference implementation.

      Likewise, we don't need another network audio codebase, we need a good network audio protocol. It looks like MAS provides that. As a bonus, you also get a reference implementation.

  • I can listen to MP3's on my LTSP terminal!
  • I didn't know 1 letter .orgs were allowed.

    [calum@gatekeeper calum]$ whois b.org
    [whois.crsnic.net]

    Whois Server Version 1.3

    Domain names in the .com and .net domains can now be registered
    with many different competing registrars. Go to http://www.internic.net
    for detailed information.

    No match for "B.ORG".

    >>> Last update of whois database: Mon, 3 Feb 2003 05:31:18 EST <<<

    The Registry database contains ONLY .COM, .NET, .EDU domains and
    Registrars.

    I want it!
  • by Anonymous Coward on Monday February 03, 2003 @08:14PM (#5219376)
    I got excited when I read the word "synchronized"
    thinking this might be a mixer with SMPTE timecode capabilities. One of the most important distinctions between "pro" A/V and "consumer" A/V is whether the tracks have a standard sync encoding. Without that, the best you can hope for is "close", and that is not acceptable for broadcast or production.

    This requirement is serious enough that pro gear has an input for a real hardware clock.

    Sync capabilities and clock controlled sampling are a few of the keys to us having pro audio production on inexpensive hardware. Unfortunately, the barriers to entry remain outrageously high.

    For most PC users, the sound card is strictly an output device. few will spend more than $100.00 on it, and even fewer will have audio tracks for which the bitrate or noise floor of these cards is a limiting factor. We tend to regard the sound card as a device for playing back audio that is at most, 44.1Khz, and at the deepest, 16 bit.

    For the rest, the sound card is an input device. As such, it theoretically could be as good an input device as that found on a $100,000 audio workstation, and there isn't really a good reason why we CAN'T make the poor-man's DAW if we use one of the better sound cards as a starting point.

    A timecoded 24-bit audio track which has not been resampled for the finished output is a minimum for "professional" work, and we *almost* have it on consumer gear! Everything except real timecode.

    I place this problem in the same category as the absense of colorspace management on The Gimp. Those who understand what it is, realize that it makes the difference of whether they can use it professionally; those who do not understand, don't care, and don't realize the magnitude of the problem.
  • by mrmag00 ( 200868 ) on Monday February 03, 2003 @08:29PM (#5219495) Journal
    Slightly offtopic, but I figured I might as well take a shot- Has anyone successfuly piped audio from a Unix machine to a windows machine, across the network? I got it working using esd and a java version of esd, however the sound quality sucked (and java's sound support didn't like my 5.1 sound, I wouldn't mind but it had 0 bass).

    I've looked but can not find a native sound server for windows at all, in any form. Even somthing compiled with cygwin would probably work, but no luck there either.
  • by leon163 ( 647196 ) on Monday February 03, 2003 @08:35PM (#5219540) Homepage
    This major code release is only our first step. We're putting the MAS core out there in order to create a useful open standard. We feel that this code represents a radical departure from prior attempts to manage time-critical data on the desktop and across the network. We see this as a valid and innovative architecture with extensive implications for the management of media of all modes. In particular, one of the important applications of this architecture is to time-critical accessibility tasks which can now be handled in a completely generic fashion.

    We encourage close examination of the code and we will do our best in the near term to bring as much of our insight and intention to the open community. We see this as an opportunity for collective and collaborative innovation.

    From our website:

    MAS will provide a complete mechanism for media support, for all pluri-modal media, for all platforms, for all operating systems, for all window systems.

    MAS supports the desktop and, transparently, the network. In particular, MAS will provide complete support for the X Window System, across the network.

    MAS is an open system: the complete core will remain under the original MIT ("X") license, equally supporting open and proprietary use and development.

    MAS provides mechanisms for structured extension, and will be supported by dedicated testing and certification processes.

    We wish explicitly to thank Sun Microsystems and X.org for their generous support.

    Leon Shiman for the MAS Development Team
  • I can't comment specifically on arts or NAS, but I know for sure that esound is unusable for network audio. It cannot synchronise audio with video and there is no upper bound on latency. Alan Cox has an amusing quote about esound: something similar to "esound is just about good enough to make a boing noise when you click something, but it's otherwise useless".

    I don't think I'd be stretching my luck to say that arts and NAS have similar limitations. I'll be interested to see if MAS is going to solve these problems, or if it's just another half-assed attempt.
  • by Somnus ( 46089 ) on Tuesday February 04, 2003 @01:08AM (#5220755)
    Does anybody know if MAS (or alternatively jack [sf.net]) can handle a driver for 3D audio rendering, not unlike DRI+Mesa in XF86?
  • Then *I* must do it, and so I will!

    Wow, X-MAS is early this year. <grin>

    So, maybe somewhere around X-MAS, Linux will have X-MAS builtin? <heh heh> <snarf>

    So, is it Free as in "free from school/ work with X-MAS", or Free as in "a gift from Santa"? <heh> <yeah yeah> <snarf>

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...