mirror of
https://github.com/OPSnet/Logchecker.git
synced 2026-11-08 08:12:22 -10:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a7bbb966a0 | ||
|
|
d34e1151af | ||
|
|
e7539b976d | ||
|
|
a1086e95cc | ||
|
|
525b5fc17d | ||
|
|
63c7d8f6b5 | ||
|
|
b30b3ddafc | ||
|
|
fada179801 | ||
|
|
2cd35da466 | ||
|
|
5f6e16d143 | ||
|
|
3b6198375d |
No files matched your search
+2
-1
@@ -45,10 +45,11 @@ before_deploy:
|
||||
deploy:
|
||||
provider: releases
|
||||
api_key:
|
||||
secure: jlvbD7nzOz/8vssSI75loBMJE9OosAofTu1IDMc3bfxfRaPT6c2duebJF7Bm0VCTGYWK3Wc+19wwyLpCMoueUUEtKqi6RGIUQyboQvbSEe/cje7/9PgqmFstV8LdBLNOwRVj01YcmGw/iMVc+GxPTtDZtcwVU9bzlMCwXFAlggeId0Qw6KgxN+wTbm+oS3zrIh+TnWhgeWhmMYn0/UAEUEQCsYDI+UJjGWStWdpdJqdMhidg5GQyVtomFg82ZjIw+ywYGMGgq38S4PMRBLoqbxuWs++9LPblWboxtktb4+U0xUMdHfrv/r94b8+nI2SJ1xzzUKTXS/glkk0lJAovSYew6jJiu+gsejiNyR89WNgRGwnWAUA8ZBptrM2b3sxLuZ6RuxQXP3TMpxhQQE/3aodOrACPOHa8uuct0JAj/a2p0WCIj4r76McHrXTjFzDPsbdxD1GwOQmFJGqY5EV7Vez6q++Erp/64JEZJk9/jieTv0arLe76VZPQcZ6TB488tH699MvK7Gg1cc4114FbKIEZrOKF2FOrMAZJ3husjELN0zJYeRPZUy6Y7A2PAWsqfdswlxjP9IxuDFVE/3TW8O1sVItWo4+SSkKTILzsC0qgxVL2lW9WDmyka8U5T2SAa8ye/RRZ3FJYugep49wjUsfLraRdA+Lj7KQXSaMlFa8=
|
||||
secure: fsMbI9nYrxmSQRXNjNPqd7Oxdnnv5HyKPd2Va7AqQzbOsdTTPY5tz3/6RdeaG2cPjG19qxbWu/g21ysb/hWWeVyFpmIc8pl4TZcJTOrv28VNJiru87ynjjCKbP5N0AD6pnaVs3A6u8zjVZy2vlW1eOXU18xgTgA+yk/IoZX2AChItXdphgVI0rd941d/hkrnMj5shzy1Uv6wgbJSpD27UQ4d3zgGAgc6gteuXGRy0dizo4g0VrvQ21rpezLAgT0e1cefjIqAYwLFP2tm/Nsi5QLLYhSsQptkCUto+gFeGCLBgIMV5dz2IWIkFXQOdiVYjIGmT86GFN32bMLMDpO0ppTc8NPDjnni1cnM6/N/gMm/JvmLzGHMMEGYMgO+Yg1qgQi8MwjTk5twklsiJSUHIsa1WWo1+uj1rO5TQ8CzgajmNr5upJ9PI75rbOw+cn2DzR8UBPVDl+1YxJfz4XhmRgSdF98s+7kGS3Ehaby+gXnH76m2dU43CWukaz9hwGvDdG4nc0C7XDtLq15vbKcK5BywI0pCJRVwa81KBrt9mP4CU1hY2VidS1iQubegJ59bNN/B+xBW92i4AmBd1QhbBnExQ05xFpusIxjSx/7ty9GNTqm3P5JDRQUj+dgNGNgfoaq/ACkWfd68W/IHqPLnh6saReQd2mrTBKtoDs0Atik=
|
||||
file: logchecker.phar
|
||||
skip_cleanup: true
|
||||
on:
|
||||
tags: true
|
||||
repo: OPSnet/Logchecker
|
||||
php: '7.2'
|
||||
condition: $PREFER_LOWEST != 1 && $Lint != 1
|
||||
@@ -93,8 +93,8 @@ list($score, $details, $checksum_state, $log_text) = $logchecker->parse();
|
||||
|
||||
### Installation
|
||||
|
||||
```
|
||||
$ composer require orpheusnet/logchecker
|
||||
```bash
|
||||
composer require orpheusnet/logchecker
|
||||
```
|
||||
|
||||
### Usage
|
||||
@@ -107,15 +107,17 @@ require __DIR__ . '/vendor/autoload.php';
|
||||
use OrpheusNET\Logchecker\Logchecker;
|
||||
|
||||
$logchecker = new Logchecker();
|
||||
$logchecker->new_file('/path/to/log/file');
|
||||
list($score, $details, $checksum_state, $log_text) = $logchecker->parse();
|
||||
print('Score: ' . $score . "\n");
|
||||
print('Checksum: ' . $checksum_state . "\n");
|
||||
$logchecker->newFile('/path/to/log/file');
|
||||
$logchecker->parse();
|
||||
print('Ripper : ' . $logchecker->getRipper() . "\n");
|
||||
print('Version : ' . $logchecker->getRipperVersion() . "\n");
|
||||
print('Score : ' . $logchecker->getScore() . "\n");
|
||||
print('Checksum : ' . $logchecker->getChecksumState() . "\n");
|
||||
print("\nDetails:\n");
|
||||
foreach ($details as $detail) {
|
||||
foreach ($logchecker->getDetails() as $detail) {
|
||||
print(" {$detail}\n");
|
||||
}
|
||||
print("\nLog Text:\n{$log_text}");
|
||||
print("\nLog Text:\n\n{$logchecker->getLog()}");
|
||||
```
|
||||
|
||||
## Building
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "orpheusnet/logchecker",
|
||||
"description": "Logchecker for validating logs generated from supported ripping programs (like EAC and XLD)",
|
||||
"version": "0.9.0",
|
||||
"version": "0.9.3",
|
||||
"license": "Unlicense",
|
||||
"type": "library",
|
||||
"authors": [
|
||||
|
||||
Generated
+93
-41
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "ee60272068de4ef2fea35d003f31be8d",
|
||||
"content-hash": "cf86be9f969915a6352efc74903d5f86",
|
||||
"packages": [
|
||||
{
|
||||
"name": "psr/container",
|
||||
@@ -57,7 +57,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/console",
|
||||
"version": "v5.0.7",
|
||||
"version": "v5.0.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/console.git",
|
||||
@@ -129,6 +129,20 @@
|
||||
],
|
||||
"description": "Symfony Console Component",
|
||||
"homepage": "https://symfony.com",
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-03-30T11:42:42+00:00"
|
||||
},
|
||||
{
|
||||
@@ -350,16 +364,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/process",
|
||||
"version": "v5.0.7",
|
||||
"version": "v5.0.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/process.git",
|
||||
"reference": "c5ca4a0fc16a0c888067d43fbcfe1f8a53d8e70e"
|
||||
"reference": "3179f68dff5bad14d38c4114a1dab98030801fd7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/process/zipball/c5ca4a0fc16a0c888067d43fbcfe1f8a53d8e70e",
|
||||
"reference": "c5ca4a0fc16a0c888067d43fbcfe1f8a53d8e70e",
|
||||
"url": "https://api.github.com/repos/symfony/process/zipball/3179f68dff5bad14d38c4114a1dab98030801fd7",
|
||||
"reference": "3179f68dff5bad14d38c4114a1dab98030801fd7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -395,7 +409,21 @@
|
||||
],
|
||||
"description": "Symfony Process Component",
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2020-03-27T16:56:45+00:00"
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-04-15T15:59:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/service-contracts",
|
||||
@@ -457,16 +485,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
"version": "v5.0.7",
|
||||
"version": "v5.0.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/yaml.git",
|
||||
"reference": "ad5e9c83ade5bbb3a96a3f30588a0622708caefd"
|
||||
"reference": "482fb4e710e5af3e0e78015f19aa716ad953392f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/yaml/zipball/ad5e9c83ade5bbb3a96a3f30588a0622708caefd",
|
||||
"reference": "ad5e9c83ade5bbb3a96a3f30588a0622708caefd",
|
||||
"url": "https://api.github.com/repos/symfony/yaml/zipball/482fb4e710e5af3e0e78015f19aa716ad953392f",
|
||||
"reference": "482fb4e710e5af3e0e78015f19aa716ad953392f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -526,7 +554,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-03-30T11:42:42+00:00"
|
||||
"time": "2020-04-28T17:58:55+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [
|
||||
@@ -807,24 +835,21 @@
|
||||
},
|
||||
{
|
||||
"name": "phpdocumentor/reflection-common",
|
||||
"version": "2.0.0",
|
||||
"version": "2.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpDocumentor/ReflectionCommon.git",
|
||||
"reference": "63a995caa1ca9e5590304cd845c15ad6d482a62a"
|
||||
"reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/63a995caa1ca9e5590304cd845c15ad6d482a62a",
|
||||
"reference": "63a995caa1ca9e5590304cd845c15ad6d482a62a",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/6568f4687e5b41b054365f9ae03fcb1ed5f2069b",
|
||||
"reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~6"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
@@ -855,7 +880,7 @@
|
||||
"reflection",
|
||||
"static analysis"
|
||||
],
|
||||
"time": "2018-08-07T13:53:10+00:00"
|
||||
"time": "2020-04-27T09:25:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpdocumentor/reflection-docblock",
|
||||
@@ -1021,21 +1046,24 @@
|
||||
},
|
||||
{
|
||||
"name": "phpstan/phpstan",
|
||||
"version": "0.12.18",
|
||||
"version": "0.12.19",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpstan/phpstan.git",
|
||||
"reference": "1ce27fe29c8660a27926127d350d53d80c4d4286"
|
||||
"reference": "054f6d76b12ba9a6c13a5a8d5fcdf51219615f4d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/1ce27fe29c8660a27926127d350d53d80c4d4286",
|
||||
"reference": "1ce27fe29c8660a27926127d350d53d80c4d4286",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/054f6d76b12ba9a6c13a5a8d5fcdf51219615f4d",
|
||||
"reference": "054f6d76b12ba9a6c13a5a8d5fcdf51219615f4d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.1"
|
||||
},
|
||||
"conflict": {
|
||||
"phpstan/phpstan-shim": "*"
|
||||
},
|
||||
"bin": [
|
||||
"phpstan",
|
||||
"phpstan.phar"
|
||||
@@ -1056,7 +1084,21 @@
|
||||
"MIT"
|
||||
],
|
||||
"description": "PHPStan - PHP Static Analysis Tool",
|
||||
"time": "2020-03-22T16:51:47+00:00"
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/ondrejmirtes",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://www.patreon.com/phpstan",
|
||||
"type": "patreon"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-04-19T20:35:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
@@ -1312,16 +1354,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "8.5.3",
|
||||
"version": "8.5.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "67750516bc02f300e2742fed2f50177f8f37bedf"
|
||||
"reference": "8474e22d7d642f665084ba5ec780626cbd1efd23"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/67750516bc02f300e2742fed2f50177f8f37bedf",
|
||||
"reference": "67750516bc02f300e2742fed2f50177f8f37bedf",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/8474e22d7d642f665084ba5ec780626cbd1efd23",
|
||||
"reference": "8474e22d7d642f665084ba5ec780626cbd1efd23",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1391,7 +1433,17 @@
|
||||
"testing",
|
||||
"xunit"
|
||||
],
|
||||
"time": "2020-03-31T08:52:04+00:00"
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://phpunit.de/donate.html",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/sebastianbergmann",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-04-23T04:39:42+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/code-unit-reverse-lookup",
|
||||
@@ -2010,16 +2062,16 @@
|
||||
},
|
||||
{
|
||||
"name": "squizlabs/php_codesniffer",
|
||||
"version": "3.5.4",
|
||||
"version": "3.5.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
|
||||
"reference": "dceec07328401de6211037abbb18bda423677e26"
|
||||
"reference": "73e2e7f57d958e7228fce50dc0c61f58f017f9f6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/dceec07328401de6211037abbb18bda423677e26",
|
||||
"reference": "dceec07328401de6211037abbb18bda423677e26",
|
||||
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/73e2e7f57d958e7228fce50dc0c61f58f017f9f6",
|
||||
"reference": "73e2e7f57d958e7228fce50dc0c61f58f017f9f6",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2057,7 +2109,7 @@
|
||||
"phpcs",
|
||||
"standards"
|
||||
],
|
||||
"time": "2020-01-30T22:20:29+00:00"
|
||||
"time": "2020-04-17T01:09:41+00:00"
|
||||
},
|
||||
{
|
||||
"name": "theseer/tokenizer",
|
||||
@@ -2101,16 +2153,16 @@
|
||||
},
|
||||
{
|
||||
"name": "webmozart/assert",
|
||||
"version": "1.7.0",
|
||||
"version": "1.8.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/webmozart/assert.git",
|
||||
"reference": "aed98a490f9a8f78468232db345ab9cf606cf598"
|
||||
"reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/webmozart/assert/zipball/aed98a490f9a8f78468232db345ab9cf606cf598",
|
||||
"reference": "aed98a490f9a8f78468232db345ab9cf606cf598",
|
||||
"url": "https://api.github.com/repos/webmozart/assert/zipball/ab2cb0b3b559010b75981b1bdce728da3ee90ad6",
|
||||
"reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2118,7 +2170,7 @@
|
||||
"symfony/polyfill-ctype": "^1.8"
|
||||
},
|
||||
"conflict": {
|
||||
"vimeo/psalm": "<3.6.0"
|
||||
"vimeo/psalm": "<3.9.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4.8.36 || ^7.5.13"
|
||||
@@ -2145,7 +2197,7 @@
|
||||
"check",
|
||||
"validate"
|
||||
],
|
||||
"time": "2020-02-14T12:15:55+00:00"
|
||||
"time": "2020-04-18T12:12:48+00:00"
|
||||
}
|
||||
],
|
||||
"aliases": [],
|
||||
|
||||
@@ -8,7 +8,7 @@ use OrpheusNET\Logchecker\Exception\UnknownRipperException;
|
||||
|
||||
class Ripper
|
||||
{
|
||||
|
||||
public const UNKNOWN = 'unknown';
|
||||
public const WHIPPER = 'whipper';
|
||||
public const XLD = 'XLD';
|
||||
public const EAC = 'EAC';
|
||||
|
||||
@@ -20,6 +20,7 @@ class AnalyzeCommand extends Command
|
||||
->setDescription('analyze log file')
|
||||
->setHelp('This command analyzes a log file')
|
||||
->addOption('html', null, InputOption::VALUE_NONE, 'Print the HTML version of log, without color')
|
||||
->addOption('no_text', null, InputOption::VALUE_NONE, 'Do not print log text to console')
|
||||
->addArgument('file', InputArgument::REQUIRED, 'Log file to analyze')
|
||||
->addArgument('out_file', InputArgument::OPTIONAL, 'Write HTML log to outfile');
|
||||
}
|
||||
@@ -55,6 +56,9 @@ class AnalyzeCommand extends Command
|
||||
}
|
||||
}
|
||||
|
||||
if ($input->getOption('no_text')) {
|
||||
return 0;
|
||||
}
|
||||
$output->writeln('');
|
||||
$output->writeln('Log Text:');
|
||||
$output->writeln('');
|
||||
|
||||
+24
-6
@@ -3,10 +3,15 @@
|
||||
namespace OrpheusNET\Logchecker;
|
||||
|
||||
use OrpheusNET\Logchecker\Check\Ripper;
|
||||
use OrpheusNET\Logchecker\Exception\UnknownRipperException;
|
||||
use OrpheusNET\Logchecker\Parser\EAC\Translator;
|
||||
use Symfony\Component\Yaml\Yaml;
|
||||
use Symfony\Component\Yaml\Exception\ParseException;
|
||||
|
||||
if (!defined('LOGCHECKER_LEVENSTEIN_DISTANCE')) {
|
||||
define('LOGCHECKER_LEVENSTEIN_DISTANCE', 0);
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
* Automated EAC/XLD log checker *
|
||||
********************************************************************/
|
||||
@@ -104,9 +109,18 @@ class Logchecker
|
||||
} catch (\Exception $exc) {
|
||||
$this->Score = 0;
|
||||
$this->account('Could not detect log encoding, log is corrupt.');
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
$this->ripper = Ripper::getRipper($this->log);
|
||||
} catch (UnknownRipperException $exc) {
|
||||
$this->Score = 0;
|
||||
$this->account('Unknown log file, could not determine ripper.');
|
||||
$this->ripper = Ripper::UNKNOWN;
|
||||
return;
|
||||
}
|
||||
|
||||
$this->ripper = Ripper::getRipper($this->log);
|
||||
if ($this->ripper === Ripper::WHIPPER) {
|
||||
$this->whipperParse();
|
||||
} else {
|
||||
@@ -522,14 +536,18 @@ class Logchecker
|
||||
}
|
||||
|
||||
$Class = $this->checksumStatus === Check\Checksum::CHECKSUM_OK ? 'good' : 'bad';
|
||||
$Log = preg_replace('/(\=+\s+Log checksum.*)/i', "<span class='{$Class}'>$1</span>", $Log, 1, $Count);
|
||||
$Log = preg_replace('/(\=+\s+Log checksum.*)/i', "<span class='{$Class}'>$1</span>", $Log, 1, $eacCount);
|
||||
$Log = preg_replace(
|
||||
'/([\-]+BEGIN XLD SIGNATURE[\S\n\-]+END XLD SIGNATURE[\-]+)/i',
|
||||
"<span class='{$Class}'>$1</span>",
|
||||
$Log,
|
||||
1,
|
||||
$Count
|
||||
$xldCount
|
||||
);
|
||||
// EAC will at least output "no checksum" for some malformed logs with checksums
|
||||
if (($eacCount > 0 || $xldCount > 0) && $this->checksumStatus === Check\Checksum::CHECKSUM_MISSING) {
|
||||
$this->checksumStatus = Check\Checksum::CHECKSUM_INVALID;
|
||||
}
|
||||
|
||||
$Log = preg_replace_callback("/Used drive( *): (.+)/i", array(
|
||||
$this,
|
||||
@@ -1433,16 +1451,16 @@ class Logchecker
|
||||
$DriveName = preg_replace('/\s+/', ' ', $DriveName);
|
||||
$DriveName = preg_replace('/\(revision [a-zA-Z0-9\.\,\-]*\)/', '', $DriveName);
|
||||
$DriveName = preg_replace('/ Adapter.*$/', '', $DriveName);
|
||||
$DriveName = strtolower($DriveName);
|
||||
$DriveName = trim(strtolower($DriveName));
|
||||
|
||||
$MatchedDrives = [];
|
||||
for ($i = 0; $i < 5; $i++) {
|
||||
for ($i = 0; $i < LOGCHECKER_LEVENSTEIN_DISTANCE + 1; $i++) {
|
||||
$MatchedDrives[$i] = ['drives' => [], 'offsets' => []];
|
||||
}
|
||||
|
||||
foreach ($this->AllDrives as [$Drive, $Offset]) {
|
||||
$Distance = levenshtein($Drive, $DriveName);
|
||||
if ($Distance < 5) {
|
||||
if ($Distance < LOGCHECKER_LEVENSTEIN_DISTANCE + 1) {
|
||||
$MatchedDrives[$Distance]['drives'][] = $Drive;
|
||||
$MatchedDrives[$Distance]['offsets'][] = preg_replace('/[^0-9]/s', '', (string) $Offset);
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ class Translator
|
||||
file_get_contents(__DIR__ . DIRECTORY_SEPARATOR . 'languages' . DIRECTORY_SEPARATOR . 'master.json'),
|
||||
true
|
||||
);
|
||||
|
||||
foreach ($languages as $code => $lang) {
|
||||
foreach ($lang['eac_strings'] as $eac_string) {
|
||||
if (preg_match('/' . preg_quote($eac_string, "/") . '/ui', $log) === 1) {
|
||||
|
||||
@@ -41,6 +41,12 @@ class Util
|
||||
if ($results['charset'] !== 'utf-8' && $results['confidence'] > 0.7) {
|
||||
// $log = mb_convert_encoding($log, 'UTF-8', $results['charset']);
|
||||
$log = iconv($results['charset'], 'UTF-8', $log);
|
||||
} elseif ($results['charset'] !== 'utf-8' && $results['confidence'] > 0.3) {
|
||||
// If we've got a poor confidence on our decoding, we just use a generic
|
||||
// ISO-8859-1 as that covers a decent range of things that people would
|
||||
// inadvertently re-encode a log into. I seriously cannot express how
|
||||
// much I hate how EAC does not use always UTF-8.
|
||||
$log = iconv('ISO-8859-1', 'UTF-8', $log);
|
||||
}
|
||||
}
|
||||
return $log;
|
||||
|
||||
@@ -70,4 +70,17 @@ class LogcheckerTest extends TestCase
|
||||
);
|
||||
$this->assertSame($composer['version'], Logchecker::getLogcheckerVersion());
|
||||
}
|
||||
|
||||
public function testCheckUnknownLog(): void
|
||||
{
|
||||
$logchecker = new Logchecker();
|
||||
$logchecker->newFile(implode(DIRECTORY_SEPARATOR, [__DIR__, 'LogcheckerTest.php']));
|
||||
$logchecker->parse();
|
||||
|
||||
$this->assertSame(Ripper::UNKNOWN, $logchecker->getRipper());
|
||||
$this->assertNull($logchecker->getRipperVersion());
|
||||
$this->assertSame(0, $logchecker->getScore());
|
||||
$this->assertSame('en', $logchecker->getLanguage());
|
||||
$this->assertSame(['Unknown log file, could not determine ripper.'], $logchecker->getDetails());
|
||||
}
|
||||
}
|
||||
@@ -6,6 +6,7 @@ namespace OrpheusNET\Logchecker\Parser\EAC;
|
||||
|
||||
use FilesystemIterator;
|
||||
use OrpheusNET\Logchecker\Exception\UnknownLanguageException;
|
||||
use OrpheusNET\Logchecker\Util;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
class TranslatorTest extends TestCase
|
||||
@@ -51,4 +52,33 @@ class TranslatorTest extends TestCase
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
public function englishLogProvider()
|
||||
{
|
||||
return array_map(
|
||||
function ($file) {
|
||||
return [$file];
|
||||
},
|
||||
array_filter(
|
||||
scandir(implode(DIRECTORY_SEPARATOR, [__DIR__, '..', '..', 'logs', 'eac', 'originals'])),
|
||||
function ($file) {
|
||||
return substr($file, 0, 2) === 'en';
|
||||
}
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider englishLogProvider
|
||||
*/
|
||||
public function testEnglishLanguage(string $file)
|
||||
{
|
||||
$logPath = implode(DIRECTORY_SEPARATOR, [__DIR__, '..', '..', 'logs', 'eac', 'originals', $file]);
|
||||
$log = file_get_contents($logPath);
|
||||
$log = Util::decodeEncoding($log, $logPath);
|
||||
$langDetails = Translator::getLanguage($log);
|
||||
$this->assertSame('en', $langDetails['code']);
|
||||
$this->assertSame('English', $langDetails['name']);
|
||||
$this->assertSame('English', $langDetails['name_english']);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"ripper": "EAC",
|
||||
"version": "1.5",
|
||||
"language": "en",
|
||||
"combined": true,
|
||||
"score": 99,
|
||||
"checksum": "checksum_invalid",
|
||||
"details": [
|
||||
"Combined Log (2)",
|
||||
"ID3 tags should not be added to FLAC files - they are mainly for MP3 files. FLACs should have vorbis comments for tags instead. (-1 point)"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,223 @@
|
||||
Exact Audio Copy <span class="log1">V1.5</span> from <span class="log1">20. February 2020</span>
|
||||
|
||||
<span class='good'>EAC extraction logfile from <span class='log5'>17. April 2020, 19:35</span></span>
|
||||
|
||||
<span class="log4">John Coltrane / A Love Supreme</span>
|
||||
|
||||
<span class="log5">Used Drive </span>: <span class="good">HL-DT-STDVDRAM GH24NSB0 Adapter: 1 ID: 0</span>
|
||||
|
||||
<span class="log5">Read mode </span>: <span class="good">Secure</span>
|
||||
<span class="log5">Utilize accurate stream </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Defeat audio cache </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Make use of C2 pointers </span>: <span class="good">No</span>
|
||||
|
||||
<span class="log5">Read offset correction </span>: <span class="good">6</span>
|
||||
<span class="log5">Overread into Lead-In and Lead-Out </span>: <span class="log4">No</span>
|
||||
<span class="log5">Fill up missing offset samples with silence </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Delete leading and trailing silent blocks </span>: <span class="good">No</span>
|
||||
<span class="log5">Null samples used in CRC calculations </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Used interface </span>: <span class="log4">Native Win32 interface for Win NT & 2000</span>
|
||||
<span class="log5">Gap handling </span>: <span class="good">Appended to previous track</span>
|
||||
|
||||
<span class="log5">Used output format </span>: <span class="log4">User Defined Encoder</span>
|
||||
<span class="log5">Selected bitrate </span>: <span class="log4">768 kBit/s</span>
|
||||
<span class="log5">Quality </span>: <span class="log4">High</span>
|
||||
<span class="log5">Add ID3 tag </span>: <span class="good">No</span>
|
||||
<span class="log5">Command line compressor </span>: <span class="log4">C:\Program Files (x86)\Exact Audio Copy\FLAC\FLAC.EXE</span>
|
||||
<span class="log5">Additional command line options </span>: <span class="log4">-8 -e -p -V -T "ARTIST=%artist%" -T "TITLE=%title%" -T "ALBUM=%albumtitle%" -T "DATE=%year%" -T
|
||||
"TRACKNUMBER=%tracknr%" -T "GENRE=%genre%" -T "PERFORMER=%albuminterpret%" -T "COMPOSER=%composer%" %haslyrics%--tag-from-file=LYRICS="%lyricsfile%"%haslyrics% -T "ALBUMARTIST=%albumartist%" -T "DISCNUMBER=%cdnumber%" -T "TOTALDISCS=%totalcds%" -T "TOTALTRACKS=%numtracks%" -T "COMMENT=%comment%" %source% -o %dest%</span>
|
||||
|
||||
|
||||
<span class="log4 log5">TOC of the extracted CD</span>
|
||||
|
||||
<strong> Track | Start | Length | Start sector | End sector </strong>
|
||||
<strong>---------------------------------------------------------</strong>
|
||||
<span class="log4">1</span> <strong>|</strong> <span class="log1">0:00.00</span> <strong>|</strong> <span class="log1">7:42.65</span> <strong>|</strong> <span class="log1">0</span> <strong>|</strong> <span class="log1">34714</span>
|
||||
<span class="log4">2</span> <strong>|</strong> <span class="log1">7:42.65</span> <strong>|</strong> <span class="log1">7:19.34</span> <strong>|</strong> <span class="log1">34715</span> <strong>|</strong> <span class="log1">67673</span>
|
||||
<span class="log4">3</span> <strong>|</strong> <span class="log1">15:02.24</span> <strong>|</strong> <span class="log1">10:42.38</span> <strong>|</strong> <span class="log1">67674</span> <strong>|</strong> <span class="log1">115861</span>
|
||||
<span class="log4">4</span> <strong>|</strong> <span class="log1">25:44.62</span> <strong>|</strong> <span class="log1">7:02.68</span> <strong>|</strong> <span class="log1">115862</span> <strong>|</strong> <span class="log1">147579</span>
|
||||
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">1</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\01 Acknowledgement.wav</span></span>
|
||||
|
||||
<span class="log4">Pre-gap length <span class="log3">0:00:02.00</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">97.6 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">5.3 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">322247B3</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">322247B3</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [FB072CAB]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">2</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\02 Resolution.wav</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">97.6 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">6.1 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">4732C420</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">4732C420</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [F8254929]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">3</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\03 Pursuance.wav</span></span>
|
||||
|
||||
<span class="log4">Pre-gap length <span class="log3">0:00:01.46</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">97.6 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">7.1 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">71958F92</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">71958F92</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [4FC2DCC6]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">4</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\04 Psalm.wav</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">95.7 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">7.6 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">0C8D6B7E</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">0C8D6B7E</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [36EF184C]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
|
||||
<span class="good">All tracks accurately ripped</span>
|
||||
|
||||
<span class="good">No errors occurred</span>
|
||||
|
||||
<span class="good">End of status report</span>
|
||||
|
||||
---- CUETools DB Plugin V2.1.6
|
||||
|
||||
[CTDB TOCID: 3Ymtej0heE3Qv3LM2ZTKNGwiRV8-] found
|
||||
Submit result: already submitted
|
||||
Track | CTDB Status
|
||||
1 | (961/1326) Accurately ripped
|
||||
2 | (966/1326) Accurately ripped
|
||||
3 | (961/1326) Accurately ripped
|
||||
4 | (963/1326) Accurately ripped
|
||||
|
||||
<span class='bad'>==== Log checksum 5168768818AD8271F9E33889E0FF7123188A08EB490B3FD922F4335E1C74BEDC ====</span>
|
||||
|
||||
<strong>------------------------------------------------------------</strong>
|
||||
|
||||
Exact Audio Copy <span class="log1">V1.5</span> from <span class="log1">20. February 2020</span>
|
||||
|
||||
<span class='good'>EAC extraction logfile from <span class='log5'>17. April 2020, 19:35</span></span>
|
||||
|
||||
<span class="log4">John Coltrane / A Love Supreme</span>
|
||||
|
||||
<span class="log5">Used Drive </span>: <span class="good">HL-DT-STDVDRAM GH24NSB0 Adapter: 1 ID: 0</span>
|
||||
|
||||
<span class="log5">Read mode </span>: <span class="good">Secure</span>
|
||||
<span class="log5">Utilize accurate stream </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Defeat audio cache </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Make use of C2 pointers </span>: <span class="good">No</span>
|
||||
|
||||
<span class="log5">Read offset correction </span>: <span class="good">6</span>
|
||||
<span class="log5">Overread into Lead-In and Lead-Out </span>: <span class="log4">No</span>
|
||||
<span class="log5">Fill up missing offset samples with silence </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Delete leading and trailing silent blocks </span>: <span class="good">No</span>
|
||||
<span class="log5">Null samples used in CRC calculations </span>: <span class="good">Yes</span>
|
||||
<span class="log5">Used interface </span>: <span class="log4">Native Win32 interface for Win NT & 2000</span>
|
||||
<span class="log5">Gap handling </span>: <span class="good">Appended to previous track</span>
|
||||
|
||||
<span class="log5">Used output format </span>: <span class="log4">User Defined Encoder</span>
|
||||
<span class="log5">Selected bitrate </span>: <span class="log4">320 kBit/s</span>
|
||||
<span class="log5">Quality </span>: <span class="log4">High</span>
|
||||
<span class="log5">Add ID3 tag </span>: <span class="badish">Yes</span>
|
||||
<span class="log5">Command line compressor </span>: <span class="log4">E:\Tools\lame.exe</span>
|
||||
<span class="log5">Additional command line options </span>: <span class="log4">-V0 --vbr-new --tt "%title%" --ta "%artist%" --tl "%albumtitle%" --ty "%year%" --tn "%tracknr%" %source%
|
||||
%dest%</span>
|
||||
|
||||
|
||||
<span class="log4 log5">TOC of the extracted CD</span>
|
||||
|
||||
<strong> Track | Start | Length | Start sector | End sector </strong>
|
||||
<strong>---------------------------------------------------------</strong>
|
||||
<span class="log4">1</span> <strong>|</strong> <span class="log1">0:00.00</span> <strong>|</strong> <span class="log1">7:42.65</span> <strong>|</strong> <span class="log1">0</span> <strong>|</strong> <span class="log1">34714</span>
|
||||
<span class="log4">2</span> <strong>|</strong> <span class="log1">7:42.65</span> <strong>|</strong> <span class="log1">7:19.34</span> <strong>|</strong> <span class="log1">34715</span> <strong>|</strong> <span class="log1">67673</span>
|
||||
<span class="log4">3</span> <strong>|</strong> <span class="log1">15:02.24</span> <strong>|</strong> <span class="log1">10:42.38</span> <strong>|</strong> <span class="log1">67674</span> <strong>|</strong> <span class="log1">115861</span>
|
||||
<span class="log4">4</span> <strong>|</strong> <span class="log1">25:44.62</span> <strong>|</strong> <span class="log1">7:02.68</span> <strong>|</strong> <span class="log1">115862</span> <strong>|</strong> <span class="log1">147579</span>
|
||||
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">1</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\01 Acknowledgement.wav</span></span>
|
||||
|
||||
<span class="log4">Pre-gap length <span class="log3">0:00:02.00</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">97.6 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">5.3 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">322247B3</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">322247B3</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [FB072CAB]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">2</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\02 Resolution.wav</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">97.6 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">6.1 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">4732C420</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">4732C420</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [F8254929]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">3</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\03 Pursuance.wav</span></span>
|
||||
|
||||
<span class="log4">Pre-gap length <span class="log3">0:00:01.46</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">97.6 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">7.1 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">71958F92</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">71958F92</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [4FC2DCC6]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
<span class="log5">Track</span> <span class="log4 log1">4</span>
|
||||
|
||||
<span class="log4">Filename <span class="log3">E:\Test Rip\04 Psalm.wav</span></span>
|
||||
|
||||
<span class="log4">Peak level <span class="log3">95.7 %</span></span>
|
||||
<span class="log4">Extraction speed <span class="log3">7.6 X</span></span>
|
||||
<span class="log4">Track quality <span class="log3">100.0 %</span></span>
|
||||
<span class="log4">Test CRC <span class="good">0C8D6B7E</span></span>
|
||||
<span class="log4">Copy CRC <span class="good">0C8D6B7E</span></span>
|
||||
<span class="good">Accurately ripped (confidence 200) [36EF184C]</span> (AR v2)
|
||||
<span class="good">Copy OK</span>
|
||||
|
||||
|
||||
<span class="good">All tracks accurately ripped</span>
|
||||
|
||||
<span class="good">No errors occurred</span>
|
||||
|
||||
<span class="good">End of status report</span>
|
||||
|
||||
---- CUETools DB Plugin V2.1.6
|
||||
|
||||
[CTDB TOCID: 3Ymtej0heE3Qv3LM2ZTKNGwiRV8-] found
|
||||
Submit result: already submitted
|
||||
Track | CTDB Status
|
||||
1 | (961/1326) Accurately ripped
|
||||
2 | (966/1326) Accurately ripped
|
||||
3 | (961/1326) Accurately ripped
|
||||
4 | (963/1326) Accurately ripped
|
||||
|
||||
<span class='bad'>==== Log checksum 9FE4FA4CE31EF3C9B70A448AFA4B9E5862E040593FE0673DC1C8A4BA257D9E97 ====</span>
|
||||
@@ -0,0 +1,223 @@
|
||||
Exact Audio Copy V1.5 from 20. February 2020
|
||||
|
||||
EAC extraction logfile from 17. April 2020, 19:35
|
||||
|
||||
John Coltrane / A Love Supreme
|
||||
|
||||
Used drive : HL-DT-STDVDRAM GH24NSB0 Adapter: 1 ID: 0
|
||||
|
||||
Read mode : Secure
|
||||
Utilize accurate stream : Yes
|
||||
Defeat audio cache : Yes
|
||||
Make use of C2 pointers : No
|
||||
|
||||
Read offset correction : 6
|
||||
Overread into Lead-In and Lead-Out : No
|
||||
Fill up missing offset samples with silence : Yes
|
||||
Delete leading and trailing silent blocks : No
|
||||
Null samples used in CRC calculations : Yes
|
||||
Used interface : Native Win32 interface for Win NT & 2000
|
||||
Gap handling : Appended to previous track
|
||||
|
||||
Used output format : User Defined Encoder
|
||||
Selected bitrate : 768 kBit/s
|
||||
Quality : High
|
||||
Add ID3 tag : No
|
||||
Command line compressor : C:\Program Files (x86)\Exact Audio Copy\FLAC\FLAC.EXE
|
||||
Additional command line options : -8 -e -p -V -T "ARTIST=%artist%" -T "TITLE=%title%" -T "ALBUM=%albumtitle%" -T "DATE=%year%" -T "TRACKNUMBER=%tracknr%" -T "GENRE=%genre%" -T "PERFORMER=%albuminterpret%" -T "COMPOSER=%composer%" %haslyrics%--tag-from-file=LYRICS="%lyricsfile%"%haslyrics% -T "ALBUMARTIST=%albumartist%" -T "DISCNUMBER=%cdnumber%" -T "TOTALDISCS=%totalcds%" -T "TOTALTRACKS=%numtracks%" -T "COMMENT=%comment%" %source% -o %dest%
|
||||
|
||||
|
||||
TOC of the extracted CD
|
||||
|
||||
Track | Start | Length | Start sector | End sector
|
||||
---------------------------------------------------------
|
||||
1 | 0:00.00 | 7:42.65 | 0 | 34714
|
||||
2 | 7:42.65 | 7:19.34 | 34715 | 67673
|
||||
3 | 15:02.24 | 10:42.38 | 67674 | 115861
|
||||
4 | 25:44.62 | 7:02.68 | 115862 | 147579
|
||||
|
||||
|
||||
Track 1
|
||||
|
||||
Filename E:\Test Rip\01 Acknowledgement.wav
|
||||
|
||||
Pre-gap length 0:00:02.00
|
||||
|
||||
Peak level 97.6 %
|
||||
Extraction speed 5.3 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 322247B3
|
||||
Copy CRC 322247B3
|
||||
Accurately ripped (confidence 200) [FB072CAB] (AR v2)
|
||||
Copy OK
|
||||
|
||||
Track 2
|
||||
|
||||
Filename E:\Test Rip\02 Resolution.wav
|
||||
|
||||
Peak level 97.6 %
|
||||
Extraction speed 6.1 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 4732C420
|
||||
Copy CRC 4732C420
|
||||
Accurately ripped (confidence 200) [F8254929] (AR v2)
|
||||
Copy OK
|
||||
|
||||
Track 3
|
||||
|
||||
Filename E:\Test Rip\03 Pursuance.wav
|
||||
|
||||
Pre-gap length 0:00:01.46
|
||||
|
||||
Peak level 97.6 %
|
||||
Extraction speed 7.1 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 71958F92
|
||||
Copy CRC 71958F92
|
||||
Accurately ripped (confidence 200) [4FC2DCC6] (AR v2)
|
||||
Copy OK
|
||||
|
||||
Track 4
|
||||
|
||||
Filename E:\Test Rip\04 Psalm.wav
|
||||
|
||||
Peak level 95.7 %
|
||||
Extraction speed 7.6 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 0C8D6B7E
|
||||
Copy CRC 0C8D6B7E
|
||||
Accurately ripped (confidence 200) [36EF184C] (AR v2)
|
||||
Copy OK
|
||||
|
||||
|
||||
All tracks accurately ripped
|
||||
|
||||
No errors occurred
|
||||
|
||||
End of status report
|
||||
|
||||
---- CUETools DB Plugin V2.1.6
|
||||
|
||||
[CTDB TOCID: 3Ymtej0heE3Qv3LM2ZTKNGwiRV8-] found
|
||||
Submit result: already submitted
|
||||
Track | CTDB Status
|
||||
1 | (961/1326) Accurately ripped
|
||||
2 | (966/1326) Accurately ripped
|
||||
3 | (961/1326) Accurately ripped
|
||||
4 | (963/1326) Accurately ripped
|
||||
|
||||
|
||||
==== Log checksum 5168768818AD8271F9E33889E0FF7123188A08EB490B3FD922F4335E1C74BEDC ====
|
||||
|
||||
------------------------------------------------------------
|
||||
|
||||
Exact Audio Copy V1.5 from 20. February 2020
|
||||
|
||||
EAC extraction logfile from 17. April 2020, 19:35
|
||||
|
||||
John Coltrane / A Love Supreme
|
||||
|
||||
Used drive : HL-DT-STDVDRAM GH24NSB0 Adapter: 1 ID: 0
|
||||
|
||||
Read mode : Secure
|
||||
Utilize accurate stream : Yes
|
||||
Defeat audio cache : Yes
|
||||
Make use of C2 pointers : No
|
||||
|
||||
Read offset correction : 6
|
||||
Overread into Lead-In and Lead-Out : No
|
||||
Fill up missing offset samples with silence : Yes
|
||||
Delete leading and trailing silent blocks : No
|
||||
Null samples used in CRC calculations : Yes
|
||||
Used interface : Native Win32 interface for Win NT & 2000
|
||||
Gap handling : Appended to previous track
|
||||
|
||||
Used output format : User Defined Encoder
|
||||
Selected bitrate : 320 kBit/s
|
||||
Quality : High
|
||||
Add ID3 tag : Yes
|
||||
Command line compressor : E:\Tools\lame.exe
|
||||
Additional command line options : -V0 --vbr-new --tt "%title%" --ta "%artist%" --tl "%albumtitle%" --ty "%year%" --tn "%tracknr%" %source% %dest%
|
||||
|
||||
|
||||
TOC of the extracted CD
|
||||
|
||||
Track | Start | Length | Start sector | End sector
|
||||
---------------------------------------------------------
|
||||
1 | 0:00.00 | 7:42.65 | 0 | 34714
|
||||
2 | 7:42.65 | 7:19.34 | 34715 | 67673
|
||||
3 | 15:02.24 | 10:42.38 | 67674 | 115861
|
||||
4 | 25:44.62 | 7:02.68 | 115862 | 147579
|
||||
|
||||
|
||||
Track 1
|
||||
|
||||
Filename E:\Test Rip\01 Acknowledgement.wav
|
||||
|
||||
Pre-gap length 0:00:02.00
|
||||
|
||||
Peak level 97.6 %
|
||||
Extraction speed 5.3 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 322247B3
|
||||
Copy CRC 322247B3
|
||||
Accurately ripped (confidence 200) [FB072CAB] (AR v2)
|
||||
Copy OK
|
||||
|
||||
Track 2
|
||||
|
||||
Filename E:\Test Rip\02 Resolution.wav
|
||||
|
||||
Peak level 97.6 %
|
||||
Extraction speed 6.1 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 4732C420
|
||||
Copy CRC 4732C420
|
||||
Accurately ripped (confidence 200) [F8254929] (AR v2)
|
||||
Copy OK
|
||||
|
||||
Track 3
|
||||
|
||||
Filename E:\Test Rip\03 Pursuance.wav
|
||||
|
||||
Pre-gap length 0:00:01.46
|
||||
|
||||
Peak level 97.6 %
|
||||
Extraction speed 7.1 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 71958F92
|
||||
Copy CRC 71958F92
|
||||
Accurately ripped (confidence 200) [4FC2DCC6] (AR v2)
|
||||
Copy OK
|
||||
|
||||
Track 4
|
||||
|
||||
Filename E:\Test Rip\04 Psalm.wav
|
||||
|
||||
Peak level 95.7 %
|
||||
Extraction speed 7.6 X
|
||||
Track quality 100.0 %
|
||||
Test CRC 0C8D6B7E
|
||||
Copy CRC 0C8D6B7E
|
||||
Accurately ripped (confidence 200) [36EF184C] (AR v2)
|
||||
Copy OK
|
||||
|
||||
|
||||
All tracks accurately ripped
|
||||
|
||||
No errors occurred
|
||||
|
||||
End of status report
|
||||
|
||||
---- CUETools DB Plugin V2.1.6
|
||||
|
||||
[CTDB TOCID: 3Ymtej0heE3Qv3LM2ZTKNGwiRV8-] found
|
||||
Submit result: already submitted
|
||||
Track | CTDB Status
|
||||
1 | (961/1326) Accurately ripped
|
||||
2 | (966/1326) Accurately ripped
|
||||
3 | (961/1326) Accurately ripped
|
||||
4 | (963/1326) Accurately ripped
|
||||
|
||||
|
||||
==== Log checksum 9FE4FA4CE31EF3C9B70A448AFA4B9E5862E040593FE0673DC1C8A4BA257D9E97 ====
|
||||
Binary file not shown.
@@ -0,0 +1,194 @@
|
||||
EAC extraction logfile from 20. November 2006, 20:20 for CD
|
||||
Banco del Mutuo Soccorso / Seguendo le Tracce
|
||||
|
||||
Used drive : _NEC DVD+-RW ND-6450A Adapter: 1 ID: 0
|
||||
Read mode : Secure with NO C2, accurate stream, disable cache
|
||||
Read offset correction : 594
|
||||
Overread into Lead-In and Lead-Out : No
|
||||
|
||||
Used output format : Internal WAV Routines
|
||||
44.100 Hz; 16 Bit; Stereo
|
||||
|
||||
Other options :
|
||||
Fill up missing offset samples with silence : Yes
|
||||
Delete leading and trailing silent blocks : No
|
||||
Installed external ASPI interface
|
||||
|
||||
|
||||
Track 1
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\01R.I.P. (english version).wav
|
||||
|
||||
Pre-gap length 0:00:02.00
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC EC43BAD3
|
||||
Copy CRC EC43BAD3
|
||||
Copy OK
|
||||
|
||||
Track 2
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\02L'albero del pane.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC 70584B1D
|
||||
Copy CRC 70584B1D
|
||||
Copy OK
|
||||
|
||||
Track 3
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\03La danza dei grandi rettili.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC 4E17BAEF
|
||||
Copy CRC 4E17BAEF
|
||||
Copy OK
|
||||
|
||||
Track 4
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\04Passaggio.wav
|
||||
|
||||
Peak level 44.4 %
|
||||
Track quality 100.0 %
|
||||
Test CRC D76BE99A
|
||||
Copy CRC D76BE99A
|
||||
Copy OK
|
||||
|
||||
Track 5
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\05Non mi rompete.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC 826A9F81
|
||||
Copy CRC 826A9F81
|
||||
Copy OK
|
||||
|
||||
Track 6
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\06Dopo... niente più è lo stesso.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC CFB6C6BA
|
||||
Copy CRC CFB6C6BA
|
||||
Copy OK
|
||||
|
||||
Track 7
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\07Traccia II.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC D7BAF9A2
|
||||
Copy CRC D7BAF9A2
|
||||
Copy OK
|
||||
|
||||
Track 8
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\08Metamorfosi.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC BBB2254A
|
||||
Copy CRC BBB2254A
|
||||
Copy OK
|
||||
|
||||
No errors occured
|
||||
|
||||
|
||||
End of status report
|
||||
|
||||
------------------------------------------------------------
|
||||
|
||||
EAC extraction logfile from 20. November 2006, 21:08 for CD
|
||||
Banco del Mutuo Soccorso / Seguendo le Tracce
|
||||
|
||||
Used drive : _NEC DVD+-RW ND-6450A Adapter: 1 ID: 0
|
||||
Read mode : Secure with NO C2, accurate stream, disable cache
|
||||
Read offset correction : 594
|
||||
Overread into Lead-In and Lead-Out : No
|
||||
|
||||
Used output format : C:\Programmi\FLAC\flac.exe (User Defined Encoder)
|
||||
320 kBit/s
|
||||
Additional command line options : -V --replay-gain -8 -T "artist=%a" -T "title=%t" -T "album=%g" -T "date=%y" -T "tracknumber=%n" -T "genre=%m" %s
|
||||
|
||||
Other options :
|
||||
Fill up missing offset samples with silence : Yes
|
||||
Delete leading and trailing silent blocks : No
|
||||
Installed external ASPI interface
|
||||
|
||||
|
||||
Track 1
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\01R.I.P. (english version).wav
|
||||
|
||||
Pre-gap length 0:00:02.00
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC EC43BAD3
|
||||
Copy CRC EC43BAD3
|
||||
Copy OK
|
||||
|
||||
Track 2
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\02L'albero del pane.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC 70584B1D
|
||||
Copy CRC 70584B1D
|
||||
Copy OK
|
||||
|
||||
Track 3
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\03La danza dei grandi rettili.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC 4E17BAEF
|
||||
Copy CRC 4E17BAEF
|
||||
Copy OK
|
||||
|
||||
Track 4
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\04Passaggio.wav
|
||||
|
||||
Peak level 44.4 %
|
||||
Track quality 100.0 %
|
||||
Test CRC D76BE99A
|
||||
Copy CRC D76BE99A
|
||||
Copy OK
|
||||
|
||||
Track 5
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\05Non mi rompete.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC 826A9F81
|
||||
Copy CRC 826A9F81
|
||||
Copy OK
|
||||
|
||||
Track 6
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\06Dopo... niente più è lo stesso.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC CFB6C6BA
|
||||
Copy CRC CFB6C6BA
|
||||
Copy OK
|
||||
|
||||
Track 7
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\07Traccia II.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC D7BAF9A2
|
||||
Copy CRC D7BAF9A2
|
||||
Copy OK
|
||||
|
||||
Track 8
|
||||
Filename C:\Documents and Settings\user\Documenti\file flac\08Metamorfosi.wav
|
||||
|
||||
Peak level 97.7 %
|
||||
Track quality 100.0 %
|
||||
Test CRC BBB2254A
|
||||
Copy CRC BBB2254A
|
||||
Copy OK
|
||||
|
||||
No errors occured
|
||||
|
||||
|
||||
End of status report
|
||||
Reference in new issue
Block a user