AVS › AVS Forum › Video Components › Home Theater Computers › Audio Processing in Vista Explained
New Posts  All Forums:Forum Nav:

Audio Processing in Vista Explained - Page 5

post #121 of 971
Quote:
Originally Posted by lymzy View Post

It is because MPEG2 doesn't provide a royalty cap from Microsoft and it doesn't make business sense to provide MPEG2 decoder for every edition of windows XP.



It is because Microsoft doesn't want to be marginalized for the next generation, or bigger picture-consumer media delivery chain. It is also why MS is one of the key founders of AACS and major force behind iHD and VC-1. Also, Vista based MS-DRM would be AACS approved to enable managed copy of HD DVD and thus provide a complete home streaming solution.


Most importantly, to answer both, it's because it has been mentioned as a future feature of WMP many many times over the years. It is the point of the Microsoft spokesman's comments - either MS is enabling this functionality or not - regardless of what other independent firms do.

on another note, brove to ms for taking on high quality audio - sounds like there may be some kibbitzing going on about the details but the capabilities certainly will be welcome
post #122 of 971
Vista (at least home premium and ultimate) DO have DVD capability right out of the box.

Not just mpeg2, but CSS suported DVD playback, works in WMP 11 and MCE.
post #123 of 971
quick question about USB audio

It sounds like the room calibration will work for USB audio.

Does 24b/96khz work over USB too?

How bout pre-encoded material, I suppose it would even be best to decode it, correct it, then pass it over decoded via USB.

I think I've seen some recievers notably JVC that take USB.
post #124 of 971
Yes, any sound card (which those receivers will act as) will play whatever the windows sound processing sends it.
post #125 of 971
do those recievers that act as sound cards do 24b/96k?
post #126 of 971
Quote:
Originally Posted by johnren View Post

Amir

I am looking for a way to programmatically set the sound device for playback in Windows Vista per application (useful for apps that don't have a way to do this directly). In XP, you could set the SoundMapper registry setting Playback key to the name of the device you wanted the program to use as long as you set it before program startup. Once the program started, you could set the Playback key to a different device and have all the other applications loaded after that point to use that newly set device. This helps keep sound secluded for recording audio calls and things of that nature.

The only caveat is that you couldn't use the mmsys.cpl to reset the device otherwise the program would default back to the device you set it back to once the program stopped outputting audio.


Does anyone know if there is a registry key in Vista that will do the same thing as in XP? Or if they are going to be adding the ability to specify the output device for each "session' shown in the new volume control? They let you set the volume per app, I think it would be very beneficial to be able to set the audio device per app and make this doable programmatically.

Any help would be appreciated.

Thank you,

John

Good question John, I'd also appreciate clarification on this. On the builds I've tried the UI exposes options to divert "communication audio" to headphones with everything else to speaker, but I don't know if you can go any more fine grained - Outputting each session to different end-points.

I've pretty much moved to Vista full-time now, my sound-card actually works properly with it. Before, XP seemed to output sound to all end-points simultaneously, headphone jack, speakers etc, but now I seem to be able to choose. It would be great to be able to output music to a pair of headphones with system sounds on the desktop speakers
post #127 of 971
Thread Starter 
Quote:
Originally Posted by scorch123 View Post

Amir,

Joel brings up another point - legacy pro audio hardware support. Many of us who have built htpcs use pro audio sound cards. What is Microsoft doing to allow companies such as RME, Lynx, etc make sure their drivers will be Vista-compatible?

Thanks,

- Steve O.

As long as they don't replace the class library in Vista with their own, they should work just fine with Vista features. To the extend they bypass the system above them, obviously our stuff won't get used. So if you are their customer, be sure to let them know you want full Vista compatibility. That counts a lot more than us asking them .
post #128 of 971
Thread Starter 
Quote:
Originally Posted by jsm88 View Post

Ok, you can't speak for any other software manufacturer but will Windows Media Player, or whatever it's Vista version is called, play back Hidef content from those sources in 32bit Vista?

Yes. For example, you can recorde your over their air HD content using Media Center and play them back as you do today. Ditto for any content you download. Or WMV-HD discs. In other words, there is no step back from XP.

Quote:


That is what most of the world interpreted your man's comments to mean - that windows software itself would not allow the mentioned playback, whether it is official a "part" of Vista or an ancillary, but generally viewed as intergral, product.

I think there was fair amount of confusion to be sure in the original reports. Again, there are no regressions there.

Quote:


Saying that 32 bit vista won't refuse to play back anything is just a little too cute, since, of course 32 bit vista doesn't actually play back anything.

Are you saying I said that? If so, I did not . Per above, you can play HD content today with Vista-32 itself.
post #129 of 971
Amir,

Hello and thank you for leading this thread. Very exciting news about Vista taking on audio as an important feature.

I love SACD (and DVD-A). I am not impressed with the audio quality of current music downloads via an HTPC. Admitedly, I have spent many $$$ on an audio system that gives me the sound quality I am looking for. Thus, software (ie, music) is the only variable. I also love well engineered DVD movies (both for video and sound). I suspect HD-DVD and/or Blu-Ray will ultimately provide excellent video/sound quality. But, for now...as I attempt to build an HTPC and integrate it in to my home theater, I have discovered a few limitations. Therefore, I will continue to use my Denon DVD player for sDVD, SACD and DVD-A. But I do want to use an HTPC for streaming via internet video and audio.

Here's where I am beginning to stumble. If I choose a motherboard that incorporates, for instance, The Realtec ALC882 series 7.1+2 Channel High Definition Audio codecs, or the ALC 885, or ALC888...and I plug analog audio cables from the motherboard (L, R, C, SL, SR + Sub) in to my pre-amp (just as I do now with SACD output from my DVD player)...it looks like Vista will be able to process High Def sound (when available) via the internet and pass it on (with excellent quality) to my pre-amp. True?

Thanks again. Audio quality is equally as important as video quality...in my opinion.

Marcus
post #130 of 971
Quote:
Originally Posted by amirm View Post

Sorry for the late reply. Hang in there if you don't mind a bit longer. I have asked the developers to chase some things down for me.

But for now, this is how it works. As I mentioned, to have high fidelity digital volume control, we change the values in floating point, not integer. That way, we can maintain very high resolution. The conversion to and from floating point is lossless. So we get the same value in and out. But anythime you change resolution (i.e. going form float to integer), you don't want to just truncate the extra bits. You want to do something kind of dithering. And that is what we are doing. What I have asked the team to do is to run through your scenario of 100% volume and see if the dithering ever makes the values different.

My guys are busy getting Vista out, and I am supposed to be on vacation . So it takes a bit of time to investigate things like this.

you should enjoy your vacation, our answers can wait.

When you have time can you explain us if there is any difference between kernel streaming (on XP) and exclusive mode (on Vista) ?
post #131 of 971
Quote:
Originally Posted by Desert Pilot View Post

Here's where I am beginning to stumble. If I choose a motherboard that incorporates, for instance, The Realtec ALC882 series 7.1+2 Channel High Definition Audio codecs, or the ALC 885, or ALC888...and I plug analog audio cables from the motherboard (L, R, C, SL, SR + Sub) in to my pre-amp (just as I do now with SACD output from my DVD player)...it looks like Vista will be able to process High Def sound (when available) via the internet and pass it on (with excellent quality) to my pre-amp. True?

Of course, but you shouldn't expect excellent quality if the hardware is not good.
post #132 of 971
Quote:
Originally Posted by vairulez View Post

you should enjoy your vacation, our answers can wait.

When you have time can you explain us if there is any difference between kernel streaming (on XP) and exclusive mode (on Vista) ?

I'll give you a short answer and then we can expand from there if necessary. When you say "kernel streaming on XP" there can be a few different interpretations. Kernel streaming involves kernel drivers, implementing kernel streaming functionality (IOCTL's) to move audio samples from user mode to the audio hardware. To many people, this is synonymous with kmixer. Since some people didn't like some of the processing that kmixer did, various schemes were invented to allow "direct" passthrough of samples to the hardware buffer/DAC. Steinberg invented ASIO and Microsoft released "DirectKS". Some ASIO drivers are built on top of DirectKS. There are other schemes also but they are all fairly similar. So I'll just describe what DirectKS is.

DirectKS is a method by which an audio hardware device "pin" can be opened exclusively and streamed to. No other entity (user or kernel mode) can open that pin, hence the term "exclusive". WASAPI exclusive mode in Vista is exactly that, except no kernel mode programming is required. When a client opens a pin using AUDCLNT_SHAREMODE_EXCLUSIVE in IAudioClient::Initialize, it opens that pin exclusively and streams directly to it. It is conceptually identical to DirectKS but simpler to program against. Well, simpler in that you can put the samples directly on the hardware, but more complicated in that if any DSP is required (e.g. sample rate conversion, channel fold-down or fill, etc.) the application is responsible for it. This mode was mainly designed for "pro audio" content creation applications but there isn't anything stopping playback applications from using exclusive mode for "bit perfect" rendering. As one person on my team is fond of saying, "A simple matter of programming".

I hope that's clear enough. I'm one of those people who is working to get Vista finished that Amir has been talking about. I need to go back to work now.
post #133 of 971
that's the kind of answers I like. Eho thanks for sharing some of your time and knowledge.
So if I understand you right exclusive mode also bypasses SysFx DSPs ?
isn't there a solution to have the best of both worlds : bass management and DRC at the OS level and Bit perfect output ?
post #134 of 971
Quote:
Originally Posted by vairulez View Post

that's the kind of answers I like. Eho thanks for sharing some of your time and knowledge.
So if I understand you right exclusive mode also bypasses SysFx DSPs ?
isn't there a solution to have the best of both worlds : bass management and DRC at the OS level and Bit perfect output ?

Yes, exclusive mode completely bypasses the audio device graph, where the SysFx DSP's live.

Well, I think it is the best of both worlds, but I am biased. When the app uses "shared mode" (i.e. possibility of multiple streams being mixed together) you get all of the nifty DSP's we put into our SysFx modules. When the app uses "exclusive mode" you get bit perfect and whatever DSP the application has. That's probably not what you were exactly asking for, but that's what you get when we ship Vista.
post #135 of 971
Any advantages of DirectKS over ASIO? Latency?
post #136 of 971
Allow me to state a few things, in order for the possibility of more accurate answers.

Firstly a great deal of us here talks in the context of audio only. This is the audiophile part. Those asking for bit perfect output, won't be satisfied with answers in the direction of "but now it's floating point calculations, therewith all being much better than in XP". Bit perfect = bit perfect, and all which is not destroys sound (for the audiophile it is, and this is not stupid theory, but similar to induced jitter, which highly impacts the resulting sound).

At the same time, however, the last thing the audiophile would want is any processing, including any volume slider in the digital domain; What I understand from it, is that exclusive mode gets around software mixing, but that doesn't say (yet) that all volume sliders are disabled ...
Note that when *all* environmental rules are met around the current kmixer and when it would destroy sound because of resampling, it still wouldn't output a bitperfect stream because of the volume not being at exactly 100%, or whatever it is that destroys natively (!).

This part concluded, the audiophile just can't use anything else than bit perfect, and no, the audiophile won't ask for a dingdong when a new email arrives ...


The other part of us (in this AUDIO thread), is the HT user. He (she) too, wants the best sound possible, but he hardly can ask for bit perfect bass management.
I think this was explained properly by Armin, but hard to understand when the environment (and proper context) isn't set in advance of that. So :

Vista will calculate with floating point arithmics, will use 24 (32 ?) bits internally, possibly add dither underway, and all 'n all the results must be many factors better than how it's done in XP (with just 16 bits as I derive from all).
It does this when (e.g.) bass management is applied, *and* without altering the stream bass management just can't be applied.

The latter too, was indirectly explained by Amir, in his one line about the data not being allowed to exceed 100%;
For example, when the front channels -by the data itself calibrated to 100% (maximum, but it just could be the case, just as it is with about any recent CD production)- ... there's just no headroom to fill the fronts with e.g. center channel data (when you'd have no center speaker), because it would come to a rather lineair addition of amplitude data, therewith letting clip the sound in the digital domain.
Vairulez, from whom I originally learned these principles , will know himself he's asking for the impossible (bit perfect playback) ... if it were about bass management in the digital domain.
Amir, however (knowing it all perfectly as well), should respond to questions in the area of volume sliders, that these should be on the amp -and in the analogue domain- only. Just because there it is perfectly allowed, then with the basis of bit perfect (per channel) streams. Again, this matters similarly to the jitter phenomenon.
Only when the amp doesn't have this provision (and this is about always the case), then the solution can be brought by bass management in the digital domain, as an option.

With the above I tried to get a more clear basis for the discussion, sensing that I myself couldn't get the answers, no matter the questions were good, but without the IMHO needed context.
Of course it is *necessary* to get the appropriate feedback where I was wrong in the above ...


I'd like to add a question :

The in-depth explanation so far was about exclusive use, connecting to the audio renderer's pin, therewith addressing the soundcard directly;
This would come to DirectShow in the context of XP.
But what about DirectSound ? I'm not sure, but I don't think the DirectSound programmer can talk in terms of connecting to pins etc. He's (XP) talking in terms of Secondary and Primary Buffers. Would it be possible in the DirectSound-representative of Vista to have the exclusive use with the same results ?
Please note that getting exclusive use to the Primary Buffer wouldn't do the job, because -as it is in XP- this would still go through kmixer as soon as the soundcard doesn't provide hardware mixing. This, I think, depends on the size of the buffer needed, IOW, when the buffer is too large for the soundcard you'd go through kmixer again. My question would come to something like : would it be possible to get exclusive use to (all !) the secondary buffers in order to guarantee the kernel that nothing (with different sample rate etc.) may cause the kmixer to jump in.

I know, the question looks simple, but the answer probably is not at all, because of the very different way of working (??) in Vista.

Sorry for the long post,
Peter
post #137 of 971
peter, when I ask for bass management and bit perfect, I don't ask for them at the same time of course.
But what I'd really like is that when there is no mixing needed and wanted (all OS sounds are turned off), that all dsps are off and that the volume slider is at 100% we get bit perfect output from and audio renderer, unfortunately that is not the case.

Eho did you also work on improving the synchronisation of audio and video for multimedia playback ( a la reclock ) ?
post #138 of 971
I think that if many of you had ever heard (or DIDN'T) the neutrality and transparency of the sample rate converter in the X-Fi Elite Pro (and by extension the SRC in Vista) you would be far less concerned with "bit-perfect-output" .... after all, the whole search for it revolved around the OLD kmixer.... only playback of DTS audio CD's could be an issue... and there are now other ways to beat that horse....

post #139 of 971
Quote:
Originally Posted by jimwhite View Post

I think that if many of you had ever heard (or DIDN'T) the neutrality and transparency of the sample rate converter in the X-Fi Elite Pro

come on jim, we were talking seriously
post #140 of 971
.... sigh....

.... so am I.... I firmly believe that if you cannot here it, it's not hurting you....

post #141 of 971
Has anyone tried the Simplifi USB amplifiers? It seems like these would be perfect if they could take advantage of these new audio features.
post #142 of 971
Quote:
Originally Posted by jimwhite View Post

.... sigh....

.... so am I.... I firmly believe that if you cannot here it, it's not hurting you....


Well said... I agree that the current kmixer does audibly impact audio quality. BUT, if you pass a signal to an external amp it also has to attenuate/manipulate that signal. Whether it does it in the digital domain or in the analog domain it will impact the sound slightly.

What's most important is that there is good quality attenuation, manipulation, etc..

I think that is the point missed in the earlier discussions of what is being done in Vista. If they have improved on the quality of the signal manipulation then I'm all for having in done within windows.

...and I know some people have a "well I'll believe it when I hear it" mentality. And that's OK but at least listen to it before dismissing it entirely.
post #143 of 971
Amir,

Could you please elaborate on the Microsoft Vista WLP 3.0 specification? I found that Realtek ALC885 & ALC888 support this spec. But, what exactly does it mean? What kind of advantages does it have over the current sound cards? I can speculate it is something similar to the HDCP support for video cards. The WLP 3.0 spec-complaint audio will probably let our PC decode HD audio like DD+, TrueHD. Is this correct?

Thanks
post #144 of 971
Quote:


And that's OK but at least listen to it before dismissing it entirely.

easy that was some kind of "private" joke between jim and me.
I never heard the x-fi elite pro so I don't know how it sounds and so I don't judge the product
post #145 of 971
Sorry, I didn't mean to direct that at you. That was more of a general comment about kmixer (or at least it was supposed to be).
post #146 of 971
Hi Amir.
It would also be very interesting if you could start a Video Processing/Vista thread !?

I started a graphic card/HDMI thread in the video processor forum,but i guess its too early, so nobody realy knows much about the possibility of HDMI output in a PC.
http://www.avsforum.com/avs-vb/showthread.php?t=713925


J.P
post #147 of 971
Amir,

Can you characterize any improvements or features in Vista with respect to real time audio recording?
post #148 of 971
Thread Starter 
Quote:
Originally Posted by J.P View Post

Hi Amir.
It would also be very interesting if you could start a Video Processing/Vista thread !?

I started a graphic card/HDMI thread in the video processor forum,but i guess its too early, so nobody realy knows much about the possibility of HDMI output in a PC.
http://www.avsforum.com/avs-vb/showthread.php?t=713925


J.P

That's a good idea. Please go ahead and create a thread and I will see if I can get people to answer questions there. But please note that we are in the midst of last push for Vista so getting people to participate from Microsoft may be hard. The audio stuff is still in my group and I understand fair amount of it. So I can help out some. But for other technologies, we are in a bit of a crunch right now.
post #149 of 971
Thread Starter 
Quote:
Originally Posted by yzkbug View Post

Amir,

Could you please elaborate on the Microsoft Vista WLP 3.0 specification? I found that Realtek ALC885 & ALC888 support this spec. But, what exactly does it mean?

It means much higher audio fidelity than the really sad audio hardware you get in most PCs. WLP 3.0 is Windows Logo Program Requirements Version 3.0. You can read more about it here: http://www.microsoft.com/whdc/winlog...uirements.mspx

Essentially, we set minimum guidelines for achieving good quality audio. Things like noise floor, distortion, crosstalk, etc. Here are some of the specs:

THD+N < -80db FS
Dynamic Range >= 90db FS A-weighting
Sampling frequency accuracy: better than 0.02%
Line output cross-talk <= -70db
Full scale output voltage >= 1 Vrms
Noise level during system activity <= -90 db FS A-weighting

The last one is key. If you hear your hard disk accessing media as you listen to your music, you want to ask for WLP 3.0 compliance .

Quote:


What kind of advantages does it have over the current sound cards?

Per above, you can expect the system to sound like a decent, stand-alone audio equipment. This is a pretty big step up from typical PC which has signal to noise ratio not a whole lot better than a cassette tape!

Quote:


I can speculate it is something similar to the HDCP support for video cards.

No, there is no requirement for copy protection.

Quote:


The WLP 3.0 spec-complaint audio will probably let our PC decode HD audio like DD+, TrueHD. Is this correct?

No. Such processing will occur in software. What you want your audio hardware to do is to transmit the full fidelity of the decoded audio. WLP 3.0 is a good step toward that.
post #150 of 971
Amirm,

I too am interested in playing lossless audio (i.e. Music CDs) in Vista without the source stream being touched...in other words, bit perfect 1:1.

I read your reply earlier about Vista's special "Exclusive" mode.

Is this something we can simply turn on?

Once this mode is enabled, will media players such as WMP11 mess with the source stream? (currently in XP, the only way to eliminate the OS from messing with the stream is to use Kernel Streaming mode with a media player such as Foobar2000)

And finally, I'm sure we will still need to make sure our Sound Cards are not messing with the source stream as well. (ie X-Fi converts 44.1kHz to 48kHz unless you use bit-perfect mode).

Please give the purists some love!
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Home Theater Computers
AVS › AVS Forum › Video Components › Home Theater Computers › Audio Processing in Vista Explained