I can't answer all of your questions, but here's a stab at a few answers:
- When looking at the default ordering of the DSP Settings menu, wouldn't it make more sense to put the 'Tempo & Pitch' (and maybe also the 'Effects') before the 'Output Format' Tab (which is, after all, responsible for resampling the audio, if necessary)? Or am I missing something here?
Most sound devices need to be "opened" at a specific sample rate (i.e. one of their supported hardware sample rates) and a specific channel configuration at the outset of playing a song (i.e. I'm not aware of any devices that support changing the hardware sample rate/channel count during playback). Any subsequent pitch changes have to take place in software after that initialization takes place. That's part of why output format is always first.
- There exists an option to use the default audio output device for DirectSound, but apparently no such option to just use the default device exists for WASAPI output. Have I missed it? If I haven't, why isn't it there?
You haven't missed it, it's not there. I don't work for JRiver, but I think the default option is just designed to replicate what would happen if you played to the windows mixer like an ordinary
program. So it uses direct sound and plays to the system default. When you use WASAPI you're bypassing the windows mixer, so the "default" doesn't make as much sense. Such an option could probably be created, but there isn't one currently.
- It appears that the sound output settings (both DSP and Options/Audio) are set globally. Is there a way to set them individually, for each audio device, especially if the above exists?
Read up on zones on the forums and wiki. You can create an arbitrary number of zones that have completely independent audio options and DSP settings. They can easily be configured to create different setting profiles for different devices.
- The DSP's 'Output Format' tab has a section to specify the output sample rate. Personally, I believe that nothing is gained from resampling for resampling's sake, so I prefer to not resample audio unless it's necessary. However, when it's necessary anyway, I like resampling directly to the highest possible output frequency that is a multiple (or closest to being one) of the input frequency (example: 8 kHz directly to 96 kHz, but leaving 32 kHz untouched, because the audio device supports it). Is there an option to implement a kind of auto-selector that does this, kind of like this Python(3) code would (probably) do?
JRiver does some auto-detection for sample rates, but it only does it when a playback attempt fails (i.e. when an unsupported sample rate is attempted, JRiver offers to resample to a sample rate that would work). It's not as intense as what you're proposing, but it serves to alert the user to which sample rates are unsupported by their device. If you're unahppy with the choice it makes in the autofix, you'll need to set manually which rates you want to resample to what.
- The 'Output Format' Tab's Channels option lets me select only one option. Is it possible to, for example, output untouched 7.1, 5.1, and 2.0 audio, but mix the rest to 7.1, similar to LAV Audio's Mixing tab with it's 'Don't mix stereo sources' option? (Note that this is mostly curiosity, because my only opportunity at using it is with some 7.1 Headset, and I'd estimate that when in doubt, your upmixing is better.)
You can get 75% of the way there. You can set it to 7.1, enable JRSS mixing, check the box in output format for "only mix stereo sources to 2.1," and then set the JRSS subwoofer option to "silent." Those settings will:
1) Leave 7.1 completely alone
2) Leave stereo completely alone, and
3) Mix everything else to 7.1
So it doesn't leave 5.1 alone as you asked, but it does the rest of what you asked. A word of clarification, setting the sub to "silent" should not affect the LFE (or .1) track when it's present in source material; the JRSS subwoofer just controls what happens with sources that lack a native sub channel
- I understand that once I use your Video Playback system (Red October HQ), I can configure madVR from there. Is there a way to configure it without first opening a video? (I ask because on my current system, which I have scheduled for wipe+reinstall by tomorrow, for an unknown reason, Red October's madVR doesn't seem to work, as in it displays the first frame with some unusually high stats, and then freezes. The really strange thing is that I briefly got it to work, but only once [twice now: I removed the madVR folder from AppData, but after that the problem persists]. When, using the very same configuration, I reopened the same video file, it hung again. Don't bother with this problem, it's probably a faulty setup in some way, and not related to my soon reinstalling the computer. My regularly installed madVR continues to work fine. And yes, I'm certain that it's madVR [without it, it works, and also, madVR's OSD shows 0.00 fps screen refresh rate].)
If you can get it to run for even a few seconds, you can open up the tray icon and tell it to remain present when no videos are playing. I'm not aware of a way to configure it without at least playing a video once.
[/list]