Class: Ffprober::Parser

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

Class Method Summary collapse

Class Method Details

.check_versionObject

Raises:



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

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

.from_file(file_to_parse) ⇒ Object

Raises:



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

def self.from_file(file_to_parse)
  check_version

  raise EmptyInput, file_to_parse if File.zero?(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



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

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



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

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