Key
This line was removed.
This word was removed. This word was added.
This line was added.

Changes (4)

View Page History
| *Detailed description* | Informally the workflow is as follows: \\
\\
SB currently owns a small collection of mp3 real audio filer files (digitised cd’s). They are part of the Danish publications that SB preserves. The rest of the Danish cd collection is in WAV. This format has been chosen as the preservation format as this is a raw format, which needs less interpretation or fewer layers of interpretation to be understood by humans and it is also a robust format. \\
\\
The Danish Radio Broadcast mp3 files from the [SP:mp3 (128kbit) with Danish Radio broadcasts] dataset are also to be migrated to WAV according to policy. The actual migration will be done using FFmpeg which is one of the SCAPE Action Services recommended tools. The QA will be split into a number of steps. The first step is validation that the migrated file is a correct file in the wanted format. This is done using JHOVE2 to analyse and provide a JHOVE2 property xml file, and next using a Beanshell in Taverna to check that the jhove2 feature “isValid” is true. The second step compares the header information properties of the original and the migrated files to see if they are ‘close enough’. This is done using FFprobe to extract header information and Taverna Beanshells to compare the extracted properties. Another step could be to extract more properties by ‘playing’ the two files. \\
\\
The third step uses an analysis tool comparing the sound waves. To do this we have to ‘play’ or interpret the mp3 files. Just as a human needs to ‘play’ or interpret the files to hear the sound. A human cannot look at fileA and tell if it is correct or corrupted. We choose a player P and define ‘fileA played on player P’ to be correct. A small randomly chosen subset of files will be played on player P and checked by human ears to be correct making this definition probable. The player used in this workflow is MPG321. Note that MPG321 is an independent implementation of an mp3-decoder -- thus independent from FFmpeg, which is used to actually migrate the file. The result of playing fileA on player P (when noone is listening) is a WAV file. The migrated file is already a WAV file, and we can compare the two files using the analysis tool xcorrSound/migrationQA, see [SP:SO2 xcorrSound QA audio comparison tool].. \\
The full MP3 to WAV Migration + QA workflow has been tested on a shorter file using the ONB webservices. The input mp3 file was the Creative Commons example file [http://ia700308.us.archive.org/21/items/Radiators2008-09-19/Rads2008-19-09-d1t02_vbr.mp3. |http://ia700308.us.archive.org/21/items/Radiators2008-09-19/Rads2008-19-09-d1t02_vbr.mp3]The total time was 47.9 seconds. The time for FFmpegMigrate 12.2 seconds. For FFprobeExtractCompare 5.5 seconds. For JHove2Validate 9.6 seconds. And for _migrationQA comparison including MPG321 decoding_ 31 seconds.The output wav file is available from [http://fue.onb.ac.at/scape/tmp/Rads2008-19-09-d1t02_vbr.mp3_SCAPEFFMPEG25305Service_wavFile_4413676179244047691.wav. |http://fue.onb.ac.at/scape/tmp/Rads2008-19-09-d1t02_vbr.mp3_SCAPEFFMPEG25305Service_wavFile_4413676179244047691.wav]The JHOVE2 validation, the FFprobe comparison and the migrationQA comparison returned true, and the output of the migrationQA comparison looks like this: \\
\\
\\ {noformat}
block 1: 0.999998 1152
block 2: 1 1152
block 45: 0.999999 1152
block 46: 0.999978 1152
{noformat}The solution performs as expected and solves the corresponding issue,but further testing for accuracy and performance is required. \\ |