Popular Post pkane2001 Posted March 10, 2019 Popular Post Share Posted March 10, 2019 This thread is dedicated to the discussion of DeltaWave beta software. All constructive input, suggestions, bug reports, and comments are welcome! Website and download link here DeltaWave is designed to compare two different audio files to measure and visualize differences. The software is free, runs on Windows and requires .NET 4.6 runtime. Some highlights: Reads DSD, FLAC, and WAV file formats, writes difference files as WAV Plays original and difference files over WASAPI and ASIO drivers Matches phase to sub-sample accuracy, removes clock drift, and matches levels (non-linear level matching is also supported, but consider it experimental) Generates delta waveform, spectrum, spectrogram, phase difference, cepstrum plots, and many others, with fast zooming and panning Produces a full HTML report documenting the results of a comparison, including how close to bit-perfect the two files are Supports low- and high-pass filtering, as well as notch-filter to remove a specific frequency Has an A/B/X style comparator with test statistics for checking the audibility of differences after matching two audio files Highly configurable Nikhil, mitchco and STC 1 2 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 10, 2019 Author Share Posted March 10, 2019 Just now, Jud said: Does it have the ability to play a reference in one stereo channel and the comparison simultaneously in the other channel? If it doesn't currently have this capability, how difficult would it be to add? As the matter of fact it does, Jud The feature is under the Play menu. Jud 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 11, 2019 Author Share Posted March 11, 2019 10 hours ago, Jud said: OK. Will see if I can get to them tomorrow. Here's the playback function you're looking for. Use it after you perform a Match operation to play reference and comparison files at the same time: Jud 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 11, 2019 Author Share Posted March 11, 2019 6 minutes ago, fas42 said: Have checked about switching off the non-linear options, in the previous release. The one that gave me "more" was the drift compensation not on - got to a bit over 16 secs before conking out! Almost, but no cigar, . The setting of the level switch here made no difference. Will get the latest version of DW, and check again. Frank, what is the RMS and correlated null depths, even with 16 seconds of data? Definitely try version .14, as I made it less aggressive at throwing data away if it doesn’t match well. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 11, 2019 Author Share Posted March 11, 2019 27 minutes ago, fas42 said: Just ran it with both non-linear calibrations on, and did the 18s, and it gave, DeltaWave v1.0.14, 2019-03-12T09:01:03.3568298+11:00 File 1: Bob Marley B,18s.wav 793828 samples 44100Hz 16bits, MD5=00 File 2: Bob Marley A,18s.wav 793920 samples 44100Hz 16bits, MD5=00 Settings: Gain:True, Remove DC:True, Non-linear Gain:True Non-linear Order:1 Correct Drift:True, Precision:18, Non-Linear drift Correction:True Upsample:False, Window:Hann Spectrum Window:Blackman, Spectrum Size:524288 Spectrogram Window:Lanczos, Spectrogram Size:32768, Spectrogram Steps:1024 Dither:False Discarding at the beginning: File1=0, File2=0 samples Initial values Waveform 1: -10.782dB Waveform 2: -10.623dB Null Depth=10.817dB X-Correlation offset: -688 samples Doing extra 5 iterations for better convergence Gain= -2.1507dB (0.7807x) Phase offset=-31.201814ms (-1376 samples) Difference (rms) = -38.2dB [-38.7dBA] Correlated Null Depth=12.29dB [12.23dBA] Clock drift: 2.67 ppm Files are NOT a bit-perfect match (match=0.75%) at 16 bits Files match @ 50% when reduced to 9.3 bits Phase difference (full bandwidth): 93.1845931442362° 0-10,000Hz: 76.4296479160094° 0-20,000Hz: 92.276164222401° 0-24,000Hz: 93.1845931442362° 0-44,100Hz: 93.1845931442362° 0-48,000Hz: 93.1845931442362° RMS of the difference of spectra: -125.991787551349dB DONE! Signature: 3d792b97cdcd9a14afc6a35818afbcae Correlated null and phase differences are still poor, so something is still not right. As you can see in the result I posted before, I get a very good result with or without HP filtering the two tracks in Audacity. Can you please describe the steps for HP filtering to generate the tracks in Audacity, so I can try to reproduce? Or alternatively, please upload the two tracks already processed so I can take a look. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 11, 2019 Author Share Posted March 11, 2019 Thanks Frank. I’ll give it a try. I was applying the high pass filter effect at -48dB/oct, just repeating it about 10 times to get down to -180dB cut. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 11, 2019 Author Share Posted March 11, 2019 1 hour ago, fas42 said: Paul, in the Equalization Effect I use maximum length of filter, 8191, and in Draw mode set the pass to 0dB and cut to 120dB, at 5kHz - because visual, won't be that precise frequency, but close enough. I have found over some years that this does the job nicely of splitting the waveform into bands. To get an idea of the clock drift, using a sample rate around 225kHz, I was getting, in a particular instance, numbers of 6 samples out at start, 7 out in the middle, 6 1/2 at the end - this is what the software is trying to digest. Don't know, Frank... Still can't reproduce what you're seeing. Are you by any chance comparing a 5K HP filtered file to an 8th generation unfiltered one? That's the only way I can see you getting such poor results. Here I used the Equalization effect to HP filter at 5K (both files!) and still get very good result. Good nulls, phase delta is low up to about 24KHz, etc.: Here's the equalization curve I used in Audacity: -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 12, 2019 Author Share Posted March 12, 2019 8 minutes ago, fas42 said: Second test, with non-linear drift correction OFF - overall matching appears better, but still well short what should be possible: I think turning off nonlinear drift correction will help. I'll likely remove that option in an upcoming release, as it causes more harm than good But, you may have something, there, Frank. I see a larger phase error for the first 1-2 seconds, and then it goes down to less than 1/10th of that error for the rest of the track. Maybe that's actually in the original track, but could be something DW is doing wrong. I'll check into it. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 12, 2019 Author Share Posted March 12, 2019 18 minutes ago, fas42 said: And, have to head off to the medicals again - will be out of sight for a while ... Hope everything's ok, Frank. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 12, 2019 Author Share Posted March 12, 2019 28 minutes ago, esldude said: I have seen non-linear drift help some on some tracks. Though usually not, and only a small amount when it does. Maybe the entire non-linear box could have a header that says, Strongly Not Recommended. It seems the non-linear level can very slightly help most files you just have to find which order to choose. I don't think any order beyond 4 has helped anything I've tried yet. OTOH, I can understand doing away with something that rarely helps at all, only helps a small amount when it does, and much more often causes trouble. I'm thinking that: Non-linear gain correction should be replaced with the new EQ feature (your suggestion) that will automatically match the two spectra based on their averages. Still need more time to play with it, but I'll post a new version so others can play with it, too The non-linear clock drift correction should probably go away as being too dangerous. It's almost impossible to tell if it's correcting for a real clock error or locking onto some noise in the signal. And because it's non-linear, it can cause serious damage to timing even though the overall null values may seem to improve -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 12, 2019 Author Share Posted March 12, 2019 6 hours ago, fas42 said: All's fine, thanks Paul 😃 Good to hear, Frank! I did look into your report and indeed there was a problem with phase alignment in the first few seconds of a track -- it was still aligned to sub-sample accuracy, but about 10x worse than the rest of the track. This is now fixed and I'll publish a new version later today or tomorrow. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 13, 2019 Author Share Posted March 13, 2019 2 hours ago, Jud said: OK, before we go further: Tried to play the files through the desktop system and getting no sound. (?) What was selected in the DW driver selector drop-down? Did the progress indicated start updating at the bottom? Did the play buttons turn into pause buttons? Oh, and by the way, did you click on Match button before trying to play? The files are not loaded or processed until you click on Match. Show button will also load the files and display some raw plots, but will not try to match them. You can play (or save) the tracks after you Match them, or just Show them, but not before. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 13, 2019 Author Share Posted March 13, 2019 2 hours ago, Jud said: Can the comparison be saved to a file or piped to a UPnP/DLNA server, and if so, does anyone have a suggestion for one? Would like to listen to @esldude's files on my main system if I can, which takes its signal from my Windows desktop in the office through a microRendu in the living/listening room. If not I'll listen on my desktop system and/or headphones. I see the Save Compare Wave and Save Delta Wave options, but am not certain what they do, and am wary they might display the file differences I'm supposed to be listening for blinded. Save options let you write the corresponding tracks to a 32-bit WAV file at the same sample rate as the track. If you save the Compare track, you'll save the processed file adjusted to match the Reference track in level and phase. If you save the delta track, you are saving the difference between Compare and Reference tracks -- this is what the difference sounds like. Again, saved as 32-bit WAV file, but if the match is good, the level will be significantly lower than the other two tracks. You can play these files in any player software that supports WAV files and 32-bit/sample rate of the original. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 13, 2019 Author Share Posted March 13, 2019 Version 1.0.15b is out!Changes in this version: Fixed a problem that caused a larger phase difference in the first few seconds of a track compared to the rest of the track @fas42 Removed non-linear polynomial gain correction option Removed non-linear drift correction option Added non-linear EQ/frequency matching correction (use with caution, only if there are gross differences in spectra of the two tracks!) @esldude Here's what EQ does on a track. Before EQ: After EQ: rando 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 14, 2019 Author Share Posted March 14, 2019 47 minutes ago, Jud said: I believe that playing Ref & Comp will play the left stereo channel of one piece, and the right stereo channel of the other, correct? No. You load only one channel of each track into DeltaWave, not stereo. You specify what channels you want from each file (selector L or R is right next to the file name): Once you press Match, these two mono tracks (both left in the above screen shot) will be adjusted to be as close as possible in phase and level. Then, when you play Ref & Comp, Ref will be played in the left ear and Comp will be played in the right ear. 47 minutes ago, Jud said: I want to see if I hear differences between left and right, any "fusion" defects, under those conditions. That's exactly what playing Ref & Comp is meant to do esldude 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 14, 2019 Author Share Posted March 14, 2019 8 hours ago, pkane2001 said: That's exactly what playing Ref & Comp is meant to do By the way, @Jud, there are a few other possibilities I've tried with this test to help aid in detection, and they didn't seem to help that much. One was to swap the two channels every few seconds while playing. I imagined that the center position of the sound would switch during playback and that should be fairly obvious, but it really wasn't. The next test I want to run is to swap them at a much higher rate -- something like at 2-3kHz. To my mind, if there are slight differences that are at all audible this should result in a detectable 3kHz signal on top of the music. But it will be at a very low level if the match is good (delta wave magnitude is low), so I picked 3kHz as being in the most sensitive part of our hearing range. We'll see if that works any better I also have a few ideas on improving the ABX comparator to help aid in detection of differences. Stay tuned! -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 14, 2019 Author Share Posted March 14, 2019 12 minutes ago, Jud said: What we have here is a failure to communicate. We're using the same words to mean different things, I think. I'd like the option to mixdown each stereo track into mono, then compare the two resulting mono tracks as the left and right channels in Play Ref & Comp. So you could select, as input for each comparison channel, the left channels of the respective tracks, the right channels, *or both channels of each track mixed down to mono*. Is this possible, or a pain to do? Or is it already available and I'm being thick? I think I understand what you mean. But why would this be a useful test? What does mixing down to mono give you? You are not listening to the original tracks anymore. Instead, it would be some mathematical (i.e., processed) combination of the two channels that normally doesn't occur in nature -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 14, 2019 Author Share Posted March 14, 2019 1 minute ago, Jud said: Mixing down to mono gives you the full artist's intention for the music, just with the stereo effect removed. I think that listening to two left or two right channels results in something the artist never intended us to hear. Ever see those photographic portraits that use only half the face, one side the original and the other the mirror image? Neither the "two left sides" nor "two right sides" image looks anything like the person's actual portrait. That's what Delta Wave is doing now. I'd rather look at two photographs of a person side by side and compare, which to me is what the intermediate mixdown to mono gets you. I did something very similar when comparing speaker cables recently. (I intend to post about this soon.) I hooked up one manufacturer's cable to the left speaker and the other to the right speaker. While I started out playing mono material, I quickly realized that since my preamp has a mono switch I could use more recently recorded material and just flip that switch. It mixed down the two stereo channels to mono and sent that mono signal to the amp and speakers, making simultaneous comparison of the two manufacturer's cables simple. Having experienced this and thought it worked nicely, I'd be interested to see if the same sort of thing could be made quick and easy with software. I don't think a recording made for stereo, mixed down to mono is the way the artist intended for us to hear it, either Probably not a big deal to implement something like this, but let me think about it. -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
Popular Post pkane2001 Posted March 14, 2019 Author Popular Post Share Posted March 14, 2019 DeltaWave Version 1.0.17 is now available Fixed a problem with the Index out of Bounds error when engaging DC offset removal option Fixed a problem that resulted in Reference level being adjusted to match Comparison, instead of the other way around Added support for down-mixing stereo files into a mono track for comparison @Jud (DSD is not supported with L+R yet) Fixed a small glitch with FFT windowing routine that resulted in a low frequency spurious tone with certain window types Added track RMS and peak values before and after matching to the Results tab Added drag-and-drop of individual files to the Reference and Comparison boxes Thanks to all that reported issues and made new feature suggestions! DeltaWave is getting better and better Jud and fas42 2 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 14, 2019 Author Share Posted March 14, 2019 4 hours ago, Jud said: You're right of course, but having done it, I don't think you lose as much as leaving out an entire channel. In any case, thanks for your consideration. Here you go, Jud, version 1.0.17 Jud 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
Popular Post pkane2001 Posted March 15, 2019 Author Popular Post Share Posted March 15, 2019 19 minutes ago, Jud said: That's got it! Now I actually thought I could tell slight differences in @esldude's files just on my inexpensive desktop system, but my thinking could very, very easily have been affected by the visual from the file matching run. So another feature request (I know, here I've hardly begun using the program and I have all these requests): A "test mode" where the match is done, but no visual is shown. Or have I once again asked for something already in the program? Excellent! If you don't want to see the charts or the results, simply uncheck all of them under settings, and you'll see a blank page, instead: esldude and Jud 1 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 15, 2019 Author Share Posted March 15, 2019 15 minutes ago, Jud said: Tried unchecking all the display options, now get the following error when trying to play Ref&Comp: 2019-03-14 18:44:05.1812|ERROR|Wave.Program|Unhandled thread exception at Wave.WaveForm.GetAll(Control control, Type type) in C:\Users\ypa\documents\visual studio 2015\Projects\Wave\Wave\WaveForm.cs:line 4388 at Wave.WaveForm.currentWavePlot() in C:\Users\ypa\documents\visual studio 2015\Projects\Wave\Wave\WaveForm.cs:line 4264 at Wave.WaveForm.playRefCompToolStripMenuItem_Click(Object sender, EventArgs e) in C:\Users\ypa\documents\visual studio 2015\Projects\Wave\Wave\WaveForm.cs:line 5403 at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e) at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e) at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e) at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e) at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea) at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ToolStrip.WndProc(Message& m) at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) Nice I didn’t try doing those two things at the same time! @Jud, what you can do for now is unselect all and then check just Lissajous. That's not going to give anything away if you don't touch the controls. I'll update with the real fix ASAP. esldude 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
pkane2001 Posted March 15, 2019 Author Share Posted March 15, 2019 21 minutes ago, Jud said: Speaking of which - I'm not able to access the computer with DWave on it at the moment, but wanted to ask: If there's a good chance this "master quality" stuff uses minimum phase filters at the ADC end, if I don't want to disturb that I assume there's a setting to toggle if one doesn't want to match phase? Sure. You can disable phase drift correction in settings. Jud 1 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
Popular Post pkane2001 Posted March 15, 2019 Author Popular Post Share Posted March 15, 2019 18 minutes ago, Jud said: Oh! Also - Is there a standard channel in which the Ref and Comp are each played? That is, whatever is designated as the Reference is always played back in the left channel and the Comp is always played back in the right channel? Or is this configurable in Settings or elsewhere? Ref is left, Comp is right. Currently no way to switch these, other than to swap the files. That's something that will be supported (and even made automatic) in the update to the Comparator tool, coming soon. Jud and plissken 2 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
Popular Post pkane2001 Posted March 16, 2019 Author Popular Post Share Posted March 16, 2019 5 hours ago, Arpiben said: First of all, congratulations for such a nice Audio tool! I didn't have enough time to check Deltawave how much I wanted, anyhow please find a few comments dealing with release 1.015b. - Lissajous with timings greater or equal to 100 ms tend to crash Deltawave - Manual axis reset is needed for full bandwidth with sampling rates above 44.1 kHz - Linear drift correction issues in case of phase inversion. Dealing with phase drift correction, do you mind explaining the methodology used? Apparently frequency bands seem to be divided..... New features candidate: - marker on curves showing values - Noise floor / Power density measurement for dither or others... Rgds. Hi Arpiben, thanks for your feedback! Lissajous is experimental, and I'm not even sure it'll stay around. Do you find it useful? That said, if something crashes, I'll need to see a log to know what happened. You can view the log from Help->Logging->View Log menu. Just post it here or PM me with the contents of the log file. Phase reversal is fine as long as it's consistent throughout the track. This is detected automatically. If there are multiple phase reversals, the data can't be properly aligned. Axis Reset button doesn't work for rates above 44.1KHz? It should. The algorithm is using cross-correlation on equally-spaced chunks of the track to compute up to a sample differences, and then uses a frequency-space correlation analysis to determine the offset to a sub-sample precision. It then fits a line through those measured offsets to determine clock drift and DC offset. There's no division into frequency bands. Quote marker on curves showing values On almost any plot, hold down the shift key away from the point you're interested in -- this will anchor an arrow. Then drag the mouse to the point you want to show the value, while holding the shift key down. You can zoom in on the plot before doing this to get a more precise position of the arrow. You can place multiple arrows in the plot, if you'd like: To remove them, you'll need to refresh the plot with the button. There's not yet a way to remove an individual marker. Quote Noise floor / Power density measurement for dither or others... Good suggestions! Arpiben and esldude 2 -Paul DeltaWave, DISTORT, Earful, PKHarmonic, new: Multitone Analyzer Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now