Slashdot Mirror


Build a Multi-Output MP3 Server?

z80 asks: "I'm rebuilding my house and I am thinking about fitting speakers in every room of the house and pulling some massive amount of cables in the walls. I also want to control and send the output to each set of speakers from the same source, and was thinking that a PC, with 4-6 soundcards, would do the trick, and there are of course a couple of questions I have. What kind of hardware would be required to be able to stream up to six different MP3's through six soundcards at the same time ? Can it even be done? What kind of software can be used to do it? Which OS? How can it be remotely controlled? With respect to the last question, I'm thinking about mounting a couple of flat displays around the house connected to old PC's that run some sort of connection (VNC maybe) to the mp3 server." This is a topic Ask Slashdot tackled three years ago. Now, with applications like Ardour showing off the power of Open Source frameworks like JACK, it seems like building such a machine might not be as hard as it once was. For those of you who have managed to build something like this, what did you do and what hurdles did you have to navigate before things were working? How would you set up a machine to run independent audio to 4 or more rooms?

22 of 394 comments (clear)

  1. go wireless by rammadon · · Score: 2, Insightful

    you could network tablet PC's to it and use wireless speakers, that would work

  2. But... by orangesquid · · Score: 0, Insightful

    Why buy six soundcards when you could buy one soundcard, six transistors, and a handful of wires to connect to the parallel port? Synchronizing six sound cards would be a nightmare, but turning on and off different outputs for one sound source is rather easy.

    --
    --TheOrangeSquid Is it any wonder things seem so awry? We swim in a sea of confusion and don't have to think to survive
    1. Re:But... by MoTec · · Score: 2, Insightful

      I know people don't read the articles anymore before posting, but please at least read the post.

      It clearly says that he wants different streams, not the same stream lots of places.

  3. Remotes by Ruie · · Score: 3, Insightful

    You could use ATI Remote Wonders (or, perhaps, a similar kind of X10 remote).

    These are RF remotes and 16 of them can be configured to use different channels. They use USB dongle for reception - same dongle can serve multiple remotes if needed (just don't transmit simultaneously).

    Linux driver can be found at GATOS website

  4. ... just network by Artful+Codger · · Score: 2, Insightful

    If you're going the "old PCs" route for control, forget about distributing the audio. Too much work. Just run a network cable to every room (or go wireless) and use old PC's as clients/players of shared files stored on a central server.

    This would work TODAY - you wouldn't have to do any customization of software or hardware.

    AudioPCI cards are cheap but great sound for the bucks.

    In my mind the only downfall is the noise from a PC unless you go to lengths to silence them, eg put into closets.

    --

    ... plans that either come to naught, or half a page of scribbled lines...
  5. Good Idea "on paper" by Anonymous Coward · · Score: 5, Insightful

    While the idea of using several soundcards and OSS is quite sound, this is a problem which has already been solved by professional audio installers several times over, with equipment custom-tailored for this exact purpose. IMHO, you should get a professional consultation from a home theatre/automation business. The difficulty is not the soundcards or even the software, it's integrating functional control panels (with displays) into each room that will prove to be the most difficult. While you certainly *can* do this with off-the-shelf parts, the pros will always do this sort of thing better.

    Good luck!

    1. Re:Good Idea "on paper" by cscx · · Score: 5, Insightful

      You don't understand... by submitting this to Ask Slashdot, he's implicitly saying "I want to spend a total of $75 on this project, all things inclusive."

  6. Audio quality? by blixel · · Score: 2, Insightful

    How much distance can you run with your audio cables before you start to get significant loss of quality?

    1. Re:Audio quality? by drinkypoo · · Score: 2, Insightful

      That depends. You could use digital audio and then with one pair of wires you could run the signal, well, all over the damn house if you amplified it. In fact, I'm betting if you amplified it, you could also split one S/PDIF coaxial output out to a number of different speaker sets.

      The question is, how cheap can you get either digital speakers, or a little D/A converter that takes S/PDIF in and spits out stereo line level?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  7. Re:Why multiple soundcards? by Golias · · Score: 4, Insightful
    Since you need an amp in each room, and a controller of some kind in each room, and a set of speakers in each room, it seems to me that a far simpler solution would be to put a cheap computer in each room. (Old used iMacs can run OS X or PPCLinux, are fanless, and consume very little power in sleep mode... or go with one of those small-case PC's if you are one of those people who looks down their nose at Macs... whichever. The point is, get a fanless system with just enough CPU muscle to play audio files yet low-power enough that you don't mind leaving them running.) Then just store the entire MP3 library on an ordinary file server in the closet, and mount the library's drive on all the networked systems.

    Playing the files on a local machine off a networked drive would probably give you better sound than snaking analog audio cable across the entire length of your house, too.

    --

    Information wants to be anthropomorphized.

  8. Re:AVScience Forum by moosesocks · · Score: 5, Insightful

    There are several options for what you're looking to do these days. My brother is doing a similar thing, but he's using 802.11b for control (through Girder) and PocketPCs for remotes!

    Ah yes, if there's one thing the nice folks on the AV Science Forum don't understand well, it's budget constraints. How many people can afford to go out and buy Pocket PCs to replace their remote controls?

    --
    -- If you try to fail and succeed, which have you done? - Uli's moose
  9. Re:I contacted a company in the past by leeet · · Score: 2, Insightful

    Well there are some hardware solutions available at expensive/hi-end stores and I think that a PC can perform this job very easily.

    If you live in an appartment, it's probably hard to justify the cost/reason, but I'm in a house and I would also like to wire each room. You know, play kids songs downstairs, rock in the garage while the wife listens to internet radio. Why not? Why can't we have the technology to do it. I don't think decoding 3-4 MP3 streams would be so hard on CPU usage anymore.

    Ultimately, it would be great to do the same with a graphic card (kinda like an Xserver, but not over IP). It would be great to send a video stream to "video card #2" and a fish tank picture to "video card #4" displayed on that flat screen on your wall :) Oh don't forget video conference over IP in the kitchen to call your mom... That would truly be multi-media, not uni-media like what we have today...

    We have kickass CPUs, why can't we have kickass expandable sound and multi-pipe graphic without having to buy an SGI machine?

    --
    -- Leeeter than leet
  10. *shouldn't* be too hard by netsharc · · Score: 3, Insightful

    Well, if you're going to go Linux, ALSA supports multiple sound cards pretty nicely, just tell XMMS (or whatever media player it will be) to use the different /dev/ devices (use devfsd). My first though was an implementation in Windows, Winamp also offers you the choice which soundcard you want to use, although one has to wonder about the IRQ hell of 6 of them in the same computer!

    VNC wouldn't be such a good idea, because AFAIK it grabs the pointer so you'll probably end up with a situation where 2 or more people in different rooms wrestle for control of the pointer. A thin X display that connects to the server would work ok, although that would mean 6 computers in 6 different rooms, and when you already have that, it'd probably be wiser to have a "1 MP3-fileserver and 6 clients that draw MP3s across the ethernet" setup. Or you can just use SSH (or even telnet) to connect to the server and let them use mp3blaster, a text-based interface. Yeah, ugly, you can put it to the bottom of your list. But if the 6 clients need 6 "real" computers, it'll be so much waste - with SSH you can connect from a Palm Pilot, but then you'll need 802.11b for significant distances, and you can only get that from high end Palms..

    But oh, depending on how long the VGA cable must be, you can always have 2 computers, each with 1xAGP, 2xPCI graphic cards and 3xPCI sound cards, and one of them as an NFS server for the other.. or even use the on-board sound. That should be easier to set-up, IMO.

    Anyway, have a lot of fun, IMO you should document the process with lots of pics and put it up on a server, you can then wear the proud tag of "I've been slashdotted".

    --
    What time is it/will be over there? Check with my iPhone app!
    1. Re:*shouldn't* be too hard by serial+frame · · Score: 2, Insightful

      The Windows VNC server does indeed capture the pointer; however, when running a VNC server on a *n?x machine, Xvnc acts as another X server, separate from any other instance of Xvnc. So VNC would work dandy for this setup, especially over 802.11b.

      Cheap laptops are far cheaper than high-end Palms capable of 802.11b, and you could buy two of those for the price of aforementioned Palm, and have them in each room or something like that.

      Just a suggestion to be taken for a grain of salt.

      --

      -
      And the Angel said unto me, "These are the cries of the carrots! The cries of the carrots!"
  11. Re:this is retarded by Poeir · · Score: 4, Insightful

    One six minute Ogg file at 256 kB/sec takes up about 10MB of space, which translates to 10 hours of music per gigabyte. At about $1/gig, a 100 GB hard drive will cost around $100, and will hold 1000 hours of music, without having to rotate anything. Figure an average of 4 minutes a file, and you're looking at 15,000 songs, compared to 19 on a CD. A 50-pack of CDs costs $17, for 34 cents, and you'll need about 789 70-minute CDs, for a total cost of $268.26.

    Since the CD option costs more per-song and is more inconvenient (since you have to change the CDs every 70 minutes), I'd judge it inferior.

    --
    Sigs are like bumper stickers.
  12. be smart.. by Suppafly · · Score: 2, Insightful

    put conduit in the walls instead of just running wires, that way later you can change the wires for the next technology that comes along.

  13. Re:ASCII stupid question, get stupid ANSI... by pVoid · · Score: 1, Insightful
    Sorry mate. You are just full of shit...

    I know how things work in computers, and I won't argue about anything on the *nix side of things. But I'll tell you this: the *only* reason my winamp ever skips, is because my PCI bus is busy doing things (generally speaking flushing hard disks, or burning CD-Rs).

    If you really are doing stupidly high priority high CPU usage stuff, then set your winamp to 'real time priority' via the task manager. What this does in Win NT/XP/2k is that the process will keep it's time slice until it volountarily relinquishes it (via a call to Sleep(), WaitXxxObjects(), or by returning from the message queue thread).

    The *only* reason windows would be somewhat not cool here, is if you have many hard disks, and there are frequent writes (hence flushes) to them. But this would be the same under nix systems which aren't using lazy file systems. Again though, this only and entirely the PCI bus bottleneck... hardware. Not software.

    You speak nothing but fud and crap, and I call your bluff. You seriously didn't expect people (albeit the gullible chearleading zealot type on /.) to believe that Microsoft didn't properly code for sound output did you?

    I remember once, my TA at university was talking with someone in the front row about "what if I send you my assignment by email but it gets lost"... to which he had answered "look, the 'cp' command is probably the single most used command in the world, I really doubt it's got bugs in it that have been dormant to this day. So when you send me an email on the same system, I'm pretty damn sure it's not going to get lost".

    Windows is a multimedia OS (that's what they've banked most of their strategy on) - sure, maybe they suck doing firewalls, but multimedia? you full of shit...

    I will now proceed to beating the dead horse some more... in private. Good day to you.

  14. Re:Save your money. Give a 486 a job... by shfted! · · Score: 2, Insightful

    Note that you will need a least a Pentium 60 for real-time mp3 decoding at full quality (a 120 mhz 486 *might* be able to. a 100 mhz 486 can't). Ogg requires something like a Pentium 166, maybe more.

    --
    He who laughs last is stuck in a time dilation bubble.
  15. Re:Why multiple soundcards? by Anonymous Coward · · Score: 1, Insightful

    And then turn off the gas line in the winter, because all those Pentium machines running 24/7 will heat your house for you.

  16. Re:Why multiple soundcards? by timmyf2371 · · Score: 5, Insightful
    Very true.

    I have a home audio system which is customised to my own needs. I started off at http://en.tldp.org/HOWTO/MP3-Box-HOWTO.html and built diskless systems such as this for all the rooms in my house, and can use all independently of each other.

    They all run off a standard computer which I turned into a server when it became out of date (500mhz K6-2, 384MB).

    It's very cheap to build the diskless systems and the only extra expense you'll have is the CAT5 cabling over the house (if you're like me though, your house is already CAT5 capable).

    Tim

    --

    Backup not found: (A)bort (R)etry (P)anic
  17. General Reply - Free PIII-600s, Hacking SoundBlast by BigBlockMopar · · Score: 2, Insightful

    You can replace the LM741 with any number of audibly superior amplifiers. Here are some to try (in Order of quality). AD711, TLE2071, 5534 (must put a 20 Pf capacitor beween pins 1 and 8), TLO72, LF351, TLO81 (available at Radio Shack). Any of these will blow away the LM741 sound wise.

    Precisely. I think Fairchild only designed the 741 as an instrumentation amplifier, so I don't know why they even ended up in audio. That being said...

    Lots of audio equipment through the years has used the LM741, which is very noisy (hiss in the audio). I've even seen a 1970s Allan and Heath professional 64 channel mixing console. I pulled the line card out of every single channel and plopped in an LF351, all of a sudden the board was useful for more than just PA at stadiums.

    Old Creative Labs SoundBlaster 16s (long 16-bit ISA cards with hardware settings jumpers) had LM741 on the output stages, later versions used a dual LM741 (an MC1458, if memory serves). These ICs are still made mostly only for compatibility; there are lots and lots of pin-for-pin low noise equivalents that you simply put in place of the 741/1458. The old SB16s also had good spacing between the digital and analog sections (build a Faraday cage, soldered to ground, around the analog stages!), used conventional components (none of this SMT crap) and had the same excellent D/A converters as some CD players. In later SoundBlasters, much of the logic and the D/A converters have been folded into the same custom chip to cut costs. But you want to keep the audio as far from the computer's bus as possible; the other side of an IC is not far enough away.

    Computers: No. Can't even scoop one for myself. Each computer is accompanied through its life cycle by a pile of papers which would make the IRS jealous. It's horrible, it's tragic, I agree.

    486 not playing MP3s?: When Napster first came out, all I had was a 486DX2-50. (I didn't do any multimedia stuff, so I didn't need power.) It played MP3s fine, and so has every other properly configured 486DX I've tried - WinAMP or Windows Media Player or mpg123 - under Windows 95, NT4, Red Hat 5.2. Sure, the CPU is 83% busy to play one song, but it works, without skipping or kicking down to half or mono modes. Turn off all the crap in your Windows startup and system tray.

    DMA is your friend. DON'T try to stream an MP3 to a 486 using an NE-2000 network card. Get something a little more refined for the NIC.

    --
    Fire and Meat. Yummy.
  18. Re:Save your money. Give a 486 a job... by DNS-and-BIND · · Score: 2, Insightful

    You might save money initially on the price of a bunch of old PCs, but as soon as you turn them all on you will notice a new monthly cost in the form of expensive electricity bills.

    --
    Shutting down free speech with violence isn't fighting fascism. It IS fascism!