I am putting together this thread to compile everything I have learned to date because I have wasted many many hours searching and searching and struggling and struggling to try to accomplish what many of us have been wanting to do for a LONG time, that is:
USE OUR HTPC AS A REPLACEMENT FOR A RECEIVER!
EDIT (10-25-2009):
NOTE - This thread is interested in discussing SOLUTIONS to the above problem. It is NOT intended as a back-and-forth on the merits of taking on the problem in the first place. The pros and cons of having a computer take on this task is irrelevant as it does nothing to help advance the discussion of HOW to have a computer accomplish it. The reasons we want to take on this challenge are summed up here:
Well people, I am here to tell you that, after my exhaustive search for this holy grail, I have come to the conclusion that it is (at present) NOT COMPLETELY POSSIBLE!
Note: This is referring mostly to a computer running Vista.
Let me be more specific...
WHAT IS NOT POSSIBLE:
WHAT IS POSSIBLE:
The reasons AC3 streams are not passable to the SPDIF input on a computer are many fold:
So there are the reasons I have come up with as to why a computer cannot act as a replacement for a receiver! I guess we are just going to have to settle for the fact that, until sound cards start coming equipped with a hardware decoder that will do a real-time decoding of the SPDIF input and pass that signal directly to a directsound device (which I wouldn't hold my breath on), we will not be able to junk our receivers.
Please post your thoughts on this topic. I will update the top of this thread as more information about this issue comes to light (i.e. if new limitations are discovered or if the aforementioned limitations are resolved). I would hope that (eventually) this post might become a sticky so that people won't search in vain for a solution on how to do this when that solution does not exist.
___
References:
A discussion on the new Media Live Diva which prompted my writing this new thread.
Reference for limitation #4.
Another forum topic relating to this issue.
A patent by Hughes Electronics which provides a lot of information on how AC3 is wrapped into a PCM stream.
The Realtek ALC888 Datasheet.
A good forum topic relating to limitation #3 and the Creative X-fi sound card.
The wikipedia page on Dolby Digital Plus providing useful information relating to the passing of signals through HDMI.
The product manuals for Sharp Aquos. Page 13 specifies that the TOSLINK outputs "PCM Audio".
Another forum thread related to the search for sound cards that will decode AC3 through SPDIF.
AC3Filter release notes page that specifies that decoding of SPDIF-IN signals is planned for the "future".
Another forum thread related to this topic.
Yet another forum thread related to this topic.
...And another...
AC3Filter "WISH LIST"
A GREAT thread topic that shows that capturing raw AC3 streams from an SPDIF Input IS possible...Unfortunately it doesn't really solve our problem though (just shows proof-of-concept).
A reference from desertdome about the X-FI Elite Pro, which may be a solution for people running XP!
Recent ticket item on Creative's Beta forum. Seems that Dolby/DTS decoding is still broken in Vista.
"Offical" ASUS Xonar HDAV 1.3 thread.
___
EDIT (10-25-2009): Possible Solutions
Confirmed:
Creative Sound Blaster X-Fi Elite Pro 70SB055A00000 7.1 Channels 24-bit 192KHz PCI Interface Sound Card (Black/Silver) $279 (Note: Only works in windows XP)
___
Rumored:
Sabrent USB-SND8 8-Channel 3D USB 2.0 External 7.1 Surround Sound Box with Digital Output $25
ASUS Xonar HDAV1.3 Deluxe 7.1 Channels 24-bit 192KHz PCI Express x1 Interface Audio/Video Enhancement Combo Card
$239
If you have any more useful references related to this topic, please let me know and I'll add it to the references section.
USE OUR HTPC AS A REPLACEMENT FOR A RECEIVER!
EDIT (10-25-2009):
NOTE - This thread is interested in discussing SOLUTIONS to the above problem. It is NOT intended as a back-and-forth on the merits of taking on the problem in the first place. The pros and cons of having a computer take on this task is irrelevant as it does nothing to help advance the discussion of HOW to have a computer accomplish it. The reasons we want to take on this challenge are summed up here:
- Because we don't want another piece of hardware sitting in our media rack (or ANOTHER remote).
- Because we don't want to spend the extra money on a receiver.
- Because a computer SHOULD be able to handle it.
Well people, I am here to tell you that, after my exhaustive search for this holy grail, I have come to the conclusion that it is (at present) NOT COMPLETELY POSSIBLE!
Note: This is referring mostly to a computer running Vista.
Let me be more specific...
WHAT IS NOT POSSIBLE:
- Source outputting an AC3 stream ---> SPDIF input on your computer ---> 5.1 speakers connected to your computer.
- Source outputting an AC3 stream ---> SPDIF input on your computer ---> AC3 Software Decoder ---> 5.1 speakers connected to your computer.
WHAT IS POSSIBLE:
- Source outputting a 2 channel PCM stream ---> SPDIF input on your computer ---> L & R speakers connected to your computer.
- Source outputting a 2 channel PCM stream ---> SPDIF input on your computer ---> Audio signal remixer ---> Audio 5.1 speakers connected to your computer. NOTE: This solution will result in the audio being ~1 second behind the video .
- EDIT (10-22-2009):
Source outputting a 2 channel PCM stream ---> SPDIF input to your computer ---> Media Player Classic (using "Open Device") ---> Audio 5.1 speakers connected to your computer. NOTE: This solution does NOT cause a noticeable audio delay! Although you may need to OCCASIONALLY restart MPC if the audio starts to lag. However, this does not occur frequently (at least on my Media Live Diva HTPC with an AMD Phenom Triple Core 2.4 and 4 GB DDR2 RAM).
The reasons AC3 streams are not passable to the SPDIF input on a computer are many fold:
- Almost NO sound cards exist (except maybe the ones listed at the bottom of this post or possibly the legacy Creative cards that support the KX project drivers) that will decode an AC3 stream passed over SPDIF.
- Realtek has NEVER supported (and I doubt will ever support) passing an AC3 stream from SPDIF input to a directshow decoder (such as AC3Filter). This is the case even though the Realtek chipset is able to recognize that the signal it is receiving IS, in fact, an AC3 signal.
You can verify this on your own by simply plugging a device that is outputting Dolby Digital directly into the SPDIF input and goto the Realtek HD Audio Manager ---> Digital Input tab ---> Digital Audio Input tab. You will see under Sample Rate: "AC3 48Khz". - Creative's X-Fi (which has a hardware dolby digital decoder onboard) doesn't support decoding an SPDIF input and passing it to the directsound to be output. They only use the hardware decoder to decode an AC3 stream from a file (or DVD). It has been reported that the X-Fi Elite Pro had the ability to decode AC3 streams from the SPDIF-IN, but this feature seems to have stopped working as of Vista.
- The Asus Xonar HDAV 1.3 was also rumored to be a possible solution, but it looks like this card ALSO does not support decoding AC3 streams through SPDIF input (see the "official" thread for this sound card located in the references section).
- Realtek has NEVER supported (and I doubt will ever support) passing an AC3 stream from SPDIF input to a directshow decoder (such as AC3Filter). This is the case even though the Realtek chipset is able to recognize that the signal it is receiving IS, in fact, an AC3 signal.
- Even though chipsets, like Realtek, can recognize the type of stream they are receiving, they will not pass the signal as AC3 to directshow filters. Instead, it just defines the signal as a 2 channel PCM signal.
You can verify this on your own by creating the following graph in graph studio and then checking the properties of both the capture device (under the capture tab) and the AC3 filter (under the input tab).
You will see 2 things of importance in both of the aforementioned properties: a field called "MediaSubtype" that says "MEDIASUBTYPE_PCM" and a field called "nChannels" with the value set to 2. This tells you that the capture device is telling directshow that the signal it is receiving is 2 channel PCM (event though it KNOWS that the signal is actually AC3). Try any AC3 decoding filter you want, you will get the same conclusion when you play the graph:
No audio will come out of your speakers (or if it does, it will just be a bunch of popping noises).
EDIT (10-25-2009):
The issue here has to do with the directshow messaging flags that are set by the audio chipset specifying the input signal type. In the case of the Realtek chipset, while it can recognize the type of signal being input via SPDIF, the chip has been designed to "block" that signal from being accessible by software decoders by setting the directshow messaging flag to indicate that the signal is just a 2 channel PCM steam (instead of an AC3 stream wrapped in a 2 channel PCM stream). As a result, for most of these sound cards, the only option you are given is to simply pass-through the AC3 signals to the SPDIF-Out. The signal is still technically accessible to your computer (as demonstrated by the popping noises that come out of your speaker), but since software decoders use the directshow messaging flag in order to determine HOW to decode the signal, the result is that software like ffdshow ends up decoding the signal incorrectly because it thinks it is a standard 2 channel PCM stream instead of AC3.
If you were to design your own software solution that just ASSUMED the SPDIF-In signal was AC3, then you might be able to get something to work. However, then you would have the problem that ALL signals sent to the SPDIF-In would HAVE to be AC3 (and more specifically, would HAVE to be either DD or DTS, but not both).
___ - The problem, I think, is mostly legal. The RIAA and MPAA don't want you to be able to decode DD/DTS (or better) signals from an input stream on a computer because then it would allow you to make PERFECT digital copies of their media without having to "break the law" (by bypassing their encryption). My guess is that the music and movie industries are using the DMCA to threaten the hardware manufacturers and none of the hardware manufacturers want to risk being sued. EDIT (10-27-2009): In fact, in another thread, avmjt posted an email from tech support at HT OMEGA that confirms exactly this! ___
- Even if we do figure out a way to write our own filter that will ignore directshow messages being sent from the capture card and just decode whatever stream is coming from the SPDIF-IN as if it were AC3, we are still going to have to deal with the fact that it is physically impossible to real-time decode an AC3 stream using software without incurring a noticeable delay. The reason software decoders are able to keep the audio synced with the video on a DVD is that the decoder is decoding the audio several bits ahead of the video to mitigate the inherent latency that comes with software decoding. Obviously decoding ahead of time isn't possible with an SPDIF input stream. You would have to delay the video either from the source or on your TV to correct the lag (which I don't think is possible on any TVs I know of and probably not possible on MOST source devices either).
EDIT (10-25-2009):
Although there is always the issue of lag with software decoding, computers these days could probably still software decode fast enough for the sound to sync basically correctly (although a slight lag will inevitably still exist). Recall that Media Player Classic is actually able to recode a 2 channel PCM stream into 5 channels without a noticeable delay in the sound. Decoding an AC3 stream is really no more time/processor intensive then recoding a 2 channel PCM stream, so it is feasible that a software decoder (like ffdshow) could handle it in "real enough" time.
___ - EDIT (10-25-2009): EVERY TV I have looked into that is equipped with an SPDIF out down converts AC3 streams coming in from HDMI to 2 channel PCM before the signal is passed out the SPDIF. This doesn't really directly relate to the issue, however it would be the easiest method to handle switching between multiple devices that are sending AC3 as well as extracting the stream from an HDMI signal. Unfortunately, TVs down convert the signal (to be played on their built in speakers regardless of whether or not you are using them) and do not provide an option to simply pass the audio signal from HDMI to SPDIF. I think the primary issue here is that HDMI allows for the transfer of the new audio formats (TrueHD, DTS-HD, etc.) while SPDIF cannot transport those signals. However, when the HDMI is carrying an AC3 signal (as most of them do these days) there is no reason why a TV couldn't have some sort of "check" that would see if the signal can be passed to SPDIF. According to dolby, DD+ is a derivative of AC3 DD (I am going to assume that TrueHD is as well...but don't quote me on that) and one can VERY easy to strip the AC3 DD stream from a DD+ signal. I have no idea why TV companies would want to waste precious processing power on down mixing audio streams to 2 channel PCM if they don't have to.
So there are the reasons I have come up with as to why a computer cannot act as a replacement for a receiver! I guess we are just going to have to settle for the fact that, until sound cards start coming equipped with a hardware decoder that will do a real-time decoding of the SPDIF input and pass that signal directly to a directsound device (which I wouldn't hold my breath on), we will not be able to junk our receivers.
Please post your thoughts on this topic. I will update the top of this thread as more information about this issue comes to light (i.e. if new limitations are discovered or if the aforementioned limitations are resolved). I would hope that (eventually) this post might become a sticky so that people won't search in vain for a solution on how to do this when that solution does not exist.
___
References:
A discussion on the new Media Live Diva which prompted my writing this new thread.
Reference for limitation #4.
Another forum topic relating to this issue.
A patent by Hughes Electronics which provides a lot of information on how AC3 is wrapped into a PCM stream.
The Realtek ALC888 Datasheet.
A good forum topic relating to limitation #3 and the Creative X-fi sound card.
The wikipedia page on Dolby Digital Plus providing useful information relating to the passing of signals through HDMI.
The product manuals for Sharp Aquos. Page 13 specifies that the TOSLINK outputs "PCM Audio".
Another forum thread related to the search for sound cards that will decode AC3 through SPDIF.
AC3Filter release notes page that specifies that decoding of SPDIF-IN signals is planned for the "future".
Another forum thread related to this topic.
Yet another forum thread related to this topic.
...And another...
AC3Filter "WISH LIST"
A GREAT thread topic that shows that capturing raw AC3 streams from an SPDIF Input IS possible...Unfortunately it doesn't really solve our problem though (just shows proof-of-concept).
A reference from desertdome about the X-FI Elite Pro, which may be a solution for people running XP!
Recent ticket item on Creative's Beta forum. Seems that Dolby/DTS decoding is still broken in Vista.
"Offical" ASUS Xonar HDAV 1.3 thread.
___
EDIT (10-25-2009): Possible Solutions
Confirmed:
Creative Sound Blaster X-Fi Elite Pro 70SB055A00000 7.1 Channels 24-bit 192KHz PCI Interface Sound Card (Black/Silver) $279 (Note: Only works in windows XP)
___
Rumored:
Sabrent USB-SND8 8-Channel 3D USB 2.0 External 7.1 Surround Sound Box with Digital Output $25
ASUS Xonar HDAV1.3 Deluxe 7.1 Channels 24-bit 192KHz PCI Express x1 Interface Audio/Video Enhancement Combo Card
If you have any more useful references related to this topic, please let me know and I'll add it to the references section.




















.

.