Class: Itak

Inherits:
Object
  • Object
show all
Defined in:
lib/itak.rb,
lib/itak/vad.rb,
lib/itak/denoiser.rb

Defined Under Namespace

Classes: Denoiser, VAD

Instance Method Summary collapse

Instance Method Details

#run(src, dest = nil) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/itak.rb', line 8

def run(src, dest=nil)
  src = Pathname(src)
  if dest
    dest = Pathname(dest)
    if dest.directory?
      dest = dest/src.basename.sub_ext(".denoised-vad" + src.extname)
    end
  else
    dest = src.sub_ext(".denoised-vad" + src.extname)
  end

  Pathname.mktmpdir do |work_dir|
    # TODO: Use memory instead of files to pipeline data
    denoised = Denoiser.new(work_dir:).denoise(src)
    VAD.new.run(denoised, dest)
  end

  dest
end