Method: Timecode.at
- Defined in:
- lib/timecode.rb
.at(hrs, mins, secs, frames, with_fps = DEFAULT_FPS, drop_frame = false) ⇒ Object
Initialize a Timecode object at this specfic timecode
212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 |
# File 'lib/timecode.rb', line 212 def at(hrs, mins, secs, frames, with_fps = DEFAULT_FPS, drop_frame = false) validate_atoms!(hrs, mins, secs, frames, with_fps) comp = ComputationValues.new(with_fps, drop_frame) if drop_frame && secs == 0 && (mins % 10) && (frames < comp.drop_count) frames = comp.drop_count end total = hrs * comp.frames_per_hour if drop_frame total += (mins / 10) * comp.frames_per_10_min total += (mins % 10) * comp.frames_per_min else total += mins * comp.frames_per_min end rounded_base = with_fps.round total += secs * rounded_base total += frames new(total, with_fps, drop_frame) end |