Class: SimplePvr::Recorder

Inherits:
Object
  • Object
show all
Defined in:
lib/simple_pvr/recorder.rb

Instance Method Summary collapse

Constructor Details

#initialize(tuner, recording) ⇒ Recorder

Returns a new instance of Recorder.



5
6
7
# File 'lib/simple_pvr/recorder.rb', line 5

def initialize(tuner, recording)
  @tuner, @recording = tuner, recording
end

Instance Method Details

#start!Object



9
10
11
12
13
14
15
16
17
# File 'lib/simple_pvr/recorder.rb', line 9

def start!
  @directory = PvrInitializer.recording_manager.create_directory_for_recording(@recording)
  PvrInitializer.hdhomerun.start_recording(@tuner, @recording.channel.frequency, @recording.channel.channel_id, @directory)
  
  icon_url = @recording.programme.icon_url
  ProgrammeIconFetcher.fetch(icon_url, "#{@directory}/icon") if icon_url
  
  PvrLogger.info "Started recording #{@recording.show_name} in #{@directory}"
end

#stop!Object



19
20
21
22
23
24
# File 'lib/simple_pvr/recorder.rb', line 19

def stop!
  PvrInitializer.hdhomerun.stop_recording(@tuner)
  Ffmpeg.create_thumbnail_for(@directory)

  PvrLogger.info "Stopped recording #{@recording.show_name}"
end