Looking for a "2.1 DAC", preferably USB, maybe PCI(e), Linux support

0 Members and 1 Guest are viewing this topic. Read 6597 times.

matt_garman

I'm not sure that what I'm looking for actually exists, so I'm calling it a "2.1 DAC".  That is, a device that can take a digital audio signal (44.1/16 i.e. CD audio), and have three outputs: two for L/R stereo, and one for a sub.  Linux support is a must.

Here's the motivation: I just moved into a house that has in-ceiling speakers, and coax run to every room, all terminated in a basement closet.  The speakers are powered by a Pioneer VSX-1123 AVR which lives in the basement closet.  A subwoofer signal is sent from the AVR to a subwoofer on the main floor via coax.

I have all my music in FLAC format, ripped from my CD collection, and hosted on a Linux server (also in the basement closet).  Using Pioneer's "iControlAV2013" app, I can control the receiver and have my whole music collection available.  It's actually pretty slick.

What I would like to do is improve on this a bit... I'm not a fan of the iControlAV2013 software personally.  What I'd prefer is to basically move all the "preamp" functions to Linux server.  Since all my music is two channel stereo, I think all the fancy AVR features are overkill.  Not to mention, being limited to Pioneer's iControlAV application.  (On Linux, I use "mpd", which has tons of interface options, from rudimentary commandline to full-featured GUIs, and everything in-between; a natural side-effect of an open platform.)

So what I want is for the speakers to come into a speaker selector (I have a Niles HPS-6).  The speaker selector can be powered by a basic two-channel power amp (I have an unused Class D Audio SDS-470).  Now I need something to go between the server and the power amp, and a way to send a signal to the sub via coax.

This could be done easily with a Linux-supported PCI/PCIe sound card, or even a cheap USB sound card.  And that's basically "plan B".  But I was hoping for something with a bit more audiophile-ish tendencies (if such a thing exists)... but I also want to

If you're following what I'm trying to do, if I give up the requirement to have a signal sent to the subwoofer, then pretty much any USB DAC would work... but the in-ceiling speakers really don't have much bass.

Something that comes close is the Emotiva XDA-2 (or XDA-1), as it has dual "live" stereo outputs (two XLR and two RCA).  If there was a way to "merge" one of the L/R output pairs into a signal for a single wire (i.e. coax), it would work.  But that's klunky to have yet another device, and I don't need the volume control features of the XDA.  But I think it serves as an illustration of what I'm looking for.

Edit: Let me add that I'm not concerned with bass management in any way... I'm happy to send a full-range signal to both the in-ceiling speakers and the sub.  The sub's crossover point and volume can be controlled manually on the sub itself.

Edit2: After thinking about this some more, a quick and dirty way to do what I want is with any USB DAC that has dual stereo outputs.  E.g., the XDA-1 in my example above, or a Cambridge Audio DACMagic (which I'm currently using for my computer desktop system).  Instead of having a "stereo to mono" adapter, I could simply just run the bass off of one channel (L or R).  The problem, of course, is if I pick the "R" channel for the sub, and a CD happens to have the bass mixed to the "L" channel, well, I get no bass.  Call this the "50% solution", as I should get bass half the time.  Probably better, as I'm betting bass is probably mixed equally to both channels more often than not.
« Last Edit: 31 Jan 2014, 07:51 pm by matt_garman »

JohnR

I must be missing something important, but why don't you use a control app for the Linux server, and just use the AVR for amplification and sub crossover?

matt_garman

I must be missing something important, but why don't you use a control app for the Linux server, and just use the AVR for amplification and sub crossover?

You're not missing anything, but I'm missing something: the obvious.  :)  That is a possibility, and it didn't occur to me until now.

The only problem with that is that I actually have wiring for still more speakers, but I'm out of speaker outputs on the AVR.  The other slight problem is that the AVR doesn't appear to have a USB input, only coax or optical, so I'd have to buy something like a USB to optical converter (not a deal breaker though).

I did think of another possibility: I also have an Ethernet run between where the sub lives and the wiring closet.  If I used a DAC with XLR outputs (like the XDA-1 or DACMagic), I can get an XLR to RJ45 adapter on one end, and an RJ45 to RCA on the other.  XLR is designed for long runs like that, so signal degradation shouldn't be a problem.

A final consideration: the AVR uses a fair amount of electricity... a decent Class D amp would use less power and be smaller, and also put off less heat.

Maybe I'm just looking for an excuse to buy more toys.  :)

JohnR

The only problem with that is that I actually have wiring for still more speakers, but I'm out of speaker outputs on the AVR.  The other slight problem is that the AVR doesn't appear to have a USB input, only coax or optical, so I'd have to buy something like a USB to optical converter (not a deal breaker though).

I had the impression that the speakers are already connected to the AVR, and that you already have a way to get music from the Linux srver to the AVR (over the network?).

If you just need to run a 2.1 system from the Linux server, then can't you use a stereo DAC, a Y-splitter, the SDS amp, and a subwoofer with left and right inputs? Or, you could use a miniDSP to do a 2.1 crossover. Sorry, just not clear on what really you're trying to do :)

matt_garman

I had the impression that the speakers are already connected to the AVR, and that you already have a way to get music from the Linux srver to the AVR (over the network?).

Yeah, sorry, despite the length of my initial post, it still wasn't clear.

You are right, the current state is that the speakers are connected to the AVR.  However, there exists more unused speaker wire.  So I can easily add more speakers to other parts of the house, because the wiring is already there.  But if I do install those additional speakers, then the AVR is no longer sufficient, because I'm out of speaker outputs.  This isn't a problem right now, but will be at some point in the future.

Also, the current state is that I get music from the Linux server to the AVR.  The method for this is through the network, using a protocol called UPnP (DLNA).  The limitation of this approach is that, AFAIK, the only way to control the music and volume is through the AVR's "iControlAV2013" app.  In this case, the Linux server's role is minimal: it simply supplies the raw music data to the AVR.  All control (song selection, volume, etc) is entirely on the AVR.

Another approach I could use, but haven't yet tried, is to send the digital audio signal from the Linux server directly to the AVR.  In other words, I would treat the server like a "CD" input to the AVR.  This removes the network and DLNA/UPnP stuff from the picture.  It puts most control on the server: playlist creation, volume control (the Linux server is now basically a pre-amp).  The AVR then basically becomes a power amp that happens to have multiple speaker outputs, including a sub-woofer output.  To be complete, the line between amp and pre-amp is a little blurred, as in this setup I can control volume either with the Linux server or the AVR.

Another way to look at it: my AVR has many input source selections: the traditional HDMI, RCA, spdif optical, spdif coax, etc.  But one of those inputs is "DLNA Server".  This is what I'm using now.  In the alternate approach I described above, I would change the AVR input to the spdif optical.

Either way, though, at some point, the AVR has to go, because in the future I will have more speakers than the AVR has outputs.  (OK, technically I could use the AVR and the speaker selector, but that's getting to be messy.)

If you just need to run a 2.1 system from the Linux server, then can't you use a stereo DAC, a Y-splitter, the SDS amp, and a subwoofer with left and right inputs? Or, you could use a miniDSP to do a 2.1 crossover. Sorry, just not clear on what really you're trying to do :)

Can you elaborate on the miniDSP suggestion?

No need to apologize, I appreciate the help and feedback!  Plus, I'll take all the responsibility for not being clear or making this more confusing than it needs to be.  :)

Let me take another stab at this.  Forget everything I've written so far.  We'll start with the basics: I have several in-ceiling speaker pairs on the main floor of my house.  The wiring for these speakers terminates in a basement closet.  Also in the basement closet, I have a Linux server that houses all my music.  I need some way to get that music off the server, amplified, and distributed to all those speakers.  Forget about the sub for now.

With this simplified setup I've described, it's trivial to do what I want with something like this:
Linux server -> usb -> DAC -> power amp -> speaker selector -> speakers

Now, add in the sub.  How do I get a signal to it?  I have a single coax run between the server area and the sub.  So with this, I can only send a mono signal, not a stereo signal.  Most (all?) DACs have only stereo outputs.  I can't send the DAC's stereo signal over the coax.  So, a few different approaches:
  • I could send just one channel (L or R) to the sub.  This is the quick and dirty approach.
  • I could add another component, a stereo-to-mono device.  I haven't really looked for such a device, so not sure what's possible here.
  • I could pull more wire so I have two coax runs.  I'm pretty sure the existing run is stapled in place, so I think this is not doable without considerably more effort than I'm willing to put forth.
  • In addition to the coax run between the closet and sub area, there is also an Ethernet run.  I should be able to send a stereo signal over this.  Requires special cables or simple DIY.
  • Find a "2.1" DAC.  Or, more specifically, a DAC that has both a stereo output and a mono output.

JohnR

    Also, the current state is that I get music from the Linux server to the AVR.  The method for this is through the network, using a protocol called UPnP (DLNA).  The limitation of this approach is that, AFAIK, the only way to control the music and volume is through the AVR's "iControlAV2013" app.

    Have you considered changing the arrangement so that the AVR is a DLNA renderer and the Linux server acts as the controller? Or possibly, an app running on your phone/tablet etc is the controller...

    Quote
    Can you elaborate on the miniDSP suggestion?

    This article may help: http://www.hifizine.com/2010/09/subwoofer-equalization-and-integration-with-the-minidsp-2x4/

    Quote
    Now, add in the sub.  How do I get a signal to it?  I have a single coax run between the server area and the sub.

    I'm sure there's some inexpensive gizmo you can get that will mix two audio signals together. I'll look around if it would help...

    Quote
    • Find a "2.1" DAC.  Or, more specifically, a DAC that has both a stereo output and a mono output.

    It seems like a great idea and you'd think there'd be a dozen to choose from, but I can't find any...

    dublin78

    • Jr. Member
    • Posts: 25
    Check out this http://hifimediy.com/index.php?route=product/product&path=59&product_id=64

    Save money on amps too.

    If you are desperate for USB, then buy a converter.

    WC


    I'm sure there's some inexpensive gizmo you can get that will mix two audio signals together. I'll look around if it would help...


    A Y-splitter will sum the two stereo signals into a mono signal for the sub.

    srb

    A Y-splitter will sum the two stereo signals into a mono signal for the sub.

    It depends how the dual preamp or DAC outputs are configured.  On some units, summing one pair of outputs will also sum the other.

    Steve

    krikor

    • Full Member
    • Posts: 660
    • Initiative comes to those who wait.
      • AudioSnoop.com
    It depends how the dual preamp or DAC outputs are configured.  On some units, summing one pair of outputs will also sum the other.

    Steve

    I believe it can also lead to other problems as well. According the Rane's article "Why Not Wye"...

    "Here is the rule: Outputs are low impedance and must only be connected to high impedance inputs -- never, never tie two outputs directly together -- never. If you do, then each output tries to drive the very low impedance of the other, forcing both outputs into current-limit and possible damage. As a minimum, severe signal loss results."


    krikor

    • Full Member
    • Posts: 660
    • Initiative comes to those who wait.
      • AudioSnoop.com
    How about this?

    http://www.bhphotovideo.com/bnh/controller/home?O=&sku=333335&Q=&is=REG&A=details

    Not sure it is entirely appropriate since it is targeted for pro/recording use. You would also need to use a 1/4" connector on your "coax" cable. I looked into this awhile ago and found lots of circuit suggestions via google, but never quite figured out the correct resistor values (and the project I needed it for has not progressed).

    Search for "stereo to mono summing circuit":
    https://www.google.com/search?q=stereo+to+mono+summing+circuit

    Search for "stereo to mono summing circuit wardsweb" for a diy example with a powered sub:
    https://www.google.com/search?q=stereo+to+mono+summing+circuit+wardsweb

    matt_garman

    Thanks for all the replies, everyone, very helpful!

    Some commentary and more ideas...

    http://www.bhphotovideo.com/bnh/controller/home?O=&sku=333335&Q=&is=REG&A=details
    Not sure it is entirely appropriate since it is targeted for pro/recording use. You would also need to use a 1/4" connector on your "coax" cable. I looked into this awhile ago and found lots of circuit suggestions via google, but never quite figured out the correct resistor values (and the project I needed it for has not progressed).

    That might just do it... The price is right anyway.  Couldn't I just use the XLR output and then do an XLR to RCA adapter?  Not ideal, I know, gives up XLR's long-distance benefit, but if I'm going to use the coax, that's my only option anyway.

    The DIY solutions are also on the table, for sure.  I just need to take the time to research them.

    Check out this http://hifimediy.com/index.php?route=product/product&path=59&product_id=64

    That would be nearly perfect, but I'm afraid the wattage is too low.  Maybe not, but it says 65 Watts at 4 Ohm, and I'll always be pushing a 4 Ohm load with the speaker selector.  I generally listen at pretty moderate levels, but I've been conditioned to always have headroom.  :)

    It seems like a great idea and you'd think there'd be a dozen to choose from, but I can't find any...

    I suspect there's little demand for it, but that's just a guess.  In my experience, when you're looking for stuff that includes a "sub out", it's almost always a pre-amp, if not a full-featured AVR.  I'm assuming that most people who want a sub output also want some kind of bass management functionality (a basic crossover, if nothing else).  I'm afraid insisting on doing things my very particular (unusual?) way forces me off the beaten path.

    This article may help: http://www.hifizine.com/2010/09/subwoofer-equalization-and-integration-with-the-minidsp-2x4/

    I'd be surprised if that couldn't do stereo to mono summing.  It's more expensive than the device Krikor linked, but then again, it's programmable.  Another toy for me to geek out with.  :)

    And speaking of geeking out, let's go back to the simplistic approach of only sending one channel to the sub (strictly only L or R).  The only real problem with this is, what if I choose the "L" channel and a lot of music has the lower frequencies mixed to the "R" channel?

    I realized this morning that it should be relatively easy to know in advance how my music is mixed.  It's all in an open, digital format (FLAC).  I am a programmer, and with a little research, I believe I could write a simple analysis program that tells me how my music collection is mixed.  Basically, for every song, I would perform a per-channel frequency analysis, and generate a histogram of frequencies under some threshold, say 150 Hz.  If the histograms are the same (or approximately the same) for both channels, it suggests the bass is already a mono mix (in which case, no need to send both channels to the sub).  What I'd be on the look out for, then, are tracks where all (or most of) the bass is only on one channel.  If I find that's extremely rare, then I say I don't care, and I'll just send one channel.

    Since I already have all the resources I need to do something like this, it's zero cost, therefore cheap, and since I enjoy nerdy projects like this, it's also cheerful:)

    As I wrote this, it occurred to me there's a third solution: move the DSP onto my Linux server.  What I could do here is on-the-fly remixing, such that the bass frequencies are summed and duplicated to both channels.  In this scheme, I of course wouldn't be sending "bit perfect" data to the DAC, but this whole-house speaker system isn't for critical listening anyway (just basic enjoyment).  Writing a remixing program like this is probably beyond my abilities, but with a little digging I bet I could find something that does it for me (or something close enough that I could hack it into what I need).