View Full Version : Audio CD Health Check
Jim Lesurf[_2_]
April 18th 15, 05:23 PM
I'm just finishing a program that does a simple 'Health Check' on the
quality of recordings on Audio CD. As an illustration of its use I've done
a page at
http://www.audiomisc.co.uk/HFN/HealthCheck/CD.html
to show some examples of the kinds of effects it will show.
The first version of the program I wrote will appear on my site in the next
day or two. That runs on RISC OS, but I'll also do a Linux version when I
get around to it. The source code is included in case anyone wants to make
use of it.
Cheers,
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Brian Gaff[_2_]
April 19th 15, 12:03 PM
Health check? what is it actually checking for?
Anyway, as a Windoze user I'm obviously not allowed to use it. :-)
Brian
--
From the Sofa of Brian Gaff Reply address is active
"Jim Lesurf" > wrote in message
...
> I'm just finishing a program that does a simple 'Health Check' on the
> quality of recordings on Audio CD. As an illustration of its use I've done
> a page at
>
> http://www.audiomisc.co.uk/HFN/HealthCheck/CD.html
>
> to show some examples of the kinds of effects it will show.
>
> The first version of the program I wrote will appear on my site in the
> next
> day or two. That runs on RISC OS, but I'll also do a Linux version when I
> get around to it. The source code is included in case anyone wants to make
> use of it.
>
> Cheers,
>
> Jim
>
> --
> Please use the address on the audiomisc page if you wish to email me.
> Electronics
> http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
> Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
> Audio Misc http://www.audiomisc.co.uk/index.html
>
Jim Lesurf[_2_]
April 19th 15, 01:34 PM
In article >, Brian Gaff
>
wrote:
> Health check? what is it actually checking for?
Have you read the text on the webpage I wrote to explain that?
> Anyway, as a Windoze user I'm obviously not allowed to use it. :-)
Well, no one is forcing you to use it so far as I know. :-)
The source code (in 'C') is provided with the package I've done so far
which can be found from a link on
http://www.audiomisc.co.uk/software/index.html
I will do a Linux version in due course. Again with source code which a
Windows programmer should be able to port if they wish. I've not used
Windows for many years. Life's too short. :-)
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
John Williamson
April 19th 15, 01:41 PM
On 19/04/2015 13:03, Brian Gaff wrote:
> Health check? what is it actually checking for?
> Anyway, as a Windoze user I'm obviously not allowed to use it. :-)
> Brian
>
It's a program that will do a count of how often each sample value
occurs in a particular piece of audio, and produce a pretty picture
which can be used to give you an idea of how well recorded a CD is. It
will show clipping and levels that are too low, as well as some problems
with the analogue to digital conversion.
If the source code had been included as promised, it could probably have
been compiled to run Under Windows, but there's no sign of it on the
site that I can find, so I can't try it.
--
Tciao for Now!
John.
Jim Lesurf[_2_]
April 19th 15, 04:16 PM
In article >, John Williamson
> wrote:
> If the source code had been included as promised, it could probably have
> been compiled to run Under Windows, but there's no sign of it on the
> site that I can find, so I can't try it.
A link to the software is on the AudioMisc site's software page.
I produced the 'examples' page first to illustrate what the process can
show. Needed to refer to that in the 'Help' in the program. So at that
point the program wasn't available.
....And I did that today. You can find the !CD_HealthCheck program via
http://www.audiomisc.co.uk/software/index.html with source code included in
the zip. Look in the RO-only section for now.
When I put up the program I also added a link to the software page from the
examples page. (I also added another example of the kind of effect the
program can show up.)
However that version uses RISC OS swi calls to access the optical drive and
read the frames of audio data. It also uses a Norcroft/Acorn 'C' which
isn't the same as GCC's. So it would need changing to compile for Windows.
I need to work out how to use libcdio, then I can make a Linux version
available - again with sources. I think libcdio is part of GCC so that
source code should also work if recompiled for Windows. But I don't use
Windows so would have to leave that to someone else.
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Michael Kellett
April 20th 15, 07:41 AM
Jim Lesurf:
> I'm just finishing a program that does a simple 'Health Check' on the
> quality of recordings on Audio CD. As an illustration of its use I've
done
> a page at
>
> http://www.audiomisc.co.uk/HFN/HealthCheck/CD.html
>
> to show some examples of the kinds of effects it will show.
>
> The first version of the program I wrote will appear on my site in the
next
> day or two. That runs on RISC OS, but I'll also do a Linux version
when I
> get around to it. The source code is included in case anyone wants to
make
> use of it.
>
> Cheers,
>
> Jim
>
> --
> Please use the address on the audiomisc page if you wish to email me.
> Electronics
http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
> Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
> Audio Misc http://www.audiomisc.co.uk/index.html
Very interesting - Thanks.
I have several CDs which are obviously ruined by clipping or svage
compression and are, for me, unlistenable. I wonder how many of the ones
I just don't like very much have similar flaws at a slightly less
obvious level.
If you ever get your code onto an OS I can run I'll give it go.
MK
John Williamson
April 20th 15, 08:29 AM
On 19/04/2015 17:16, Jim Lesurf wrote:
> In article >, John Williamson
> > wrote:
>
>
>> If the source code had been included as promised, it could probably have
>> been compiled to run Under Windows, but there's no sign of it on the
>> site that I can find, so I can't try it.
>
> A link to the software is on the AudioMisc site's software page.
>
> I produced the 'examples' page first to illustrate what the process can
> show. Needed to refer to that in the 'Help' in the program. So at that
> point the program wasn't available.
>
> ...And I did that today. You can find the !CD_HealthCheck program via
> http://www.audiomisc.co.uk/software/index.html with source code included in
> the zip. Look in the RO-only section for now.
>
Thanks, Got that, I'll delve into it later.
--
Tciao for Now!
John.
Jim Lesurf[_2_]
April 20th 15, 09:12 AM
In article >, Michael Kellett
> wrote:
> Very interesting - Thanks.
> I have several CDs which are obviously ruined by clipping or svage
> compression and are, for me, unlistenable. I wonder how many of the ones
> I just don't like very much have similar flaws at a slightly less
> obvious level.
FWIW There is also a WAV_Stats program on my software page. This scans an
LPCM wave file and measures the peak levels during each 0.1 sec chunk, then
shows the results. That can show clipping effects. It is available for RO
and Linux, but the source code is provided in case anyone wants to port it
to other systems or tweak it as suits them. (Note that it only works with
wave files that have a plain 44-byte header. So you'd need to clean out any
other metadata using something like my WAV_Cleaner first.)
> If you ever get your code onto an OS I can run I'll give it go.
Well, I do plan to do the following when I have the time.
1) Do a Linux version. That should be easy if I can work out how to use a
GCC 'C' library called 'libcdio' as I can then just port my RO program.
Once that is done the source code will also be provided. And I think as
part of GCC the code should be portable to Windows and Macs.
2) Do a 'file health check' version. i.e. one that can scan both 16 and 24
bit LPCM audio files. I already have a 16bit version but haven't decided
the best way to treat 24bit to get similar output.
Beyond that the main problem here is that a program for LPCM wave files and
covering 24bit is easy. But writing a program that can read, say, flac, is
much harder for me. But again, when I get somewhere I'll produce RO and
Linux versions with source code, and the Linux code may well be portable to
Windows and Macs.
However I don't use Windows or Macs, so for them all I could do is provide
source code for Linux and encourage anyone interested to do versions as
they find convenient.
That said, a Raspberry Pi will run RO and Linux... :-)
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Jim Lesurf[_2_]
April 20th 15, 09:21 AM
In article >, John Williamson
> wrote:
> On 19/04/2015 17:16, Jim Lesurf wrote:
> > In article >, John Williamson
> > > wrote:
> >
> >
> >> If the source code had been included as promised, it could probably
> >> have been compiled to run Under Windows, but there's no sign of it on
> >> the site that I can find, so I can't try it.
> >
> > A link to the software is on the AudioMisc site's software page.
> >
> > I produced the 'examples' page first to illustrate what the process
> > can show. Needed to refer to that in the 'Help' in the program. So at
> > that point the program wasn't available.
> >
> > ...And I did that today. You can find the !CD_HealthCheck program via
> > http://www.audiomisc.co.uk/software/index.html with source code
> > included in the zip. Look in the RO-only section for now.
> >
> Thanks, Got that, I'll delve into it later.
If (unlike myself at present!) you understand libcdio you can probably
replace the RO 'swi' calls with proceedures that use libcdio. Note, though,
that the code is Norcroft/Acorn 'C' and that, for example, it regards 'int'
as 32-bit. So changes like int -> long may be needed depending on your
compiler, etc.
I'll make equivalent changes when I do a GCC version for Linux. But not got
around to it yet. First, I have to get my head around libcdio...
Afraid that for historic reasons I use GCC for Linux and Norcroft for RO.
Never made the effort to standardise on GCC because I'm so used to Norcroft
on RO and its particular tricks.
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Jim Lesurf[_2_]
April 25th 15, 08:05 AM
On 20 Apr, wrote:
> 2) Do a 'file health check' version. i.e. one that can scan both 16 and
> 24 bit LPCM audio files. I already have a 16bit version but haven't
> decided the best way to treat 24bit to get similar output.
I've now produced a RO program that does a statistical analysis on the
samples in flac format audio files. The analysis is similar to that done on
Audio CD tracks by CD_HealthCheck, so this new program is called - with
amazing originality - Flac_HealthCheck.
It can be obtained from
http://www.audiomisc.co.uk/software/index.html
and it should work on 16 or 24 bit stereo files.
It uses the flac utility. I plan to do a port to Linux sometime, but source
code is provided in case anyone else wants to use it.
The current version has one quirk due to the way it reads the flac file in
5-sec chunks. This means that if the file isn't exactly a multiple of 5
seconds long, the last few secs are ignored. I plan to fix that once I've
written some more code to deal with it. However this quirk generally only
has a small effect on the resulting statistics and you can still spot if a
recording has flaws like those shown up by CD_HealthCheck.
Cheers,
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Jim Lesurf[_2_]
April 27th 15, 03:13 PM
Just to say that I've now released a new version that should have fixed the
quirk. So this should now scan all the audio data in the flac file being
examined.
Jim
On 25 Apr, wrote:
> I've now produced a RO program that does a statistical analysis on the
> samples in flac format audio files.
> It can be obtained from
> http://www.audiomisc.co.uk/software/index.html
> The current version has one quirk due to the way it reads the flac file
> in 5-sec chunks.
[snip]
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Jim Lesurf[_2_]
May 3rd 15, 10:53 AM
Just to say that I've updated my Audio CD 'Health Check' program and it now
does an FFT on the probability distribution of sample values. This makes it
easier to diagnose the cause of various periodic flaws in the audio data.
In some cases I've been able to work out what gain change was applied
(without dither or shaping) that fouled up the results.
As before, the source code (in 'C') is provided with the package and can be
obtained via
http://www.audiomisc.co.uk/software/index.html
I'll add the new ability to the Flac check program, then start on Linux
versions which others should find easier to port to Windows/Mac if they
wish.
That said, the Flac program should be relatively easy to port as it relies
on the standard 'flac' utility rather than do its own flac -> LPCM
recovery.
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Jim Lesurf[_2_]
May 12th 15, 05:15 PM
For anyone interested, this is to let people know that I've now released
improved versions of my two audio 'Health Check' programs. Along with some
minor improvements they also now both can do 'interval spectra' of the
statistical distribuition of how often sample values occur. This makes it
easier to spot/diagnose some kinds of flaws in ADCs used for recordings or
faults in the way the audio was 'mastered'.
As before, the programs (with source code) can be found via
http://www.audiomisc.co.uk/software/index.html
I'm now happy that the programs do the full analysis I wish, so my next
step will be to create Linux versions, again with source code so anyone
familiar with GCC 'C' can port/use the methods on other computer platforms
if they wish.
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Jim Lesurf[_2_]
May 16th 15, 10:53 AM
I've just put up a new webpage to show some examples of the results you can
get by using !Flac_HealthCheck. In particular it illustrates how you can
tell a 'well made' 96/24 flac file from a 'poorly' made one that may be no
better than a CD (or worse). You can find the page at
http://www.audiomisc.co.uk/HFN/HealthCheck/Flac.html
although if you've not read
http://www.audiomisc.co.uk/HFN/HealthCheck/CD.html
I'd recommend reading that first as I avoided duplicating some of the
explanations of the analysis process.
I'm currently working on Linux versions of the programs. (More
specifically, learning how to use libcdio and paranoia libraries to rip
audio from CDs. as basis for the Cd Health Check process on Linux.)
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
Jim Lesurf[_2_]
May 28th 15, 08:34 AM
I've updated the programs again. Mostly minor bugfixes, but I have made one
change to the Linux Flac_HealthCheck to allow the user to choose where its
temporary working files are stored during analysis. (I use this to put them
on ram, which speeds things up quite noticably.)
As before, the programs (with source code) can be found at
http://www.audiomisc.co.uk/software/index.html
And examples of results, explanations, etc, can be found on
http://www.audiomisc.co.uk/HFN/HealthCheck/CD.html
http://www.audiomisc.co.uk/HFN/HealthCheck/Flac.html
Jim
--
Please use the address on the audiomisc page if you wish to email me.
Electronics http://www.st-and.ac.uk/~www_pa/Scots_Guide/intro/electron.htm
Armstrong Audio http://www.audiomisc.co.uk/Armstrong/armstrong.html
Audio Misc http://www.audiomisc.co.uk/index.html
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
SEO by
vBSEO 3.0.0