Home Theater Forum and Systems banner
1 - 20 of 849 Posts

· Premium Member
Joined
·
6,709 Posts
Discussion Starter · #1 ·
The beta release of V5.01 is now available for download in the Downloads Area. Use the "Drivers" selection box at the top left of the Soundcard preferences to select ASIO then choose the ASIO device, input and output. For most reliable measurements use normal or high latency settings on the ASIO driver.

Changes in this release:

  • Added support for ASIO drivers on Windows
  • Updated help to add All SPL graph to GraphPanel help
  • Tried a tweak to have the big-endian output flag default to on for OS X PowerPC platforms
  • Stimulus trace on scope plot is shown at level sweep was made at rather than 100 % FS
  • Added sample width selector for dither control on sig gen sine wave generator
  • Changed VU meter labelling to show "In" and "Ref In" for input meters with actual input name/channel in tooltip
  • Show an error message if user attempts to load an mdat file as a mic/meter or soundcard cal file
  • Allow ";" as line comment indicator for imported ASCII files (used by SMAART)
  • Added a check on soundcard calibration measurements to warn if measurement appears invalid
  • Added impulse response export options to export windowed response or minimum phase response
  • Added a warning message after SPL meter calibration if the input level was below -50 dB FS
  • Added a MiniDSP-96k equaliser option for 96kHz MiniDSP plug-ins (e.g. for 2x8)
  • Added parallel equivalent impedance display for impedance traces
  • Bug fix: TS parameters calculation could fail for some measurements
  • Bug fix: Problem opening EQ panel with a measurement generated from Trace Arithmetic
  • Bug fix: Target trace in EQ window did not include house curve when there were no measurements loaded
  • Bug fix: Do not use physical fonts unless default Locale language is en to avoid undisplayable characters
  • Bug fix: Export RT60 data as text was broken
  • Bug fix: Fill filter traces filled the house curve section of the target if a house curve was loaded
  • Bug fix: Force use of decimal point as decimal delimiter in SPL meter SPL value
  • Bug fix: Adjusted DCX2496 centre frequencies
  • Bug fix: Error when trying to upload TMREQ filters from surround or surround back channels
  • Bug fix: Exporting filter impulse response as WAV always exported the set from the currently selected measurement regardless of the selection made in the export dialog
  • Bug fix: Path to last imported impulse response was not saved correctly on exit
  • Bug fix: Hilbert transform had an error that affected envelope calculation

Please report any issues in this thread.
 

· Premium Member
Joined
·
35 Posts
Re: V5.10 Beta release - ASIO support

Awesome!

First impressions, it works fine on my Win7-64 setup with an Emu 1616m (PCI). I wasn't able to use it before as there is no valid WDM input (driver limitation I guess).

The danger with ASIO is of course dropouts/stutter from too-low driver latency settings. It's easy to work with something latency critical, and then forget to set latency to something safer for programs like REW. Does REW detect that? I guess it should be fairly easy to detect gaps in a sweep, and you could then warn the user that the results won't be valid. Another option might be for REW to auto-set a safe latency (though I'm not sure if applications can actually do that?).

Also a small GUI request - can you make popup windows (like EQ progress popups) children of their parent windows? Right now, if you click the parent window while a popup is showing, it obscures it. I don't know how windowing works in Java, but in Win32 you just make the popup a child of the parent window (by passing it the parent's handle at creation time), and it always stays on top that way.

Very powerful program (and lots to learn), thanks so much.
 

· Premium Member
Joined
·
6,709 Posts
Discussion Starter · #3 ·
Re: V5.10 Beta release - ASIO support

Good to hear it seems to be working :)

I don't have any programmatic control of the latency setting, have to adjust it via the ASIO control panel. REW can query the latency, but whether the detected level is too low is platform dependent so difficult to make a general recommendation. REW does detect and warn about potentially corrupted impulse responses, but small drop-outs may not trigger that.

can you make popup windows (like EQ progress popups) children of their parent windows?
I've fixed that for the EQ progress popup, didn't find any others but let me know if you come across one.
 

· Premium Member
Joined
·
35 Posts
Re: V5.10 Beta release - ASIO support

Good to hear it seems to be working :)

I don't have any programmatic control of the latency setting, have to adjust it via the ASIO control panel.
Right, I feared as much. That's a really annoying limitation of the ASIO spec - some programs you only use it to guarantee bit-accurate in/outs (like simple audio recorders/editors, where higher latency is safer). Having to keep manually changing latency between apps is a pain (and of course I usually forget).

REW does detect and warn about potentially corrupted impulse responses, but small drop-outs may not trigger that.
Maybe you could add that as a fail-safe? I think the dropouts would be blocks of fully-zero samples, so easy to spot.

I've fixed that for the EQ progress popup, didn't find any others but let me know if you come across one.
Great, I'm spending a lot of time there with auto-adjustments just now (fascinating), if I find more I'll let you know.
 

· Premium Member
Joined
·
1,563 Posts
Re: V5.10 Beta release - ASIO support

Thanks for adding ASIO support!

I had some problems getting it running on my setup, but finally had it working normally.

I do want to point one error that I have not been able to avoid yet. [I am using Vista 32 and a Focusrite SaffirePRO 14 sound card.]

I get the following error when loading REW after using it successfully in ASIO mode the previous session.


===========
Input device error


Message:
javax.sound.sampled.LineUnavailableException: Microphone (Saffire Audio) does not have any lines supporting PCM_SIGNED 48000.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian
Level:
SEVERE
Stack Trace:
Microphone (Saffire Audio) does not have any lines supporting PCM_SIGNED 48000.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian
roomeqwizard.hB.Y(Unknown Source)
roomeqwizard.Q$6.actionPerformed(Unknown Source)
javax.swing.JComboBox.fireActionEvent(Unknown Source)
javax.swing.JComboBox.setSelectedItem(Unknown Source)
roomeqwizard.hB.A(Unknown Source)
roomeqwizard.hB.C(Unknown Source)
roomeqwizard.hB$1.actionPerformed(Unknown Source)
javax.swing.Timer.fireActionPerformed(Unknown Source)
javax.swing.Timer$DoPostEvent.run(Unknown Source)
java.awt.event.InvocationEvent.dispatch(Unknown Source)
java.awt.EventQueue.dispatchEventImpl(Unknown Source)
java.awt.EventQueue.access$000(Unknown Source)
java.awt.EventQueue$1.run(Unknown Source)
java.awt.EventQueue$1.run(Unknown Source)
java.security.AccessController.doPrivileged(Native Method)
java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
java.awt.EventQueue.dispatchEvent(Unknown Source)
java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.run(UnknowOn Source)
==================

If I continue to the preferences all looks the same settings as when REW was last run. If I try to measure I get a "Unable to take SPL reading - SPL meter audio input not available" error.

I can correct the issue by chosing the Java Drivers and then re-chosing the ASIO drivers and resetting the inputs and outputs.

Setting my sound card default in 48 kHz mode and maximum buffer size did not resolve the issue.
 

· Premium Member
Joined
·
6,709 Posts
Discussion Starter · #6 ·
Re: V5.10 Beta release - ASIO support

I get the following error when loading REW after using it successfully in ASIO mode the previous session.
There will be some additional diagnostic info in the log file that has that error, could you attach it or email me a copy please? The files are in your home directory in a folder called REW.
 

· Premium Member
Joined
·
1,563 Posts
Re: V5.10 Beta release - ASIO support

JohnM,
Oops, I spoke too fast!
The error on opening is corrected afterall.

The error "Unable to take SPL reading" is still there and the measurement cannot be taked until the drivers are unloaded and re-loaded as before.

jtalden
 

· Registered
Joined
·
2 Posts
Re: V5.10 Beta release - ASIO support

Trying this out with a 1616m, EMU PatchMix control panel seems to lock up when I try to make changes to send/recv chains whilst REW is open. If I close REW, PatchMix recovers. W7 x64 fwiw.

Sometimes when I close REW after locking PatchMix, REW spits out:

Exception during shutdown

Message:
java.lang.NullPointerException
Level:
SEVERE
Stack Trace:
null
com.synthbot.jasiohost.AsioDriver.ASIOExit(Native Method)
com.synthbot.jasiohost.AsioDriver.exit(Unknown Source)
com.synthbot.jasiohost.AsioDriver.returnToState(Unknown Source)
com.synthbot.jasiohost.AsioDriver.shutdownAndUnloadDriver(Unknown Source)
roomeqwizard.hB._(Unknown Source)
roomeqwizard.I.I(Unknown Source)
roomeqwizard.SB$3.windowClosing(Unknown Source)
java.awt.AWTEventMulticaster.windowClosing(Unknown Source)
java.awt.Window.processWindowEvent(Unknown Source)
javax.swing.JFrame.processWindowEvent(Unknown Source)
java.awt.Window.processEvent(Unknown Source)
java.awt.Component.dispatchEventImpl(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Window.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.EventQueue.dispatchEventImpl(Unknown Source)
java.awt.EventQueue.access$000(Unknown Source)
java.awt.EventQueue$1.run(Unknown Source)
java.awt.EventQueue$1.run(Unknown Source)
java.security.AccessController.doPrivileged(Native Method)
java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
java.awt.EventQueue$2.run(Unknown Source)
java.awt.EventQueue$2.run(Unknown Source)
java.security.AccessController.doPrivileged(Native Method)
java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
java.awt.EventQueue.dispatchEvent(Unknown Source)
java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.run(Unknown Source)
 

· Registered
Joined
·
2 Posts
Re: V5.10 Beta release - ASIO support

A few more bugs I've found:
  • jtalden is correct, I need to go to JackRouter then back to ASIO before a calibrate is able to be done.
  • Until the above is done, a "Check level" operation produces no sound (and the "Out" graph remains darker).
  • It seems like it will only pick the first item from a drop down box with the same name. As EMU labels both of my ASIO 15/16 as "DOCK Out 3L / 3R", I'm only able to access the left inputs/outputs.
  • Seems to be some bug with multiple sweeps - see the attached IR graphs for one and four sweeps. The timing somewhere is broken.

I'd also like to see ASIO 15/16 as well as DOCK OUT 3L / 3R, just for my sanity. Not sure if that's possible, or just how EMU implements it.
 

Attachments

· Premium Member
Joined
·
6,709 Posts
Discussion Starter · #13 ·
Re: V5.10 Beta release - ASIO support

I have uploaded beta 3, which has the following changes:

- the ASIO channels are prefixed by their channel index, that should fix the "3L/3R" problem
- another attempt to stop the LineUnavailableException / input not available on startup after using ASIO
- Add a warning if the ASIO buffer size is not a power of 2 and disable multiple sweeps, that is probably the cause of the odd result with multiple sweeps above
- Allow for driver reset, resync or buffer size change while REW is running
- Suppress errors from the ASIO driver unload on shutdown
 

· Premium Member
Joined
·
1,563 Posts
Re: V5.10 Beta release - ASIO support

JohnM,
Just FYI.

I ran 2 more REW trial sessions using both 48k and 96k sample rates without issues. I also ran a session to try RTA at 96k and it seemed to be fine. On the latest session with 2 x 29k sweeps, I got a buffer overflow error on a couple measurements trials and was warned to discard the measurements [no visual problem with the data]. The next measurement without any change was fine - no error reported. Attached is the log file if you want to look it over.
I do seem to get an occasional dropout and that may be related to this issue. My ASIO buffer is set at 2048 for these runs. Maybe my system is just pushed to hard occasionally?

View attachment roomeq_wizard1.log.txt
 

· Premium Member
Joined
·
6,709 Posts
Discussion Starter · #16 ·
Re: V5.10 Beta release - ASIO support

Thanks for that. For the benefit of others following this, 48k would generally be better for measurements unless you need the extra bandwidth to track down ultrasonic tweeter resonances, for example.

Larger buffer size might help with the dropouts, but I have run buffers from 64 samples to 2k samples and don't see much correlation between occasional glitches and buffer length, so it may be more down to whatever else the PC is doing at the time.
 

· Registered
Joined
·
2 Posts
Re: V5.10 Beta release - ASIO support

Execuse me for dumb questions, but I dont get two things:
1. My E-MU 0404 ASIO driver can only change time of buffer (ms, not samples). From 2ms to 500ms. On any choise REW inform me abou a "power of 2". What I need to do?
2. How can I select both channels (left+right) to out via SPDIF of 0404? Now I hear sweep only from left speaker. Native soundcard ASIO driver can't rule the channels.
Thanks!
 

· Premium Member
Joined
·
6,709 Posts
Discussion Starter · #18 ·
Re: V5.10 Beta release - ASIO support

1. My E-MU 0404 ASIO driver can only change time of buffer (ms, not samples). From 2ms to 500ms. On any choise REW inform me abou a "power of 2". What I need to do?
The number of samples is the time multiplied by the sample rate, so (for example) 100ms at 48,000Hz is 0.1 * 48000 = 4,800 samples. Power of 2 sample lengths are 256, 512, 1024, 2048 etc. At 48kHz sampling 1024 samples would be 1024/48000 =
0.0213s = 21.3ms, so a figure around 21ms might give a power of 2 length.

The only feature not available when the length is not a power of 2 is performing multiple sweeps, which is rarely needed anyway, so don't worry if you don't happen to find a time that results in a power of 2.

2. How can I select both channels (left+right) to out via SPDIF of 0404? Now I hear sweep only from left speaker. Native soundcard ASIO driver can't rule the channels.
Select the other channel as the Ref output.
 

· Premium Member
Joined
·
35 Posts
Re: V5.10 Beta release - ASIO support

(beta3) I also get the "ASIO buffer is not a power of 2" warning for all my 1616m latency options. So either the warning is wrong, or my driver really doesn't allocate any pow2 buffers.

Why is pow2 necessary for multiple sweeps? Can't you just pad or truncate the recorded data?
 

· Premium Member
Joined
·
1,400 Posts
Re: V5.10 Beta release - ASIO support

Hmmmm, huge problems yesterday, so much so, that I uninstalled 5.01 Beta3 / reinstalled 5.0 / all so that I could get back to making some stable measurements .

- Today I'm back to 5.01 Beta3 to see what can be done ( 5.0, uninstalled ) .



OS; XP Pro SP3, SoundCard; M-Audio, Fast Track Ultra ( 8-chnl USB ) , JAVA version is up to date .

Observation #1 : Even though this card is running on USB power ( and therefore limited in it's total count of available input & output channels ) , the drop-down selection menus ( within the preferences window ) don't properly reflect the "hobbled" status of the sound card .



Event #1 ; I was surprised to see this notification when I was simply trying to test a loop-back , using the "Calibrate SC" section as a 1K source .



Event #2 ; For a while, I was able to consistently get this notice .



Event #3 ; Stepping back to selecting JAVA/WDM drivers didn't obviously help things ;



Event #4 ; Trying the ASIO4ALL drivers only resulted in a worsening of the situation .
ie; One doesn't want to see 2 simultaneous "Notices" like this / this led to a forced quit situation ( then a reboot ) .



Event #5 ; Under some specific circumstances ( opening , closing windows ) I can get the ASIO outputs to lockup and go into a rhythmic chatter .
- I've uploaded a "zipped" WAVE file of what this sounds like .

I've included REWs log history / I'm not sure if it is all intact since I was also busy uninstalling older versions at one point yesterday .

Thanks John for your attention to this . :T

<> EarlK
 

Attachments

1 - 20 of 849 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top