class Mkv2m4v::TrackRanker

Public Class Methods

new(tracks, options = {}) click to toggle source
# File lib/mkv2m4v/track_ranker.rb, line 9
def initialize(tracks, options = {})
  @tracks = tracks
  @options = options
end

Public Instance Methods

filter() click to toggle source
# File lib/mkv2m4v/track_ranker.rb, line 14
def filter
  filtered_tracks = @tracks.select { |t| language_okay?(t) }
  self.class.new(filtered_tracks, @options)
end
rank() click to toggle source
# File lib/mkv2m4v/track_ranker.rb, line 19
def rank
  ranked_tracks = @tracks.sort_by { |t| -score(t) }
  self.class.new(ranked_tracks, @options)
end

Protected Instance Methods

language_match?(track) click to toggle source
# File lib/mkv2m4v/track_ranker.rb, line 26
def language_match?(track)
  @options.languages.include?(track.language)
end
language_okay?(track) click to toggle source
# File lib/mkv2m4v/track_ranker.rb, line 30
def language_okay?(track)
  track.language.nil? ||
    @options.languages.empty? ||
    language_match?(track)
end