Class: M3u8::PartInfItem

Inherits:
Object
  • Object
show all
Extended by:
M3u8
Includes:
Serializable
Defined in:
lib/m3u8/part_inf_item.rb

Overview

PartInfItem represents an EXT-X-PART-INF tag which provides information about partial segments in the playlist.

Constant Summary

Constants included from M3u8

VERSION

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from M3u8

initialize_with_byterange, parse_attributes, parse_float, parse_int, parse_yes_no, to_yes_no

Methods included from Serializable

#as_json, serialize, #to_h, #to_json

Constructor Details

#initialize(params = {}) ⇒ PartInfItem

Returns a new instance of PartInfItem.

Parameters:

  • params (Hash) (defaults to: {})

    attribute key-value pairs



14
15
16
17
18
# File 'lib/m3u8/part_inf_item.rb', line 14

def initialize(params = {})
  params.each do |key, value|
    instance_variable_set("@#{key}", value)
  end
end

Instance Attribute Details

#part_targetFloat?

Returns partial segment target duration.

Returns:

  • (Float, nil)

    partial segment target duration



11
12
13
# File 'lib/m3u8/part_inf_item.rb', line 11

def part_target
  @part_target
end

Class Method Details

.parse(text) ⇒ PartInfItem

Parse an EXT-X-PART-INF tag.

Parameters:

  • text (String)

    raw tag line

Returns:



23
24
25
26
27
28
# File 'lib/m3u8/part_inf_item.rb', line 23

def self.parse(text)
  attributes = parse_attributes(text)
  PartInfItem.new(
    part_target: attributes['PART-TARGET'].to_f
  )
end

Instance Method Details

#to_sString

Render as an m3u8 EXT-X-PART-INF tag.

Returns:

  • (String)


32
33
34
# File 'lib/m3u8/part_inf_item.rb', line 32

def to_s
  "#EXT-X-PART-INF:PART-TARGET=#{part_target}"
end