Tuesday, February 27, 2007

workflow, Langlois report outline, VAS problem

1) Discussed workflow outline with Beinan and completed a draft and sent to Beinan for comments. Specifies expected metadata at the handoff of the OPD files, and the re-iterative communication between us. See below:


Expected with each OPD file:
i) vas_offset (see Glossary)
ii) vas_size (see Glossary)
iii) an indication of which groove I will extract data from. This
can be an image file of the VAS display that has been edited in Paint
with a mark on the groove of interest.

Simon's workflow:

a) Beinan does not logout of Vision, move the record or turn off the
computer until Simon has completed (4). After step (3), the data will
not be easily reproduced since the (0,0) stage position drifts upon
each initialization.

b) Retrieve OPD files, and metadata (i), (ii), (iii) from the
temporary data storage folder on the Wiki. http://132.206.14.10/mitac/data/mitac_data_table.htm

Time: 1 h


c) Check that the indicated groove in (iii) for each database lines
up accordingly when loading the images in a large array, each offset
by (i). If the passed off data is correct, we will see the grooves
indicated in (iii) touch each other perfectly between VAS's. If
problem is perceived, inform Beinan on which VAS's to re-measure.

Time: 1-2 h


d) Check quality of grooves within each VAS. If confident that
software will be able to handle it, inform Beinan to turn off machine.
After this point, new data cannot be easily re-measured.

Time: 2-3 h

e) Manually change variables in scripts to account for database
specific details: vas_offset, vas_size, and the specifications of the
initial subarray that will be analyzed by the block-processor. The
initial subarray begins on the groove described in (iii) and traverses
counter-clockwise. Save raw radial distances.

Time: >4 h, depending on amount of data and any troublesome erroneous
datasets that may disturb the groove tracing algorithm

f) Convert raw radial distances to audio and create presentables
(i.e. graphs, etc.) for discussion and analysis.

Time: 1 h


2) Rough Langlois report outline of accomplishments and future plans. Please provide feedback Ich/Beinan
Accomplishments:
- early testing and familiarization with Wyko NT8000 (bug reports, exploring capabilities and issues with sidewalls, data format export)
- resesarch into previous work and vinyl anomalies (Wiki page on Distortion and imperfections in stylus-based vinyl playback, take concepts from Haber and Fribourg to implement MATLAB software)
- software development, maintenance, and bug fixes (ASCII parser, groove tracing algorithm, radial distance extraction algorithm, block processing algorithm), works by differentiating the lateral undulations of a groove bottom
- audio extraction (<1s) from 78rpm laterally-cut Count Basie "The King" and monophonic sine tone from McGill Audio Test Record
- various anomalies observed and adjusted for during this process (erroneous data in grooves, missing bottom groove information, rising/falling trends, etc.)

Future Plans:
- publish findings to a MIR conference
- move software to version 2, completely 3D with scaleable robustness (tradeoff with speed) to deal with non-idealities in the data when tracing a groove or extracing radial distance
- software will extract 1D slices of height information across the groove at each sampling increment and project it onto a line and display the undulating groove as a 3D mesh
- should be able to extract data from laterally-cut and vertically-cut records as well
- should be compatible with workflow proposed above


3) Worked with Beinan today to explore a VAS stitching problem. We are not sure of the origin, but it may be due to a modification of the ConfigEditor.exe settings. There are several .cfg files - we are not sure which one loads the default factory settings.

4) getaudio-1.0.7 description on Wiki completed.
http://coltrane.music.mcgill.ca:16080/DDMAL/index.php/Audio_Extraction_Software_%28getaudio-1.0.7%29

5) Continuing coding work as discussed earlier

Friday, February 23, 2007

Haber document re-read, Wiki update, S/W update

1) Review all Haber documents new and old for method of obtaining radius. My comments on Haber's process for 78rpm lateral groove outlined below:

a) Illuminate and capture image such that groove bottom is sharply contrasted with sidewalls. Captured images show clear bright streaks and sharply contrasting sidewalls as dark streaks.

b) Program determines disk center and follows groove trajectory spiralling inwards in cylindrical coordinates (R, Φ)

c) Every 8 microns along groove, measure R of groove bottom by determing where the bright groove bottom streak transitions to the sidewalls. This leads to 2 R measurements every 8 microns (61.3 kHz @ 60mm radius), corresponding to the inner and outer light/dark transition of the groove bottom. Strong dependence on edge quality i.e. sharpness of contrast between groove bottom and sidewalls.

d) Take average of the 2 R measurements at every 8 microns

e) Find Ro, C, A, and Φo such that R’-R is minimized for the whole dataset where R’ = Ro + C*Φ’ + A*(sin(Φ’ + Φo))^2.
i. Ro fit eliminates DC bias
ii. C*Φ’ fit eliminates linear progressive bias. This results from constant steady pressure against the stylus as the groove pushes inward, thus there is no current-generating velocity of the stylus magnet in the inducting coil of the cartridge.
iii. A*(sin(Φ’ + Φo))^2 fit eliminates oscillating “wow” effect. This would be a low frequency modulation effect, with a frequency in the same magnitude as the disk revolution frequency. I missed this before - this acknowledges the existence of the sinusoid-ish rising/falling trends in the data we observed.

f) Once R’ is found to optimally fit R, R’-R is taken as the true undulation of the stylus magnet.


2) Working on Wiki update to fully document the software that was used for the extraction of the sine test tone in November. Will document each module separately.


3) Software update to version 2.0.0 moving along. Plan is to work in 3D, with more intelligent groove tracing algorithm. More details to follow.