Skip to content

Fast FUSE filesystem splitting FLAC with CUE into individual track files

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

datasone/trackfs-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

trackfs-rs

Fast FUSE filesystem splitting FLAC with CUE into individual track files

This project is inspired by andresch/trackfs, made faster by not re-encoding the full FLAC track, as well as wrote in Rust language.

Currently, trackfs-rs supports following file types:

  • FLAC files along with CUE file
  • FLAC with embedded CUE file (through cuesheet in vorbis comment metadata, CUESHEET metadata block in FLAC is not supported)
  • WAV files along with CUE file (currently, the non-standard wav metadata are directly passed instead of further processed with CUE tracks info, e.g. id3 RIFF chunk)

Usage

trackfs-rs --help:

Usage: trackfs-rs [OPTIONS] <BASE_DIR> <MOUNTPOINT>

Arguments:
  <BASE_DIR>    Base directory being converted into trackfs
  <MOUNTPOINT>  Mountpoint

Options:
  -s, --separator <SEPARATOR>
          The separator character used for differentiating cue filename and track name [default: #]
      --max-cache-entries <MAX_CACHE_ENTRIES>
          Max entries of kept flac frame caches (in memory, for fast flac processing) [default: 100]
      --flac-instances <FLAC_INSTANCES>
          Instances of flac decoders and encoders [default: <NUMBER OF CPU THREADS>]
  -o, --options <OPTIONS>
          Additional mount options, default mount options for trackfs-rs (besides this argument): `default_permissions, nodev, nosuid, noexec, ro, async, allow_root, auto_unmount`
      --allow-other
          Change the default `allow_root` to `allow_other`, enabling accounts other than mounting account to access the mounted FS, may cause security issues
      --no-auto-unmount
          Some people may want to omit `allow_root` and `auto_unmount` option (as this requires `allow_other` in `fuse.conf`), it can be disabled with this flag. Note: due to limitation in
`rust` and `clap`, we cannot give default values to `options`
  -h, --help
          Print help

About

Fast FUSE filesystem splitting FLAC with CUE into individual track files

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Languages