Skip to content
kaosborn edited this page Jul 17, 2019 · 6 revisions

Usage

Filebert [/s:<scope>] [/h:<hashes>] [/v:<validations>] [/R] [/flacrip] [/mp3rip] [/tags] [/webcheck] [/strict] [/f:<wildcard>] [/x:<exclusion>] [/out:<mirror>] [/p:<counter>] [/k] <fileOrFolder>

FilebertWin [/s:<scope>] [/h:<hashes>] [/v:<validations>] [/R] [/flacrip] [/mp3rip] [/tags] [/webcheck] [/strict] [/f:<wildcard>] [/check] [<fileOrFolder>]

where <scope> is one from Detail Verbose Lucid Terse Quiet
where <hashes> is list from None Intrinsic FileMD5 FileSHA1 FileSHA256 MetaSHA1 MediaSHA1 PcmMD5 PcmCRC32
where <validations> is list from None Exists MD5 SHA1 SHA256
where <fileOrFolder> is a file or folder name without wildcards.

Table of contents

Control scope of diagnostics with /s:<scope>

Overview

Five increasing levels of diagnostics are available with the /s switch. This setting does not affect the actual checks being performed - only how much is reported.

Options

<scope> is one from:

  • Quiet: Shows errors only.
  • Terse: Shows warnings and errors only.
  • Lucid: Shows advisories, warnings and errors.
  • Verbose: Shows noise, advisories, warnings and errors. Shows program version too.
  • Detail: Shows everything.

Examples

  • Use /s:Detail to see all available diagnostics.

Generate hashes with /h:<hashes>

Overview

Filebert's primary function is to validate media files while providing some repair capability. As a secondary function, Filebert also generates hashes of entire files or segments of files. If any file-level hashes are enabled, the console output transforms into a form that is suitable for a hash file. This combines the steps of checking file integrity with hash generation of the files being checked and shows the combined results.

When an associated stored hash exists for a generated hash, the appropriate check will be made.

Options

<hashes> is 0 or a comma-separated list from:

  • Intrinsic: generates hashes used for quick checks (e.g. FLAC, MP3, OGG, PNG).
  • FileMD5: generates console output suitable for a .md5 digest file.
  • FileSHA1: generates console output suitable for a .sha1 digest file.
  • FileSHA256: generates console output suitable for a .sha256 digest file.
  • MetaSHA1: generates console output suitable for a .sha1x file.
  • MediaSHA1: generates console output suitable for a .sha1x file.
  • PcmMD5: generates audio segment MD5 hashes of .flac and .wav files.
  • PcmCRC32: generates audio segment CRCs of .flac and .wav files.

For more information on the three SHA1 choices, see The .sha1x file format.

Intrinsic hashes have little or no penalty while non-intrinsic hashes are resource intensive. The default setting is /h:Intrinsic as seen next.

Examples

  • Use /h:Intrinsic,FileSHA1 to generate SHA1 file hashes while checking files. Diagnostic lines are prefixed by semicolons so they will be treated as comments as seen next. This output is suitable to copy and paste to a .sha1 file.

  • Use /h:Intrinsic,PcmMD5 to generate .flac MD5 hashes for comparison to their stored MD5s.
  • Use /h:Intrinsic,PcmCRC32 to generate .flac or .wav CRCs that should match their rip .log copy CRCs. (Note that this CRC is automatically generated when rip checking is enabled.)
  • Use /h:SHA256 to generate SHA256 hashes suitable to copy to a .sha256 file. Intrinsic hashes aren't generated in this example.
  • Use /h:0 to disable all hash generation.

Validate file existence and integrity with /v:<validations>

Overview

Filebert granularizes control over validation of hash files due to potentially long running times. Existence checking of playlist files is also settable.

Options

<validations> is 0 or a comma-separated list from:

  • Exists: Checks file references in .cue, .m3u, .m3u8 files.
  • MD5: Validates MD5 hashes in .md5 files.
  • SHA1: Validates SHA1 hashes in .sha1 and .sha1x files.
  • SHA256: Validates SHA256 hashes in .sha256 files.

Examples

  • Use /v:Exists,MD5,SHA1,SHA256 to enable all hash validations and file reference checks.
  • Use /v:0 to disable all hash validations and file reference checks.

Enable repairs with /R

Overview

Some issues may be repaired. To enable repairs, use the /R switch. Repairs must be individually confirmed.

These are the repairable issues:

  1. A phantom .mp3 ID3v1 tag.
  2. Old EAC bug that sometimes created an .mp3 with a bad ID3v2 tag size.
  3. End-of-file watermarks on .avi, .mp4, .mkv files.
  4. Incorrect file names in .cue files.
  5. Incorrect extensions.

Check FLAC rips made using EAC or XLD with /flacrip

Overview

Filebert performs checking of compact disc rips made using either the EAC or XLD disc extraction programs. Combining rip checking with /R will enable repairing of bad .cue file references. Combining with /strict indicates if an EAC rip folder is archival quality.

The core of rip checking is matching of .flac audio CRCs to copy CRCs in the .log file. Enabling rip checking also augments FLAC tag analysis and supports .cue file repairing.

Examples

  • Use /flacrip to verify rip integrity of .log, .flac and .cue files by folder.
  • Use /flacrip /R to verify integrity of rips and enable repairs for bad .cue file references.

For more EAC-to-FLAC rip examples, see the wiki Home.

Check MP3 rips made using EAC or XLD with /mp3rip

Overview

Filebert performs checking of compact disc rips made with either the EAC or XLD disc extraction programs. While archival quality can be indicated for FLAC rips, only limited assurance can be made for MP3 rips due to their lossyness.

Examples

  • Use /mp3rip to verify matching track counts of .log, .mp3 and .cue files.

Analyze FLAC tags with /tags

Overview

Filebert can perform a deep analyse of FLAC tags with the /tags switch. Combine with the /flacrip switch to expand this analysis to the rip level. Combine with /strict to escalate the severities of selected tag issues.

Examples

  • Use /tags /flacrip to analyse rip-level tag consistency.
  • Use /tags /flacrip /strict to indicate if tagging is the bestest.

Check EAC self hash with /webcheck

Overview

Later versions of EAC .log files end with a self hash that can be used to validate themselves. This requires an internet connection to send the each .log file to the EAC server.

Verification of EAC .log self hashes without an internet connection is not supported at this time. Verification of XLD .log signatures is not supported at this time.

Examples

  • Use /webcheck /f:*.log to check only .log files and verify any EAC self hashes online.

Indicate highest quality with /strict

Overview

Filebert promotes two levels of success:

  • A minimum level to indicate if basic integrity is maintained. This is the default.
  • A maximum level to indicate archival quality. Get this with the /strict switch.

The /strict switch does not affect what checks are performed - only reporting is affected by escalating the severities of selected issues.

Examples

  • Use /tags /strict to ensure FLAC tags are highest quality.

Filter files to be checked with /f:<wildcard>

The /f switch is commonly used to check files with a single extension. This switch rarely works well with rip checking.

Examples

  • Use /f:*.log to check only .log files.
  • Use /f:*.md5 /v:FileMD5 to validate only .md5 files.
  • Use /f:* to also check files with extensions unknown to Filebert.

Show usage with /?

Overview

Usage is shown whenever a bad argument is encountered. To see usage without using a bad argument, use the /? switch.

Check immediately with /check

By default, the windowed Filebert doesn't begin checking files until the Check button is clicked. To begin checking as soon as launched, use the /check switch.

Examples

  • Append /check to a FilebertWin.exe shortcut target to begin checking as soon as the shortcut is launched.

Pause termination with /k

Overview

By default, the console Filebert exits immediately after checking is complete. To wait for the escape key to be pressed, use the /k switch.

Examples

  • Append /k to a Filebert.exe shortcut target to pause its sessions before exiting.