Class: Ffprober::Parser

Inherits:
Object
  • Object
show all
Defined in:
lib/ffprober/parser.rb

Class Method Summary collapse

Class Method Details

.check_versionObject

Raises:



29
30
31
32
# File 'lib/ffprober/parser.rb', line 29

def self.check_version
  msg = "found version: #{FfprobeVersion.version}"
  raise UnsupportedVersion, msg if FfprobeVersion.invalid?
end

.from_file(file_to_parse) ⇒ Object

Raises:



6
7
8
9
10
11
12
13
14
# File 'lib/ffprober/parser.rb', line 6

def self.from_file(file_to_parse)
  check_version

  raise EmptyInput, file_to_parse if File.empty?(file_to_parse)

  file_parser = Parsers::FileParser.new(file_to_parse)
  json_parser = file_parser.load
  Ffprober::Wrapper.new(json_parser.json)
end

.from_json(json_to_parse) ⇒ Object



24
25
26
27
# File 'lib/ffprober/parser.rb', line 24

def self.from_json(json_to_parse)
  json_parser = Parsers::JsonParser.new(json_to_parse)
  Ffprober::Wrapper.new(json_parser.json)
end

.from_url(url_to_parse) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/ffprober/parser.rb', line 16

def self.from_url(url_to_parse)
  check_version

  url_parser = Parsers::UrlParser.new(url_to_parse)
  json_parser = url_parser.load
  Ffprober::Wrapper.new(json_parser.json)
end