Class: YoutubeAudio::Format

Inherits:
Object
  • Object
show all
Defined in:
lib/youtube_audio/format.rb

Instance Method Summary collapse

Constructor Details

#initialize(response_raw) ⇒ Format

Returns a new instance of Format.



5
6
7
# File 'lib/youtube_audio/format.rb', line 5

def initialize(response_raw)
  @response_raw = response_raw
end

Instance Method Details

#approx_duration_msObject



27
28
29
# File 'lib/youtube_audio/format.rb', line 27

def approx_duration_ms
  @response_raw&.dig('approxDurationMs')
end

#audio?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'lib/youtube_audio/format.rb', line 9

def audio?
  mime_type&.match?('audio/')
end

#audio_qualityObject



31
32
33
# File 'lib/youtube_audio/format.rb', line 31

def audio_quality
  @response_raw&.dig('audioQuality')
end

#cipherObject



19
20
21
# File 'lib/youtube_audio/format.rb', line 19

def cipher
  @response_raw&.dig('cipher')
end

#mime_typeObject



23
24
25
# File 'lib/youtube_audio/format.rb', line 23

def mime_type
  @response_raw&.dig('mimeType')
end

#urlObject



13
14
15
16
17
# File 'lib/youtube_audio/format.rb', line 13

def url
  return UrlDecipher.new(cipher).decipher if cipher

  @response_raw&.dig('url')
end