Class: M3u8::MapItem
- Inherits:
-
Object
- Object
- M3u8::MapItem
- Extended by:
- M3u8
- Includes:
- M3u8, AttributeFormatter, Serializable
- Defined in:
- lib/m3u8/map_item.rb
Overview
MapItem represents a EXT-X-MAP tag which specifies how to obtain the Media Initialization Section
Constant Summary
Constants included from M3u8
Instance Attribute Summary collapse
Class Method Summary collapse
-
.parse(text) ⇒ MapItem
Parse an EXT-X-MAP tag.
Instance Method Summary collapse
-
#initialize(params = {}) ⇒ MapItem
constructor
A new instance of MapItem.
-
#to_s ⇒ String
Render as an m3u8 EXT-X-MAP tag.
Methods included from M3u8
initialize_with_byterange, parse_attributes, parse_float, parse_int, parse_yes_no, to_yes_no
Methods included from AttributeFormatter
#boolean_format, #decimal_format, #quoted_format, #unquoted_format
Methods included from Serializable
#as_json, serialize, #to_h, #to_json
Constructor Details
#initialize(params = {}) ⇒ MapItem
Returns a new instance of MapItem.
17 18 19 |
# File 'lib/m3u8/map_item.rb', line 17 def initialize(params = {}) initialize_with_byterange(params) end |
Instance Attribute Details
#byterange ⇒ String, ...
14 15 16 |
# File 'lib/m3u8/map_item.rb', line 14 def byterange @byterange end |
#uri ⇒ String, ...
14 15 16 |
# File 'lib/m3u8/map_item.rb', line 14 def uri @uri end |
Class Method Details
.parse(text) ⇒ MapItem
Parse an EXT-X-MAP tag.
24 25 26 27 28 29 30 |
# File 'lib/m3u8/map_item.rb', line 24 def self.parse(text) attributes = parse_attributes(text) range_value = attributes['BYTERANGE'] range = ByteRange.parse(range_value) unless range_value.nil? = { uri: attributes['URI'], byterange: range } MapItem.new() end |
Instance Method Details
#to_s ⇒ String
Render as an m3u8 EXT-X-MAP tag.
34 35 36 |
# File 'lib/m3u8/map_item.rb', line 34 def to_s "#EXT-X-MAP:#{formatted_attributes.compact.join(',')}" end |