class FLACsmith::Encoders::Album

An album encoder for encoding an album of files as FLAC files.

Constants

FILE_EXTENSIONS

Attributes

image_path[R]
input_dir[R]
output_dir[R]
track_encoder[R]

Public Class Methods

new(input_dir:, output_dir: "", image_path: "", track_encoder: Track) click to toggle source

rubocop:disable Metrics/ParameterLists

# File lib/flacsmith/encoders/album.rb, line 12
def initialize input_dir:, output_dir: "", image_path: "", track_encoder: Track
  @input_dir = Pathname String(input_dir)
  @output_dir = Pathname String(output_dir)
  @image_path = Pathname String(image_path)
  @track_encoder = track_encoder
end

Public Instance Methods

call() click to toggle source

rubocop:enable Metrics/ParameterLists

# File lib/flacsmith/encoders/album.rb, line 20
def call
  input_dir.entries.each do |path|
    next unless path.extname.match? FILE_EXTENSIONS

    track_encoder.new(input_path: File.join(input_dir, path), image_path:, output_dir:).call
  end
end