HydrogenAudio

Hydrogenaudio Forum => Listening Tests => Topic started by: schnofler on 2005-03-06 15:47:03

Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 15:47:03
I've just released a new version of ABC/HR for Java. You can get it here:

Binary (http://www.rz.uni-frankfurt.de/~bkuckuck/abchr-java-0.5a5.zip)
Sources (http://www.rz.uni-frankfurt.de/~bkuckuck/abchr-java-0.5a5-src.zip)

You'll need the JRE 1.5 to run this (download here (http://java.sun.com/j2se/1.5.0/download.jsp)).
To start the application just click the abchr.jar (on Windows) or run "java -jar abchr.jar" on a command line.

Improvements include better sound output routines, a new ABX component in ABC/HR tests and easier test setup (see next post for details).
Title: ABC/HR for Java 0.5a released
Post by: rjamorim on 2005-03-06 15:52:04
Oh my. Some new development at last

Thank-you very much, Schnofler.

Any hope of adding a XML -> TXT batch result converter? Several people asked for that feature, for readability sake.
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 15:55:58
It has been a while since I released the last version of ABC/HR for Java. I've made small improvements now and then, but until lately never really found the time to polish it up and make it release-worthy. These are the most notable changes:Please note, this has become a pretty complex app, so there are probably some bugs, I didn't catch. I'd be grateful for any feedback.
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 15:57:29
Quote
Any hope of adding a XML -> TXT batch result converter? Several people asked for that feature, for readability sake.

Tools->Process Result Files... 

edit: this probably won't work with older result files, though, because I changed the format a bit. I'll see if I can make it backward-compatible.
Title: ABC/HR for Java 0.5a released
Post by: rjamorim on 2005-03-06 16:06:58
Quote
Tools->Process Result Files... 
[a href="index.php?act=findpost&pid=279739"][{POST_SNAPBACK}][/a]


Hrm... it won't work with my Multiformat test result files. Maybe it only works in encrypted results?
Title: ABC/HR for Java 0.5a released
Post by: rjamorim on 2005-03-06 16:13:38
Quote
Please note, this has become a pretty complex app, so there are probably some bugs, I didn't catch. I'd be grateful for any feedback.
[a href="index.php?act=findpost&pid=279738"][{POST_SNAPBACK}][/a]


Hehe. Just out of being very mean, I tried to load a config file before running the decoding batch file (I.E, the wavs were not where they should be), and it hung ABC/HR java
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 16:23:33
Quote
Hrm... it won't work with my Multiformat test result files. Maybe it only works in encrypted results?

See my edit of the post above. However making it backwards-copmpatible was easier than I thought. I've uploaded a new version which works with the results from your listening tests (I've modified the download links in the first post).
Title: ABC/HR for Java 0.5a released
Post by: rjamorim on 2005-03-06 16:33:04
Quote
See my edit of the post above. However making it backwards-copmpatible was easier than I thought. I've uploaded a new version which works with the results from your listening tests (I've modified the download links in the first post).
[a href="index.php?act=findpost&pid=279753"][{POST_SNAPBACK}][/a]


Excellent. Thanks

I also noticed decrypting key files created by ABC/HR 0.4x won't work. It complains about "I/O Error: Key File could not be opened". Do you plan to add backwards compatibility there, or would it be too much of a hassle?
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 16:34:04
Quote
Quote
Please note, this has become a pretty complex app, so there are probably some bugs, I didn't catch. I'd be grateful for any feedback.
[a href="index.php?act=findpost&pid=279738"][{POST_SNAPBACK}][/a]

Hehe. Just out of being very mean, I tried to load a config file before running the decoding batch file (I.E, the wavs were not where they should be), and it hung ABC/HR java[a href="index.php?act=findpost&pid=279745"][{POST_SNAPBACK}][/a]

Yes, I suppose it won't be too difficult to find more of these bugs. I didn't spend much time making the program behave well to "hostile" users ('cos it's.. you know... so damn boring ).
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 16:37:54
Quote
I also noticed decrypting key files created by ABC/HR 0.4x won't work. It complains about "I/O Error: Key File could not be opened". Do you plan to add backwards compatibility there, or would it be too much of a hassle?

If you used result files from your listening tests, this is somewhat intentional. The encryption in the special versions I made for your tests is different from that used in the regularly released versions (because the availability of source code would make it a lot easier to forge result files).
Title: ABC/HR for Java 0.5a released
Post by: rjamorim on 2005-03-06 16:42:29
Quote
If you used result files from your listening tests, this is somewhat intentional. The encryption in the special versions I made for your tests is different from that used in the regularly released versions (because the availability of source code would make it a lot easier to forge result files).
[a href="index.php?act=findpost&pid=279767"][{POST_SNAPBACK}][/a]


Ah, makes sense. Thanks for clarifying.

I'll wait until it stabilize more, and then I'll add this new version to RareWares, and announce it
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 17:03:51
Quote
I'll wait until it stabilize more, and then I'll add this new version to RareWares, and announce it
[a href="index.php?act=findpost&pid=279768"][{POST_SNAPBACK}][/a]

Great, thanks.
Title: ABC/HR for Java 0.5a released
Post by: ff123 on 2005-03-06 17:40:59
Very nice.  I rarely hear more than a small click and no dropouts between changes, and the switches happen with very small latency; in short, it is now even better than the native Windows version in this regard -- a remarkable achievement!  Who'd've thunk it possible with Java, eh?

The standalone ABX module doesn't allow one the option of "training" or "testing", which I think would be good.

A complete (but more complex) ABX module would also take into consideration type II error risks, but I think for codec testing, maybe that's an unneccessary complication.  See my 1.1 beta 2 version for what that would add to the ABX screen:

http://ff123.net/abchr/abchr.html (http://ff123.net/abchr/abchr.html)

ff123
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-06 19:03:35
Quote
The standalone ABX module doesn't allow one the option of "training" or "testing", which I think would be good.

Yes, I'll probably put that in sometime.

Quote
A complete (but more complex) ABX module would also take into consideration type II error risks, but I think for codec testing, maybe that's an unneccessary complication. See my 1.1 beta 2 version for what that would add to the ABX screen:

Yes, I was aware of your implementation. After all, that's where I copied the idea from  . In the end, I decided against showing (and trying to control) type II error, because I think it can give false impressions. As far as I can see, contrary to type I error, the type II error can only sensibly be calculated, if the user participates. That is, he has to make a reasonable guess about the effect size, and then do his best to complete the ABX test successfully. If the test finishes with a very low type II error this can mean that the user really couldn't hear a difference. But it could also mean that the user just hit the buttons without listening to the samples. Calculation of type II error relies on the assumption that the user plays fair.

So, while an ABX test can effectively prove (with some amount of uncertainty) that the user did hear a difference, it cannot prove that he didn't, and I think displaying the type II error along with the type I error can give the false impression that an ABX test could establish the fact that there's no perceivable difference between two samples.

I don't mean to say that type II error is useless in codec testing, but I think it makes most sense in a situation where we can make a good estimation of effect size and can expect that the users really did serious testing. For example, after a group listening test, effect size can reasonably be taken to be the ratio of people who could hear a difference in a sample, and this can be used to calculate meaningful type II errors for some hypotheses on the data.

Or maybe I got that all wrong? (I don't actually know much about statistics)
Title: ABC/HR for Java 0.5a released
Post by: guruboolez on 2005-03-12 07:28:36
I've noticed some bugs:

• when I restart a test, or start another one, the menu becomes a bit messy. See for example this screenshot (http://foobar2000.net/divers/temp/BUG.PNG): there's two "save test results" command. Currently, I must close and restart the app to avoid this.

• ABX module: when I choose a file for SAMPLE A, the selected file is systematically applied to SAMPLE B. For example, if I want to make SAMPLE A = Sample1, I obtain SAMPLE B = Sample1. I don't know if I'm clear, but I guess that's the easier way to understand is to try on your side

• Not a real bug: You can launch a test with Reference as only file. In other word, a test with nothing to test 

• irritating thing, but maybe intended (in ABX module): If I switch from TEST mode to TRAINING mode, then return back to TEST mode, all my previous trials are erased.



I've performed my recent tests (http://www.hydrogenaudio.org/forums/index.php?showtopic=32132&view=findpost&p=281442) with this alpha release of java ABC/HR, and I never heard any pop or click during the whole test (due to high encoding bitrate, I was very concentrated and therefore highly sensitive to any artifacts, click, noise...). That's a big improvement (previous version of java abc/he were unusable for this kind of tests on my old Duron 800). Thanks a lot for this useful testing software



EDIT: is it really necessary to have two distinct buttons, one for choosing audio files and another to add them in filelist?
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-12 15:32:18
Thank you very much for your extensive testing, guruboolez, it was very helpful.

Quote
when I restart a test, or start another one, the menu becomes a bit messy. See for example this screenshot: there's two "save test results" command. Currently, I must close and restart the app to avoid this.

Fixed.

Quote
ABX module: when I choose a file for SAMPLE A, the selected file is systematically applied to SAMPLE B. For example, if I want to make SAMPLE A = Sample1, I obtain SAMPLE B = Sample1. I don't know if I'm clear, but I guess that's the easier way to understand is to try on your side

Fixed. [Actually, this behaviour was intentional. The problem is, it should not be possible to first do an ABX test "reference vs. sample 1" and then another test "sample 1 vs. reference". So I took the easy way out, and just exchanged the samples in the combo boxes when they were in the wrong order (that is, if you select "Original" for B and then select "Sample 1" as A, it will put Original as A and Sample 1 as B, which is what you described). Now it just counts "sample 1 vs. reference" and "reference vs. sample 1" as the same ABX test.]

Quote
Not a real bug: You can launch a test with Reference as only file. In other word, a test with nothing to test

Fixed.

Quote
irritating thing, but maybe intended (in ABX module): If I switch from TEST mode to TRAINING mode, then return back to TEST mode, all my previous trials are erased.

This was intended, but I can't really figure out a reason anymore, why it shouldn't be allowed to interrupt the "real" ABX test with a training session. Changed.

Quote
is it really necessary to have two distinct buttons, one for choosing audio files and another to add them in filelist?

I admit, this is a bit unintuitive when you just add files as samples (actually, in the previous version there was only one button). However, since it's now possible to add CLI command chains to the filenames (e.g. putting something like "sample.wav | lame397a8 -V 3 %i %o>mp3" in the sample list), I didn't see any other way than to add an extra text field to the dialog.

I changed the links in the first post to point to the fixed version.

Thanks again for your tests, it's very good to know you got through your heavy duty testing without running into all-too serious problems.
Title: ABC/HR for Java 0.5a released
Post by: guruboolez on 2005-03-13 13:38:09
I've also noticed something weird yesterday:
.MP3 files are not recognizsed, but .mp3 are OK.
Title: ABC/HR for Java 0.5a released
Post by: cabbagerat on 2005-03-13 14:10:35
Quote
I've also noticed something weird yesterday:
.MP3 files are not recognizsed, but .mp3 are OK.
[a href="index.php?act=findpost&pid=281784"][{POST_SNAPBACK}][/a]

Thats it! I spent a while yesterday trying to figure out why ABC/HR Java won't accept some of my MP3s. 
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-13 14:32:21
Quote
I've also noticed something weird yesterday:
.MP3 files are not recognizsed, but .mp3 are OK.
[a href="index.php?act=findpost&pid=281784"][{POST_SNAPBACK}][/a]

Thanks. Fixed.
Title: ABC/HR for Java 0.5a released
Post by: lotr on 2005-03-22 23:50:21
I have a problem with mp3 files. It says the file cannot be decoded. Do I need to install something else?
Title: ABC/HR for Java 0.5a released
Post by: Skythus on 2005-03-23 03:38:12
Quote
I have a problem with mp3 files. It says the file cannot be decoded. Do I need to install something else?
[a href="index.php?act=findpost&pid=284696"][{POST_SNAPBACK}][/a]


I have the same problem when choosing mp3 files.
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-23 17:11:19
Quote
Quote
I have a problem with mp3 files. It says the file cannot be decoded. Do I need to install something else?
[{POST_SNAPBACK}][/a] (http://index.php?act=findpost&pid=284696")


I have the same problem when choosing mp3 files.
[a href="index.php?act=findpost&pid=284729"][{POST_SNAPBACK}][/a]

You need to put the MADplay executable (download from [a href="http://rarewares.org/mp3.html]rarewares[/url]) in the abchr directory or somewhere in your path.

(Or, if you don't like MAD, you can use the settings dialog to configure abchr-java to use the decoder of your choice)
Title: ABC/HR for Java 0.5a released
Post by: lotr on 2005-03-23 21:42:13
I put madplay.exe in the abchr directory, but I still get the same error. How do I find out what my path is?
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-23 23:03:37
Quote
I put madplay.exe in the abchr directory, but I still get the same error. How do I find out what my path is?
[a href="index.php?act=findpost&pid=284970"][{POST_SNAPBACK}][/a]

Type "set PATH" on a command prompt.

You could also try starting abchr-java from a command prompt (change to the abchr directory with 'cd "\program files\abchr-java"' [or whatever directory you unzipped it to], then type 'java -jar abchr.jar'). For some errors additional information is printed to the console. If you could post this here, it might help me figure out what's wrong.
Title: ABC/HR for Java 0.5a released
Post by: lotr on 2005-03-24 00:38:21
Ok, this is strange. If I install abchr on my desktop (which is in greek if this makes any difference), I get the cannot decode file error upon pressing Start Test (ABX).

If I install it on "C:\", I don't get an error message, but when I try playing the samples I hear no sound.

This is the console output for abchr installed under "C:\"

Code: [Select]
C:\ABCHR\ABCHR>java -jar abchr.jar
Exception in thread "AWT-EventQueue-0"

java.lang.IllegalArgumentException: Line
unsupported: interface SourceDataLine supporting format PCM_SIGNED

44100.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian, and buffers of 88200 to 88200 bytes

       at com.sun.media.sound.PortMixer.getLine(Unknown Source)
       at abchr.audio.PlaybackThread.play(Unknown Source)
       at abchr.gui.ABXControlPanel.playA(Unknown Source)
       at abchr.gui.ABXControlPanel.access$000(Unknown Source)
       at abchr.gui.ABXControlPanel$1.actionPerformed(Unknown Source)
       at abchr.gui.SimpleAction.actionPerformed(Unknown Source)
       at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
       at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
       at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
       at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
       at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
       at java.awt.Component.processMouseEvent(Unknown Source)
       at javax.swing.JComponent.processMouseEvent(Unknown Source)
       at java.awt.Component.processEvent(Unknown Source)
       at java.awt.Container.processEvent(Unknown Source)
       at java.awt.Component.dispatchEventImpl(Unknown Source)
       at java.awt.Container.dispatchEventImpl(Unknown Source)
       at java.awt.Component.dispatchEvent(Unknown Source)
       at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
       at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
       at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
       at java.awt.Container.dispatchEventImpl(Unknown Source)
       at java.awt.Window.dispatchEventImpl(Unknown Source)
       at java.awt.Component.dispatchEvent(Unknown Source)
       at java.awt.EventQueue.dispatchEvent(Unknown Source)
       at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
       at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
       at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
       at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
       at java.awt.EventDispatchThread.run(Unknown Source)



And here's console output of abchr installed on my desktop:

Code: [Select]
C:\Documents and Settings\X\Επιφάνεια εργασίας\abchr\abchr>java -jar abchr.jar
abchr.audio.DecodeFailedException: File C:\Angelic.mp3 could not be decoded.
Call to madplay  failed.
       at abchr.audio.SampleFactory$Decoder.process(Unknown Source)
       at abchr.audio.SampleFactory.createSample(Unknown Source)
       at abchr.gui.ABXPanel$SampleLoader.run(Unknown Source)
       at abchr.gui.ABXPanel$4.construct(Unknown Source)
       at guiutils.SwingWorker$2.run(Unknown Source)
       at java.lang.Thread.run(Unknown Source)
javax.sound.sampled.UnsupportedAudioFileException: File C:\Angelic.mp3 could not be decoded.
Call to madplay  failed.
       at abchr.audio.SampleFactory.createSample(Unknown Source)
       at abchr.gui.ABXPanel$SampleLoader.run(Unknown Source)
       at abchr.gui.ABXPanel$4.construct(Unknown Source)
       at guiutils.SwingWorker$2.run(Unknown Source)
       at java.lang.Thread.run(Unknown Source)


madplay.exe is installed in the same directory as the file abchr.jar. I also put it inside C:\Windows\system32 which is in the PATH, but nothing changed.
Title: ABC/HR for Java 0.5a released
Post by: guruboolez on 2005-03-24 07:29:48
I have the same problem. I can decode flac files without problems, but mp3 are not usable. I thought first that the filename was too long, or something like that. But even with a basic filepath (c:\file.mp3) the program can't decode the file.

I'm using the latest madplay.exe available on rarewares.org
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-24 09:07:49
Quote
Ok, this is strange. If I install abchr on my desktop (which is in greek if this makes any difference), I get the cannot decode file error upon pressing Start Test (ABX).

If I install it on "C:\", I don't get an error message, but when I try playing the samples I hear no sound.

OK, I think the first error is indeed caused by your greek desktop. The command line interface can't handle Unicode paths. I uploaded a fixed version (link in the first post) which should work in your case (though it still won't be able to decode files whose pathnames contain non-ASCII characters).

As for the second error, changing your playback device in the settings dialog might help. I don't have time to look into this now, but I will later today.
Title: ABC/HR for Java 0.5a released
Post by: lotr on 2005-03-24 12:44:29
Thank you Schnofler! It works fine now. The second error was caused by using "Port NVIDIA® nForce™ Audio" as the playback device. The other device options are ok.
Title: ABC/HR for Java 0.5a released
Post by: ff123 on 2005-03-24 14:45:07
schnofler:

http://www.hydrogenaudio.org/forums/index....ndpost&p=285190 (http://www.hydrogenaudio.org/forums/index.php?showtopic=32601&view=findpost&p=285190)

To support the upcoming listening test, are the options in the link above specifiable from the configuration file?

ff123
Title: ABC/HR for Java 0.5a released
Post by: guruboolez on 2005-03-30 20:36:58
mp3 decoding works correctly now.

There's still a minor 'bug'. It occurs when you try to open an audio file, then switch from abc/hr to another application (e.g. explorer, in order to locate the path of the tested files), and then switch again to abc/hr. When you do this, the window corresponding to the "OPEN FILE" command is behind the main window of abc/hr, which doesn't respond (because the active window is the "OPEN FILE" one, hidden and therefore not accessible).

First time it occurs, I've killed the app with the task manager. Then I've found another solution: WINDOWS + D in order to minimize all opened application, then switching to abc/hr.


I'm probably not clear at all. To repeat the bug, just:
1/ open abc/hr, and launch a new ABC test
2/ click on the "open file" button
3/ open explorer
4/ switch to ABC/HR
=> the program won't answer I suppose

PS: I don't know if it explains the issue: I'm working in 1024 x 768 mode.
Title: ABC/HR for Java 0.5a released
Post by: schnofler on 2005-03-30 21:03:07
Yes, I saw that bug before. Another solution is to switch to the ABC/HR window by Alt+Tab instead of using the taskbar. For some reason, the dialog will appear in front when you do it that way. I supposed this quirkiness is a bug in Swing, because I'm not explicitly doing anything in the program that would respond differently to task switches via task bar or Alt+Tab. I'll see if I can avoid this somehow.
Title: ABC/HR for Java 0.5a released
Post by: rjamorim on 2005-06-02 04:19:44
Hey, schnofler

So, any news? Is it stable enough to be released as 0.5 final and be announced at RareWares?
Title: ABC/HR for Java 0.5a released
Post by: guruboolez on 2005-06-22 11:27:43
I've a problem with alpha5. I've recently reinstall a fresh XP system. ABC/HR is working fine, fur for unknow reasons, I can't get it to decode vorbis files. All other are working fine: mp3, flac, mpc, wv.
oggdec 1.01 (downloaded from rarewares yesterday) is in path (like other decoders).

I made a screenshot of the current and default settings of ABC/HR:
http://guruboolez.free.fr/temp/abchr_vorbis.png (http://guruboolez.free.fr/temp/abchr_vorbis.png)

I've tried many variations, changing %i %o order, removing -o, etc... no ways to make it work. Any idea?

N.B. I had no problems in the past (old XP installation), even with alpha5. Maybe because I've installed alpha5 over older versions?