plex_ruby_sdk 0.15.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/plex_ruby_sdk/models/operations/flattenseasons.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb +6 -6
- data/lib/plex_ruby_sdk/models/operations/get_library_items_collection.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_country.rb +10 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_items_director.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_items_filter.rb +2 -6
- data/lib/plex_ruby_sdk/models/operations/get_library_items_genre.rb +13 -6
- data/lib/plex_ruby_sdk/models/operations/{mediaguid.rb → get_library_items_guids.rb} +2 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb +2 -1
- data/lib/plex_ruby_sdk/models/operations/get_library_items_image.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/{get_search_all_libraries_collection.rb → get_library_items_library_optimizedforstreaming.rb} +5 -9
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb +6 -41
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +42 -14
- data/lib/plex_ruby_sdk/models/operations/get_library_items_location.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +32 -25
- data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +39 -48
- data/lib/plex_ruby_sdk/models/operations/get_library_items_meta.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +146 -141
- data/lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/{get_library_items_library_response_200_type.rb → get_library_items_optimizedforstreaming_1.rb} +3 -5
- data/lib/plex_ruby_sdk/models/operations/get_library_items_part.rb +36 -28
- data/lib/plex_ruby_sdk/models/operations/get_library_items_producer.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_library_items_role.rb +12 -18
- data/lib/plex_ruby_sdk/models/operations/get_library_items_similar.rb +41 -0
- data/lib/plex_ruby_sdk/models/operations/get_library_items_type.rb +14 -46
- data/lib/plex_ruby_sdk/models/operations/get_library_items_writer.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_media.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_mediacontainer.rb +10 -10
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_metadata.rb +6 -6
- data/lib/plex_ruby_sdk/models/operations/{streamtype.rb → get_library_sections_all_optimizedforstreaming_library_1.rb} +4 -9
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_part.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_stream.rb +5 -5
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_attributes.rb +37 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_chapter.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_extras.rb +33 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_hasthumbnail.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_optimizedforstreaming.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_marker.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb +10 -10
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb +22 -22
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb +16 -15
- data/lib/plex_ruby_sdk/models/operations/{metadatarating.rb → get_media_meta_data_ratings.rb} +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb +18 -18
- data/lib/plex_ruby_sdk/models/operations/get_recently_added_metadata.rb +18 -18
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_country.rb +10 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_director.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_directory.rb +81 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_flattenseasons.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_genre.rb +13 -6
- data/lib/plex_ruby_sdk/models/operations/{get_search_all_libraries_mediaguid.rb → get_search_all_libraries_guids.rb} +2 -3
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_hasthumbnail.rb +2 -1
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_library_optimizedforstreaming.rb +29 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_location.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_media.rb +32 -25
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_mediacontainer.rb +32 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_metadata.rb +128 -147
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming_library_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_part.rb +36 -28
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_role.rb +12 -18
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_showordering.rb +6 -5
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_writer.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/searchresult.rb +10 -6
- data/lib/plex_ruby_sdk/models/operations/showordering.rb +6 -5
- data/lib/plex_ruby_sdk/models/operations/stream.rb +5 -5
- data/lib/plex_ruby_sdk/models/operations.rb +18 -24
- data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
- metadata +18 -24
- data/lib/plex_ruby_sdk/models/operations/enablecreditsmarkergeneration.rb +0 -20
- data/lib/plex_ruby_sdk/models/operations/episodesort.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_activedirection.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_defaultdirection.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_field.rb +0 -45
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_fieldtype.rb +0 -37
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_filter.rb +0 -49
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_operator.rb +0 -37
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_sort.rb +0 -63
- data/lib/plex_ruby_sdk/models/operations/get_library_items_stream.rb +0 -181
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_streamtype.rb +0 -25
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb +0 -25
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_enablecreditsmarkergeneration.rb +0 -20
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_episodesort.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_metadatarating.rb +0 -41
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_stream.rb +0 -181
@@ -0,0 +1,53 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
# The thumbnail for the chapter
|
12
|
+
class GetMediaMetaDataChapter
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :end_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('endTimeOffset') } }
|
18
|
+
|
19
|
+
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
|
20
|
+
|
21
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
22
|
+
|
23
|
+
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
|
24
|
+
|
25
|
+
field :start_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('startTimeOffset') } }
|
26
|
+
|
27
|
+
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
28
|
+
|
29
|
+
|
30
|
+
sig { params(end_time_offset: ::Integer, filter: ::String, id: ::Integer, index: ::Integer, start_time_offset: ::Integer, thumb: ::String).void }
|
31
|
+
def initialize(end_time_offset: nil, filter: nil, id: nil, index: nil, start_time_offset: nil, thumb: nil)
|
32
|
+
@end_time_offset = end_time_offset
|
33
|
+
@filter = filter
|
34
|
+
@id = id
|
35
|
+
@index = index
|
36
|
+
@start_time_offset = start_time_offset
|
37
|
+
@thumb = thumb
|
38
|
+
end
|
39
|
+
|
40
|
+
def ==(other)
|
41
|
+
return false unless other.is_a? self.class
|
42
|
+
return false unless @end_time_offset == other.end_time_offset
|
43
|
+
return false unless @filter == other.filter
|
44
|
+
return false unless @id == other.id
|
45
|
+
return false unless @index == other.index
|
46
|
+
return false unless @start_time_offset == other.start_time_offset
|
47
|
+
return false unless @thumb == other.thumb
|
48
|
+
true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
|
12
|
+
class GetMediaMetaDataExtras
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
# The size of the extras.
|
17
|
+
field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
18
|
+
|
19
|
+
|
20
|
+
sig { params(size: T.nilable(::Integer)).void }
|
21
|
+
def initialize(size: nil)
|
22
|
+
@size = size
|
23
|
+
end
|
24
|
+
|
25
|
+
def ==(other)
|
26
|
+
return false unless other.is_a? self.class
|
27
|
+
return false unless @size == other.size
|
28
|
+
true
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
# The final status of the marker
|
12
|
+
class GetMediaMetaDataMarker
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :end_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('endTimeOffset') } }
|
18
|
+
|
19
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
+
|
21
|
+
field :start_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('startTimeOffset') } }
|
22
|
+
|
23
|
+
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
|
24
|
+
# Attributes associated with the marker.
|
25
|
+
field :attributes, T.nilable(Models::Operations::GetMediaMetaDataAttributes), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Attributes') } }
|
26
|
+
|
27
|
+
field :final, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('final') } }
|
28
|
+
|
29
|
+
|
30
|
+
sig { params(end_time_offset: ::Integer, id: ::Integer, start_time_offset: ::Integer, type: ::String, attributes: T.nilable(Models::Operations::GetMediaMetaDataAttributes), final: T.nilable(T::Boolean)).void }
|
31
|
+
def initialize(end_time_offset: nil, id: nil, start_time_offset: nil, type: nil, attributes: nil, final: nil)
|
32
|
+
@end_time_offset = end_time_offset
|
33
|
+
@id = id
|
34
|
+
@start_time_offset = start_time_offset
|
35
|
+
@type = type
|
36
|
+
@attributes = attributes
|
37
|
+
@final = final
|
38
|
+
end
|
39
|
+
|
40
|
+
def ==(other)
|
41
|
+
return false unless other.is_a? self.class
|
42
|
+
return false unless @end_time_offset == other.end_time_offset
|
43
|
+
return false unless @id == other.id
|
44
|
+
return false unless @start_time_offset == other.start_time_offset
|
45
|
+
return false unless @type == other.type
|
46
|
+
return false unless @attributes == other.attributes
|
47
|
+
return false unless @final == other.final
|
48
|
+
true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -25,13 +25,15 @@ module PlexRubySDK
|
|
25
25
|
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
|
26
26
|
# Bitrate in bits per second.
|
27
27
|
field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
|
28
|
-
#
|
28
|
+
# Container format of the media.
|
29
29
|
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
|
30
30
|
|
31
31
|
field :display_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayOffset') } }
|
32
32
|
# Duration of the media in milliseconds.
|
33
33
|
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
|
34
|
-
|
34
|
+
# Indicates whether the media has 64-bit offsets.
|
35
|
+
# This is relevant for media files that may require larger offsets than what 32-bit integers can provide.
|
36
|
+
#
|
35
37
|
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
|
36
38
|
# Indicates whether voice activity is detected.
|
37
39
|
field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
|
@@ -39,7 +41,7 @@ module PlexRubySDK
|
|
39
41
|
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
|
40
42
|
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
41
43
|
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::GetMediaMetaDataOptimizedForStreaming1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
42
|
-
|
44
|
+
|
43
45
|
field :part, T.nilable(T::Array[Models::Operations::GetMediaMetaDataPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
|
44
46
|
# Video codec used.
|
45
47
|
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
|
@@ -17,10 +17,6 @@ module PlexRubySDK
|
|
17
17
|
field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
|
18
18
|
# An plugin identifier for the media container.
|
19
19
|
field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
|
20
|
-
# The unique identifier for the library section.
|
21
|
-
field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
22
|
-
# The title of the library section.
|
23
|
-
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
24
20
|
# The prefix used for media tag resource paths.
|
25
21
|
field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
|
26
22
|
# The version number for media tags.
|
@@ -29,20 +25,24 @@ module PlexRubySDK
|
|
29
25
|
field :metadata, T::Array[Models::Operations::GetMediaMetaDataMetadata], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
|
30
26
|
# Number of media items returned in this response.
|
31
27
|
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
28
|
+
# The unique identifier for the library section.
|
29
|
+
field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
30
|
+
# The title of the library section.
|
31
|
+
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
32
32
|
# The universally unique identifier for the library section.
|
33
33
|
field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
|
34
34
|
|
35
35
|
|
36
|
-
sig { params(allow_sync: T::Boolean, identifier: ::String,
|
37
|
-
def initialize(allow_sync: nil, identifier: nil,
|
36
|
+
sig { params(allow_sync: T::Boolean, identifier: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[Models::Operations::GetMediaMetaDataMetadata], size: ::Integer, library_section_id: T.nilable(::Integer), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String)).void }
|
37
|
+
def initialize(allow_sync: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, size: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil)
|
38
38
|
@allow_sync = allow_sync
|
39
39
|
@identifier = identifier
|
40
|
-
@library_section_id = library_section_id
|
41
|
-
@library_section_title = library_section_title
|
42
40
|
@media_tag_prefix = media_tag_prefix
|
43
41
|
@media_tag_version = media_tag_version
|
44
42
|
@metadata = metadata
|
45
43
|
@size = size
|
44
|
+
@library_section_id = library_section_id
|
45
|
+
@library_section_title = library_section_title
|
46
46
|
@library_section_uuid = library_section_uuid
|
47
47
|
end
|
48
48
|
|
@@ -50,12 +50,12 @@ module PlexRubySDK
|
|
50
50
|
return false unless other.is_a? self.class
|
51
51
|
return false unless @allow_sync == other.allow_sync
|
52
52
|
return false unless @identifier == other.identifier
|
53
|
-
return false unless @library_section_id == other.library_section_id
|
54
|
-
return false unless @library_section_title == other.library_section_title
|
55
53
|
return false unless @media_tag_prefix == other.media_tag_prefix
|
56
54
|
return false unless @media_tag_version == other.media_tag_version
|
57
55
|
return false unless @metadata == other.metadata
|
58
56
|
return false unless @size == other.size
|
57
|
+
return false unless @library_section_id == other.library_section_id
|
58
|
+
return false unless @library_section_title == other.library_section_title
|
59
59
|
return false unless @library_section_uuid == other.library_section_uuid
|
60
60
|
true
|
61
61
|
end
|
@@ -30,14 +30,6 @@ module PlexRubySDK
|
|
30
30
|
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
|
31
31
|
# The unique key for the media item.
|
32
32
|
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
33
|
-
# The identifier for the library section.
|
34
|
-
field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
35
|
-
# The key corresponding to the library section.
|
36
|
-
field :library_section_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
|
37
|
-
# The title of the library section.
|
38
|
-
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
39
|
-
# The original release date of the media item.
|
40
|
-
field :originally_available_at, ::Date, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(false) } }
|
41
33
|
# The critic rating for the media item.
|
42
34
|
field :rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
|
43
35
|
# The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API.
|
@@ -63,7 +55,7 @@ module PlexRubySDK
|
|
63
55
|
# The URL for the audience rating image.
|
64
56
|
field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
|
65
57
|
|
66
|
-
field :chapter, T.nilable(T::Array[Models::Operations::
|
58
|
+
field :chapter, T.nilable(T::Array[Models::Operations::GetMediaMetaDataChapter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Chapter') } }
|
67
59
|
# The source from which chapter data is derived.
|
68
60
|
field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } }
|
69
61
|
# The content rating for the media item.
|
@@ -77,7 +69,7 @@ module PlexRubySDK
|
|
77
69
|
|
78
70
|
field :director, T.nilable(T::Array[Models::Operations::GetMediaMetaDataDirector]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
|
79
71
|
|
80
|
-
field :extras, T.nilable(Models::Operations::
|
72
|
+
field :extras, T.nilable(Models::Operations::GetMediaMetaDataExtras), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Extras') } }
|
81
73
|
|
82
74
|
field :genre, T.nilable(T::Array[Models::Operations::GetMediaMetaDataGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
|
83
75
|
# The art URL for the grandparent media item.
|
@@ -106,12 +98,20 @@ module PlexRubySDK
|
|
106
98
|
field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
|
107
99
|
# The number of leaf items (end nodes) under this media item.
|
108
100
|
field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
|
101
|
+
# The identifier for the library section.
|
102
|
+
field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
103
|
+
# The key corresponding to the library section.
|
104
|
+
field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
|
105
|
+
# The title of the library section.
|
106
|
+
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
109
107
|
|
110
108
|
field :location, T.nilable(T::Array[Models::Operations::GetMediaMetaDataLocation]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Location') } }
|
111
109
|
|
112
|
-
field :marker, T.nilable(T::Array[Models::Operations::
|
110
|
+
field :marker, T.nilable(T::Array[Models::Operations::GetMediaMetaDataMarker]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Marker') } }
|
113
111
|
|
114
112
|
field :media, T.nilable(T::Array[Models::Operations::GetMediaMetaDataMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
|
113
|
+
# The original release date of the media item.
|
114
|
+
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
|
115
115
|
# The original title of the media item (if different).
|
116
116
|
field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } }
|
117
117
|
# The GUID of the parent media item.
|
@@ -133,7 +133,7 @@ module PlexRubySDK
|
|
133
133
|
# The URL for the rating image.
|
134
134
|
field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
|
135
135
|
|
136
|
-
field :ratings, T.nilable(T::Array[Models::Operations::
|
136
|
+
field :ratings, T.nilable(T::Array[Models::Operations::GetMediaMetaDataRatings]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
|
137
137
|
|
138
138
|
field :role, T.nilable(T::Array[Models::Operations::GetMediaMetaDataRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
|
139
139
|
|
@@ -162,8 +162,8 @@ module PlexRubySDK
|
|
162
162
|
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
|
163
163
|
|
164
164
|
|
165
|
-
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String,
|
166
|
-
def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil,
|
165
|
+
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String, rating: ::Float, rating_key: ::String, season_count: ::Integer, slug: ::String, summary: ::String, tagline: ::String, theme: ::String, thumb: ::String, title: ::String, title_sort: ::String, type: Models::Operations::GetMediaMetaDataType, audience_rating_image: T.nilable(::String), chapter: T.nilable(T::Array[Models::Operations::GetMediaMetaDataChapter]), chapter_source: T.nilable(::String), content_rating: T.nilable(::String), country: T.nilable(T::Array[Models::Operations::GetMediaMetaDataCountry]), created_at_accuracy: T.nilable(::String), created_at_tz_offset: T.nilable(::String), director: T.nilable(T::Array[Models::Operations::GetMediaMetaDataDirector]), extras: T.nilable(Models::Operations::GetMediaMetaDataExtras), genre: T.nilable(T::Array[Models::Operations::GetMediaMetaDataGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[Models::Operations::GetMediaMetaDataGuids]), image: T.nilable(T::Array[Models::Operations::GetMediaMetaDataImage]), last_rated_at: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), library_section_id: T.nilable(::Integer), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), location: T.nilable(T::Array[Models::Operations::GetMediaMetaDataLocation]), marker: T.nilable(T::Array[Models::Operations::GetMediaMetaDataMarker]), media: T.nilable(T::Array[Models::Operations::GetMediaMetaDataMedia]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), producer: T.nilable(T::Array[Models::Operations::GetMediaMetaDataProducer]), rating_image: T.nilable(::String), ratings: T.nilable(T::Array[Models::Operations::GetMediaMetaDataRatings]), role: T.nilable(T::Array[Models::Operations::GetMediaMetaDataRole]), similar: T.nilable(T::Array[Models::Operations::GetMediaMetaDataSimilar]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), subtype: T.nilable(::String), ultra_blur_colors: T.nilable(Models::Operations::GetMediaMetaDataUltraBlurColors), updated_at: T.nilable(::Integer), user_rating: T.nilable(::Float), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[Models::Operations::GetMediaMetaDataWriter]), year: T.nilable(::Integer)).void }
|
166
|
+
def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil, rating: nil, rating_key: nil, season_count: nil, slug: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, audience_rating_image: nil, chapter: nil, chapter_source: nil, content_rating: nil, country: nil, created_at_accuracy: nil, created_at_tz_offset: nil, director: nil, extras: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, image: nil, last_rated_at: nil, last_viewed_at: nil, leaf_count: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, location: nil, marker: nil, media: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, primary_extra_key: nil, producer: nil, rating_image: nil, ratings: nil, role: nil, similar: nil, skip_count: nil, studio: nil, subtype: nil, ultra_blur_colors: nil, updated_at: nil, user_rating: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
|
167
167
|
@added_at = added_at
|
168
168
|
@art = art
|
169
169
|
@audience_rating = audience_rating
|
@@ -172,10 +172,6 @@ module PlexRubySDK
|
|
172
172
|
@guid = guid
|
173
173
|
@index = index
|
174
174
|
@key = key
|
175
|
-
@library_section_id = library_section_id
|
176
|
-
@library_section_key = library_section_key
|
177
|
-
@library_section_title = library_section_title
|
178
|
-
@originally_available_at = originally_available_at
|
179
175
|
@rating = rating
|
180
176
|
@rating_key = rating_key
|
181
177
|
@season_count = season_count
|
@@ -210,9 +206,13 @@ module PlexRubySDK
|
|
210
206
|
@last_rated_at = last_rated_at
|
211
207
|
@last_viewed_at = last_viewed_at
|
212
208
|
@leaf_count = leaf_count
|
209
|
+
@library_section_id = library_section_id
|
210
|
+
@library_section_key = library_section_key
|
211
|
+
@library_section_title = library_section_title
|
213
212
|
@location = location
|
214
213
|
@marker = marker
|
215
214
|
@media = media
|
215
|
+
@originally_available_at = originally_available_at
|
216
216
|
@original_title = original_title
|
217
217
|
@parent_guid = parent_guid
|
218
218
|
@parent_index = parent_index
|
@@ -249,10 +249,6 @@ module PlexRubySDK
|
|
249
249
|
return false unless @guid == other.guid
|
250
250
|
return false unless @index == other.index
|
251
251
|
return false unless @key == other.key
|
252
|
-
return false unless @library_section_id == other.library_section_id
|
253
|
-
return false unless @library_section_key == other.library_section_key
|
254
|
-
return false unless @library_section_title == other.library_section_title
|
255
|
-
return false unless @originally_available_at == other.originally_available_at
|
256
252
|
return false unless @rating == other.rating
|
257
253
|
return false unless @rating_key == other.rating_key
|
258
254
|
return false unless @season_count == other.season_count
|
@@ -287,9 +283,13 @@ module PlexRubySDK
|
|
287
283
|
return false unless @last_rated_at == other.last_rated_at
|
288
284
|
return false unless @last_viewed_at == other.last_viewed_at
|
289
285
|
return false unless @leaf_count == other.leaf_count
|
286
|
+
return false unless @library_section_id == other.library_section_id
|
287
|
+
return false unless @library_section_key == other.library_section_key
|
288
|
+
return false unless @library_section_title == other.library_section_title
|
290
289
|
return false unless @location == other.location
|
291
290
|
return false unless @marker == other.marker
|
292
291
|
return false unless @media == other.media
|
292
|
+
return false unless @originally_available_at == other.originally_available_at
|
293
293
|
return false unless @original_title == other.original_title
|
294
294
|
return false unless @parent_guid == other.parent_guid
|
295
295
|
return false unless @parent_index == other.parent_index
|
@@ -13,14 +13,8 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
# File path for the part.
|
17
|
-
field :file, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
|
18
16
|
# Unique part identifier.
|
19
17
|
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
-
# Key to access this part.
|
21
|
-
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
22
|
-
# File size in bytes.
|
23
|
-
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
24
18
|
# Indicates if the part is accessible.
|
25
19
|
field :accessible, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('accessible') } }
|
26
20
|
# The audio profile used for the media (e.g., DTS, Dolby Digital, etc.).
|
@@ -31,58 +25,65 @@ module PlexRubySDK
|
|
31
25
|
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
|
32
26
|
# Indicates if the part exists.
|
33
27
|
field :exists, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('exists') } }
|
28
|
+
# File path for the part.
|
29
|
+
field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
|
34
30
|
|
35
31
|
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
|
36
32
|
|
37
33
|
field :has_thumbnail, T.nilable(Models::Operations::GetMediaMetaDataHasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(Models::Operations::GetMediaMetaDataHasThumbnail, true) } }
|
38
34
|
|
39
35
|
field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
|
36
|
+
# Key to access this part.
|
37
|
+
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
40
38
|
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
39
|
+
#
|
41
40
|
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::GetMediaMetaDataOptimizedForStreamingLibrary1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
42
41
|
|
43
42
|
field :packet_length, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('packetLength') } }
|
44
|
-
#
|
43
|
+
# File size in bytes.
|
44
|
+
field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
45
|
+
|
45
46
|
field :stream, T.nilable(T::Array[Models::Operations::GetMediaMetaDataStream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
|
46
47
|
# Video profile for the part.
|
47
48
|
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
|
48
49
|
|
49
50
|
|
50
|
-
sig { params(
|
51
|
-
def initialize(
|
52
|
-
@file = file
|
51
|
+
sig { params(id: ::Integer, accessible: T.nilable(T::Boolean), audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Integer), exists: T.nilable(T::Boolean), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(Models::Operations::GetMediaMetaDataHasThumbnail), indexes: T.nilable(::String), key: T.nilable(::String), optimized_for_streaming: T.nilable(T.any(Models::Operations::GetMediaMetaDataOptimizedForStreamingLibrary1, T::Boolean)), packet_length: T.nilable(::Integer), size: T.nilable(::Integer), stream: T.nilable(T::Array[Models::Operations::GetMediaMetaDataStream]), video_profile: T.nilable(::String)).void }
|
52
|
+
def initialize(id: nil, accessible: nil, audio_profile: nil, container: nil, duration: nil, exists: nil, file: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, key: nil, optimized_for_streaming: nil, packet_length: nil, size: nil, stream: nil, video_profile: nil)
|
53
53
|
@id = id
|
54
|
-
@key = key
|
55
|
-
@size = size
|
56
54
|
@accessible = accessible
|
57
55
|
@audio_profile = audio_profile
|
58
56
|
@container = container
|
59
57
|
@duration = duration
|
60
58
|
@exists = exists
|
59
|
+
@file = file
|
61
60
|
@has64bit_offsets = has64bit_offsets
|
62
61
|
@has_thumbnail = has_thumbnail
|
63
62
|
@indexes = indexes
|
63
|
+
@key = key
|
64
64
|
@optimized_for_streaming = optimized_for_streaming
|
65
65
|
@packet_length = packet_length
|
66
|
+
@size = size
|
66
67
|
@stream = stream
|
67
68
|
@video_profile = video_profile
|
68
69
|
end
|
69
70
|
|
70
71
|
def ==(other)
|
71
72
|
return false unless other.is_a? self.class
|
72
|
-
return false unless @file == other.file
|
73
73
|
return false unless @id == other.id
|
74
|
-
return false unless @key == other.key
|
75
|
-
return false unless @size == other.size
|
76
74
|
return false unless @accessible == other.accessible
|
77
75
|
return false unless @audio_profile == other.audio_profile
|
78
76
|
return false unless @container == other.container
|
79
77
|
return false unless @duration == other.duration
|
80
78
|
return false unless @exists == other.exists
|
79
|
+
return false unless @file == other.file
|
81
80
|
return false unless @has64bit_offsets == other.has64bit_offsets
|
82
81
|
return false unless @has_thumbnail == other.has_thumbnail
|
83
82
|
return false unless @indexes == other.indexes
|
83
|
+
return false unless @key == other.key
|
84
84
|
return false unless @optimized_for_streaming == other.optimized_for_streaming
|
85
85
|
return false unless @packet_length == other.packet_length
|
86
|
+
return false unless @size == other.size
|
86
87
|
return false unless @stream == other.stream
|
87
88
|
return false unless @video_profile == other.video_profile
|
88
89
|
true
|
data/lib/plex_ruby_sdk/models/operations/{metadatarating.rb → get_media_meta_data_ratings.rb}
RENAMED
@@ -9,15 +9,15 @@ module PlexRubySDK
|
|
9
9
|
module Operations
|
10
10
|
|
11
11
|
|
12
|
-
class
|
12
|
+
class GetMediaMetaDataRatings
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
#
|
16
|
+
# The image or reference for the rating.
|
17
17
|
field :image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } }
|
18
18
|
# The type of rating (e.g., audience, critic).
|
19
19
|
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
|
20
|
-
# The value
|
20
|
+
# The rating value.
|
21
21
|
field :value, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('value') } }
|
22
22
|
|
23
23
|
|
@@ -13,20 +13,14 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
# Codec used by the stream.
|
17
|
-
field :codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
|
18
|
-
# Display title for the stream.
|
19
|
-
field :display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
|
20
|
-
# Extended display title for the stream.
|
21
|
-
field :extended_display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
|
22
16
|
# Unique stream identifier.
|
23
17
|
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
24
18
|
# Stream type:
|
25
|
-
# -
|
26
|
-
# -
|
27
|
-
# -
|
19
|
+
# - VIDEO = 1
|
20
|
+
# - AUDIO = 2
|
21
|
+
# - SUBTITLE = 3
|
28
22
|
#
|
29
|
-
field :stream_type,
|
23
|
+
field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
|
30
24
|
# Audio channel layout.
|
31
25
|
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
|
32
26
|
# Bit depth of the video stream.
|
@@ -43,6 +37,8 @@ module PlexRubySDK
|
|
43
37
|
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
|
44
38
|
|
45
39
|
field :closed_captions, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('closedCaptions') } }
|
40
|
+
# Codec used by the stream.
|
41
|
+
field :codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
|
46
42
|
# Coded video height.
|
47
43
|
field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
|
48
44
|
# Coded video width.
|
@@ -57,6 +53,8 @@ module PlexRubySDK
|
|
57
53
|
field :color_trc, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorTrc') } }
|
58
54
|
# Indicates if this stream is default.
|
59
55
|
field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
|
56
|
+
# Display title for the stream.
|
57
|
+
field :display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
|
60
58
|
# Dolby Vision BL compatibility ID.
|
61
59
|
field :dovibl_compat_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIBLCompatID') } }
|
62
60
|
# Indicates if Dolby Vision BL is present.
|
@@ -77,6 +75,8 @@ module PlexRubySDK
|
|
77
75
|
field :dub, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('dub') } }
|
78
76
|
|
79
77
|
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
|
78
|
+
# Extended display title for the stream.
|
79
|
+
field :extended_display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
|
80
80
|
|
81
81
|
field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
|
82
82
|
# Format of the stream (e.g., srt).
|
@@ -121,11 +121,8 @@ module PlexRubySDK
|
|
121
121
|
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
|
122
122
|
|
123
123
|
|
124
|
-
sig { params(
|
125
|
-
def initialize(
|
126
|
-
@codec = codec
|
127
|
-
@display_title = display_title
|
128
|
-
@extended_display_title = extended_display_title
|
124
|
+
sig { params(id: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), codec: T.nilable(::String), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), extended_display_title: T.nilable(::String), forced: T.nilable(T::Boolean), format: T.nilable(::String), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), index: T.nilable(::Integer), key: T.nilable(::String), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
|
125
|
+
def initialize(id: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, codec: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, display_title: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, extended_display_title: nil, forced: nil, format: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, index: nil, key: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
|
129
126
|
@id = id
|
130
127
|
@stream_type = stream_type
|
131
128
|
@audio_channel_layout = audio_channel_layout
|
@@ -136,6 +133,7 @@ module PlexRubySDK
|
|
136
133
|
@chroma_location = chroma_location
|
137
134
|
@chroma_subsampling = chroma_subsampling
|
138
135
|
@closed_captions = closed_captions
|
136
|
+
@codec = codec
|
139
137
|
@coded_height = coded_height
|
140
138
|
@coded_width = coded_width
|
141
139
|
@color_primaries = color_primaries
|
@@ -143,6 +141,7 @@ module PlexRubySDK
|
|
143
141
|
@color_space = color_space
|
144
142
|
@color_trc = color_trc
|
145
143
|
@default = default
|
144
|
+
@display_title = display_title
|
146
145
|
@dovibl_compat_id = dovibl_compat_id
|
147
146
|
@dovibl_present = dovibl_present
|
148
147
|
@doviel_present = doviel_present
|
@@ -153,6 +152,7 @@ module PlexRubySDK
|
|
153
152
|
@dovi_version = dovi_version
|
154
153
|
@dub = dub
|
155
154
|
@embedded_in_video = embedded_in_video
|
155
|
+
@extended_display_title = extended_display_title
|
156
156
|
@forced = forced
|
157
157
|
@format = format
|
158
158
|
@frame_rate = frame_rate
|
@@ -178,9 +178,6 @@ module PlexRubySDK
|
|
178
178
|
|
179
179
|
def ==(other)
|
180
180
|
return false unless other.is_a? self.class
|
181
|
-
return false unless @codec == other.codec
|
182
|
-
return false unless @display_title == other.display_title
|
183
|
-
return false unless @extended_display_title == other.extended_display_title
|
184
181
|
return false unless @id == other.id
|
185
182
|
return false unless @stream_type == other.stream_type
|
186
183
|
return false unless @audio_channel_layout == other.audio_channel_layout
|
@@ -191,6 +188,7 @@ module PlexRubySDK
|
|
191
188
|
return false unless @chroma_location == other.chroma_location
|
192
189
|
return false unless @chroma_subsampling == other.chroma_subsampling
|
193
190
|
return false unless @closed_captions == other.closed_captions
|
191
|
+
return false unless @codec == other.codec
|
194
192
|
return false unless @coded_height == other.coded_height
|
195
193
|
return false unless @coded_width == other.coded_width
|
196
194
|
return false unless @color_primaries == other.color_primaries
|
@@ -198,6 +196,7 @@ module PlexRubySDK
|
|
198
196
|
return false unless @color_space == other.color_space
|
199
197
|
return false unless @color_trc == other.color_trc
|
200
198
|
return false unless @default == other.default
|
199
|
+
return false unless @display_title == other.display_title
|
201
200
|
return false unless @dovibl_compat_id == other.dovibl_compat_id
|
202
201
|
return false unless @dovibl_present == other.dovibl_present
|
203
202
|
return false unless @doviel_present == other.doviel_present
|
@@ -208,6 +207,7 @@ module PlexRubySDK
|
|
208
207
|
return false unless @dovi_version == other.dovi_version
|
209
208
|
return false unless @dub == other.dub
|
210
209
|
return false unless @embedded_in_video == other.embedded_in_video
|
210
|
+
return false unless @extended_display_title == other.extended_display_title
|
211
211
|
return false unless @forced == other.forced
|
212
212
|
return false unless @format == other.format
|
213
213
|
return false unless @frame_rate == other.frame_rate
|