fastpixapi 1.1.3 → 1.1.4
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/fastpix_client/dimensions.rb +3 -3
- data/lib/fastpix_client/errors.rb +1 -1
- data/lib/fastpix_client/in_video_ai_features.rb +8 -8
- data/lib/fastpix_client/input_video.rb +4 -3
- data/lib/fastpix_client/manage_live_stream.rb +13 -12
- data/lib/fastpix_client/manage_videos.rb +21 -23
- data/lib/fastpix_client/metrics.rb +3 -3
- data/lib/fastpix_client/models/components/addtrackrequest.rb +6 -2
- data/lib/fastpix_client/models/components/addtrackrequest.rbi +2 -0
- data/lib/fastpix_client/models/components/addtrackresponse.rb +6 -2
- data/lib/fastpix_client/models/components/addtrackresponse.rbi +2 -0
- data/lib/fastpix_client/models/components/audiotrack.rb +6 -2
- data/lib/fastpix_client/models/components/audiotrack.rbi +2 -0
- data/lib/fastpix_client/models/components/generatetrackresponse.rb +6 -2
- data/lib/fastpix_client/models/components/generatetrackresponse.rbi +2 -0
- data/lib/fastpix_client/models/components/getallmediaresponse.rb +9 -11
- data/lib/fastpix_client/models/components/getallmediaresponse.rbi +2 -0
- data/lib/fastpix_client/models/components/getallmediaresponse_mp4support.rb +32 -12
- data/lib/fastpix_client/models/components/getallmediaresponse_mp4support.rbi +11 -1
- data/lib/fastpix_client/models/components/getallmediaresponse_sourceresolution.rb +2 -0
- data/lib/fastpix_client/models/components/{getmediaresponse.rb → getmediadetailresponse.rb} +14 -16
- data/lib/fastpix_client/models/components/{getmediaresponse.rbi → getmediadetailresponse.rbi} +4 -2
- data/lib/fastpix_client/models/components/{getmediaresponse_maxresolution.rb → getmediadetailresponse_maxresolution.rb} +2 -2
- data/lib/fastpix_client/models/components/getmediadetailresponse_maxresolution.rbi +11 -0
- data/lib/fastpix_client/models/components/{getmediaresponse_mediaquality.rb → getmediadetailresponse_mediaquality.rb} +2 -2
- data/lib/fastpix_client/models/components/getmediadetailresponse_mediaquality.rbi +11 -0
- data/lib/fastpix_client/models/components/getmediadetailresponse_mp4support.rb +48 -0
- data/lib/fastpix_client/models/components/getmediadetailresponse_mp4support.rbi +21 -0
- data/lib/fastpix_client/models/components/{getmediaresponse_sourceresolution.rb → getmediadetailresponse_sourceresolution.rb} +4 -2
- data/lib/fastpix_client/models/components/getmediadetailresponse_sourceresolution.rbi +11 -0
- data/lib/fastpix_client/models/components/{getmediaresponse_status.rb → getmediadetailresponse_status.rb} +2 -2
- data/lib/fastpix_client/models/components/getmediadetailresponse_status.rbi +11 -0
- data/lib/fastpix_client/models/components/{getmediaresponse_track.rb → getmediadetailresponse_track.rb} +1 -1
- data/lib/fastpix_client/models/components/getmediadetailresponse_track.rbi +11 -0
- data/lib/fastpix_client/models/components/live_media_clips.rb +9 -11
- data/lib/fastpix_client/models/components/live_media_clips.rbi +2 -0
- data/lib/fastpix_client/models/components/live_media_clips_mp4support.rb +32 -12
- data/lib/fastpix_client/models/components/live_media_clips_mp4support.rbi +11 -1
- data/lib/fastpix_client/models/components/live_media_clips_sourceresolution.rb +2 -0
- data/lib/fastpix_client/models/components/media.rb +9 -11
- data/lib/fastpix_client/models/components/media.rbi +2 -0
- data/lib/fastpix_client/models/components/media_mp4support.rb +32 -12
- data/lib/fastpix_client/models/components/media_mp4support.rbi +11 -1
- data/lib/fastpix_client/models/components/media_sourceresolution.rb +2 -0
- data/lib/fastpix_client/models/components/sourceaccessmedia.rb +9 -11
- data/lib/fastpix_client/models/components/sourceaccessmedia.rbi +2 -0
- data/lib/fastpix_client/models/components/sourceaccessmedia_mp4support.rb +32 -12
- data/lib/fastpix_client/models/components/sourceaccessmedia_mp4support.rbi +11 -1
- data/lib/fastpix_client/models/components/sourceaccessmedia_sourceresolution.rb +2 -0
- data/lib/fastpix_client/models/components/subtitletrack.rb +6 -2
- data/lib/fastpix_client/models/components/subtitletrack.rbi +2 -0
- data/lib/fastpix_client/models/components/tracksubtitlesgeneraterequest.rb +6 -2
- data/lib/fastpix_client/models/components/tracksubtitlesgeneraterequest.rbi +2 -0
- data/lib/fastpix_client/models/components/update_media.rb +9 -11
- data/lib/fastpix_client/models/components/update_media.rbi +2 -0
- data/lib/fastpix_client/models/components/update_media_maxresolution.rb +0 -1
- data/lib/fastpix_client/models/components/update_media_mp4support.rb +32 -12
- data/lib/fastpix_client/models/components/update_media_mp4support.rbi +11 -1
- data/lib/fastpix_client/models/components/updatetrackrequest.rb +7 -7
- data/lib/fastpix_client/models/components/updatetrackrequest.rbi +2 -2
- data/lib/fastpix_client/models/components/updatetrackresponse.rb +6 -2
- data/lib/fastpix_client/models/components/updatetrackresponse.rbi +2 -0
- data/lib/fastpix_client/models/components/videotrack.rb +6 -2
- data/lib/fastpix_client/models/components/videotrack.rbi +2 -0
- data/lib/fastpix_client/models/components/videotrackforgetall.rb +6 -2
- data/lib/fastpix_client/models/components/videotrackforgetall.rbi +2 -0
- data/lib/fastpix_client/models/components.rb +7 -7
- data/lib/fastpix_client/models/operations/get_media_response.rb +1 -1
- data/lib/fastpix_client/models/operations/get_media_responsebody.rb +2 -2
- data/lib/fastpix_client/playlist.rb +2 -1
- data/lib/fastpix_client/sdkconfiguration.rb +2 -2
- data/lib/fastpix_client/simulcast_stream.rb +3 -3
- data/lib/fastpix_client/start_live_stream.rb +4 -4
- data/lib/fastpix_client/views.rb +3 -3
- metadata +16 -18
- data/lib/fastpix_client/models/components/getmediaresponse_maxresolution.rbi +0 -11
- data/lib/fastpix_client/models/components/getmediaresponse_mediaquality.rbi +0 -11
- data/lib/fastpix_client/models/components/getmediaresponse_mp4support.rb +0 -28
- data/lib/fastpix_client/models/components/getmediaresponse_mp4support.rbi +0 -11
- data/lib/fastpix_client/models/components/getmediaresponse_sourceresolution.rbi +0 -11
- data/lib/fastpix_client/models/components/getmediaresponse_status.rbi +0 -11
- data/lib/fastpix_client/models/components/getmediaresponse_track.rbi +0 -11
- data/test/sdk_examples_test.rb +0 -20
- data/test/test_helper.rb +0 -29
|
@@ -22,13 +22,8 @@ module FastpixClient
|
|
|
22
22
|
field :creator_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('creatorId') } }
|
|
23
23
|
# Determines the media’s status, which can be one of the possible values.
|
|
24
24
|
field :status, Crystalline::Nilable.new(Models::Components::MediaStatus), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status'), 'decoder': Utils.enum_from_string(Models::Components::MediaStatus, true) } }
|
|
25
|
-
#
|
|
26
|
-
|
|
27
|
-
# - **capped_4k**: Enables MP4 downloads with resolutions up to 4K.
|
|
28
|
-
# - **audioOnly**: Provides an MP4 stream containing only the audio.
|
|
29
|
-
# - **audioOnly,capped_4k**: Enables both MP4 video downloads (up to 4K) and an audio-only stream.
|
|
30
|
-
#
|
|
31
|
-
field :mp4_support, Crystalline::Nilable.new(Models::Components::MediaMp4Support), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mp4Support'), 'decoder': Utils.enum_from_string(Models::Components::MediaMp4Support, true) } }
|
|
25
|
+
# The MP4 renditions generated for the media. Present only when MP4 support is enabled.
|
|
26
|
+
field :mp4_support, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::MediaMp4Support)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mp4Support') } }
|
|
32
27
|
# A collection of Playback ID objects utilized for crafting HLS playback URLs.
|
|
33
28
|
field :playback_ids, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::PlaybackId)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('playbackIds') } }
|
|
34
29
|
# A media consists of different media tracks, like video, audio, and subtitle, all combined.
|
|
@@ -66,11 +61,13 @@ module FastpixClient
|
|
|
66
61
|
field :is_audio_only, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('isAudioOnly') } }
|
|
67
62
|
# Indicates whether subtitles are available for the media.
|
|
68
63
|
field :subtitle_available, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('subtitleAvailable') } }
|
|
64
|
+
# Enhance the quality and volume of the audio track. This is available for pre-recorded content only.
|
|
65
|
+
field :optimize_audio, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('optimizeAudio') } }
|
|
69
66
|
# The aspect ratio of a video is a value that describes the relative shape of a video based on its width and height.
|
|
70
67
|
field :aspect_ratio, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('aspectRatio') } }
|
|
71
68
|
|
|
72
|
-
sig { params(id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::MediaMediaQuality), creator_id: T.nilable(::String), status: T.nilable(Models::Components::MediaStatus), mp4_support: T.nilable(Models::Components::MediaMp4Support), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), duration: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), thumbnail: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::MediaMaxResolution), source_resolution: T.nilable(Models::Components::MediaSourceResolution), source_access: T.nilable(T::Boolean), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean), subtitle_available: T.nilable(T::Boolean), aspect_ratio: T.nilable(::String)).void }
|
|
73
|
-
def initialize(id: nil, workspace_id: nil, media_quality: nil, creator_id: nil, status: nil, mp4_support: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, duration: nil, created_at: nil, updated_at: nil, thumbnail: nil, metadata: nil, title: nil, max_resolution: Models::Components::MediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::MediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, source_access: nil, generated_subtitles: nil, is_audio_only: nil, subtitle_available: nil, aspect_ratio: nil)
|
|
69
|
+
sig { params(id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::MediaMediaQuality), creator_id: T.nilable(::String), status: T.nilable(Models::Components::MediaStatus), mp4_support: T.nilable(T::Array[Models::Components::MediaMp4Support]), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), duration: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), thumbnail: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::MediaMaxResolution), source_resolution: T.nilable(Models::Components::MediaSourceResolution), source_access: T.nilable(T::Boolean), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean), subtitle_available: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean), aspect_ratio: T.nilable(::String)).void }
|
|
70
|
+
def initialize(id: nil, workspace_id: nil, media_quality: nil, creator_id: nil, status: nil, mp4_support: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, duration: nil, created_at: nil, updated_at: nil, thumbnail: nil, metadata: nil, title: nil, max_resolution: Models::Components::MediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::MediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, source_access: nil, generated_subtitles: nil, is_audio_only: nil, subtitle_available: nil, optimize_audio: nil, aspect_ratio: nil)
|
|
74
71
|
@id = id
|
|
75
72
|
@workspace_id = workspace_id
|
|
76
73
|
@media_quality = media_quality
|
|
@@ -95,6 +92,7 @@ module FastpixClient
|
|
|
95
92
|
@generated_subtitles = generated_subtitles
|
|
96
93
|
@is_audio_only = is_audio_only
|
|
97
94
|
@subtitle_available = subtitle_available
|
|
95
|
+
@optimize_audio = optimize_audio
|
|
98
96
|
@aspect_ratio = aspect_ratio
|
|
99
97
|
end
|
|
100
98
|
|
|
@@ -106,12 +104,12 @@ module FastpixClient
|
|
|
106
104
|
@mp4_support, @playback_ids, @tracks, @summary, @chapters,
|
|
107
105
|
@named_entities, @moderation, @duration, @created_at, @updated_at,
|
|
108
106
|
@thumbnail, @metadata, @title, @max_resolution, @source_resolution,
|
|
109
|
-
@source_access, @generated_subtitles, @is_audio_only, @subtitle_available, @aspect_ratio] ==
|
|
107
|
+
@source_access, @generated_subtitles, @is_audio_only, @subtitle_available, @optimize_audio, @aspect_ratio] ==
|
|
110
108
|
[other.id, other.workspace_id, other.media_quality, other.creator_id, other.status,
|
|
111
109
|
other.mp4_support, other.playback_ids, other.tracks, other.summary, other.chapters,
|
|
112
110
|
other.named_entities, other.moderation, other.duration, other.created_at, other.updated_at,
|
|
113
111
|
other.thumbnail, other.metadata, other.title, other.max_resolution, other.source_resolution,
|
|
114
|
-
other.source_access, other.generated_subtitles, other.is_audio_only, other.subtitle_available, other.aspect_ratio]
|
|
112
|
+
other.source_access, other.generated_subtitles, other.is_audio_only, other.subtitle_available, other.optimize_audio, other.aspect_ratio]
|
|
115
113
|
end
|
|
116
114
|
end
|
|
117
115
|
end
|
|
@@ -56,6 +56,8 @@ class FastpixClient::Models::Components::Media
|
|
|
56
56
|
def is_audio_only=(str_); end
|
|
57
57
|
def subtitle_available(); end
|
|
58
58
|
def subtitle_available=(str_); end
|
|
59
|
+
def optimize_audio(); end
|
|
60
|
+
def optimize_audio=(str_); end
|
|
59
61
|
def aspect_ratio(); end
|
|
60
62
|
def aspect_ratio=(str_); end
|
|
61
63
|
end
|
|
@@ -7,20 +7,40 @@
|
|
|
7
7
|
module FastpixClient
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
|
-
# MediaMp4Support -
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
# - **audioOnly,capped_4k**: Enables both MP4 video downloads (up to 4K) and an audio-only stream.
|
|
15
|
-
#
|
|
16
|
-
class MediaMp4Support < T::Enum
|
|
10
|
+
# MediaMp4Support - One MP4 rendition generated for the media when MP4 support is requested.
|
|
11
|
+
class MediaMp4Support
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
17
14
|
|
|
15
|
+
# The MP4 rendition type. `capped_4k` is a downloadable MP4 video capped at 4K resolution, `audioOnly` is a downloadable m4a audio-only file.
|
|
16
|
+
field :type, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('type') } }
|
|
17
|
+
# Generation status of this MP4 rendition. One of `preparing`, `ready`, or `failed`.
|
|
18
|
+
field :status, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status') } }
|
|
19
|
+
# Pixel height of the rendition. Omitted for the `audioOnly` type.
|
|
20
|
+
field :height, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('height') } }
|
|
21
|
+
# Pixel width of the rendition. Omitted for the `audioOnly` type.
|
|
22
|
+
field :width, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('width') } }
|
|
23
|
+
# File extension of the downloadable rendition. One of `mp4` or `m4a`.
|
|
24
|
+
field :ext, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('ext') } }
|
|
18
25
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
26
|
+
sig { params(type: T.nilable(::String), status: T.nilable(::String), height: T.nilable(::Integer), width: T.nilable(::Integer), ext: T.nilable(::String)).void }
|
|
27
|
+
def initialize(type: nil, status: nil, height: nil, width: nil, ext: nil)
|
|
28
|
+
@type = type
|
|
29
|
+
@status = status
|
|
30
|
+
@height = height
|
|
31
|
+
@width = width
|
|
32
|
+
@ext = ext
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
36
|
+
def ==(other)
|
|
37
|
+
return false unless other.is_a? self.class
|
|
38
|
+
return false unless @type == other.type
|
|
39
|
+
return false unless @status == other.status
|
|
40
|
+
return false unless @height == other.height
|
|
41
|
+
return false unless @width == other.width
|
|
42
|
+
return false unless @ext == other.ext
|
|
43
|
+
true
|
|
24
44
|
end
|
|
25
45
|
end
|
|
26
46
|
end
|
|
@@ -8,4 +8,14 @@ end
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class FastpixClient::Models::Components::MediaMp4Support
|
|
11
|
-
end
|
|
11
|
+
def type(); end
|
|
12
|
+
def type=(str_); end
|
|
13
|
+
def status(); end
|
|
14
|
+
def status=(str_); end
|
|
15
|
+
def height(); end
|
|
16
|
+
def height=(str_); end
|
|
17
|
+
def width(); end
|
|
18
|
+
def width=(str_); end
|
|
19
|
+
def ext(); end
|
|
20
|
+
def ext=(str_); end
|
|
21
|
+
end
|
|
@@ -22,13 +22,8 @@ module FastpixClient
|
|
|
22
22
|
field :creator_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('creatorId') } }
|
|
23
23
|
# Determines the media's status, which can be one of the possible values.
|
|
24
24
|
field :status, Crystalline::Nilable.new(Models::Components::SourceAccessMediaStatus), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status'), 'decoder': Utils.enum_from_string(Models::Components::SourceAccessMediaStatus, true) } }
|
|
25
|
-
#
|
|
26
|
-
|
|
27
|
-
# - **capped_4k**: Enables MP4 downloads with resolutions up to 4K.
|
|
28
|
-
# - **audioOnly**: Provides an MP4 stream containing only the audio.
|
|
29
|
-
# - **audioOnly,capped_4k**: Enables both MP4 video downloads (up to 4K) and an audio-only stream.
|
|
30
|
-
#
|
|
31
|
-
field :mp4_support, Crystalline::Nilable.new(Models::Components::SourceAccessMediaMp4Support), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mp4Support'), 'decoder': Utils.enum_from_string(Models::Components::SourceAccessMediaMp4Support, true) } }
|
|
25
|
+
# The MP4 renditions generated for the media. Present only when MP4 support is enabled.
|
|
26
|
+
field :mp4_support, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::SourceAccessMediaMp4Support)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mp4Support') } }
|
|
32
27
|
# A collection of Playback ID objects utilized for crafting HLS playback URLs.
|
|
33
28
|
field :playback_ids, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::PlaybackId)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('playbackIds') } }
|
|
34
29
|
# A media consists of different media tracks, like video, audio, and subtitle, all combined.
|
|
@@ -66,11 +61,13 @@ module FastpixClient
|
|
|
66
61
|
field :is_audio_only, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('isAudioOnly') } }
|
|
67
62
|
# Indicates whether subtitles are available for the media.
|
|
68
63
|
field :subtitle_available, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('subtitleAvailable') } }
|
|
64
|
+
# Enhance the quality and volume of the audio track. This is available for pre-recorded content only.
|
|
65
|
+
field :optimize_audio, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('optimizeAudio') } }
|
|
69
66
|
# The aspect ratio of a video describes its shape based on the relationship between its width and height.
|
|
70
67
|
field :aspect_ratio, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('aspectRatio') } }
|
|
71
68
|
|
|
72
|
-
sig { params(id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::SourceAccessMediaMediaQuality), creator_id: T.nilable(::String), status: T.nilable(Models::Components::SourceAccessMediaStatus), mp4_support: T.nilable(Models::Components::SourceAccessMediaMp4Support), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), duration: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), thumbnail: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::SourceAccessMediaMaxResolution), source_resolution: T.nilable(Models::Components::SourceAccessMediaSourceResolution), source_access: T.nilable(T::Boolean), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean), subtitle_available: T.nilable(T::Boolean), aspect_ratio: T.nilable(::String)).void }
|
|
73
|
-
def initialize(id: nil, workspace_id: nil, media_quality: nil, creator_id: nil, status: nil, mp4_support: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, duration: nil, created_at: nil, updated_at: nil, thumbnail: nil, metadata: nil, title: nil, max_resolution: Models::Components::SourceAccessMediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::SourceAccessMediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, source_access: nil, generated_subtitles: nil, is_audio_only: nil, subtitle_available: nil, aspect_ratio: nil)
|
|
69
|
+
sig { params(id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::SourceAccessMediaMediaQuality), creator_id: T.nilable(::String), status: T.nilable(Models::Components::SourceAccessMediaStatus), mp4_support: T.nilable(T::Array[Models::Components::SourceAccessMediaMp4Support]), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), duration: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), thumbnail: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::SourceAccessMediaMaxResolution), source_resolution: T.nilable(Models::Components::SourceAccessMediaSourceResolution), source_access: T.nilable(T::Boolean), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean), subtitle_available: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean), aspect_ratio: T.nilable(::String)).void }
|
|
70
|
+
def initialize(id: nil, workspace_id: nil, media_quality: nil, creator_id: nil, status: nil, mp4_support: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, duration: nil, created_at: nil, updated_at: nil, thumbnail: nil, metadata: nil, title: nil, max_resolution: Models::Components::SourceAccessMediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::SourceAccessMediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, source_access: nil, generated_subtitles: nil, is_audio_only: nil, subtitle_available: nil, optimize_audio: nil, aspect_ratio: nil)
|
|
74
71
|
@id = id
|
|
75
72
|
@workspace_id = workspace_id
|
|
76
73
|
@media_quality = media_quality
|
|
@@ -95,6 +92,7 @@ module FastpixClient
|
|
|
95
92
|
@generated_subtitles = generated_subtitles
|
|
96
93
|
@is_audio_only = is_audio_only
|
|
97
94
|
@subtitle_available = subtitle_available
|
|
95
|
+
@optimize_audio = optimize_audio
|
|
98
96
|
@aspect_ratio = aspect_ratio
|
|
99
97
|
end
|
|
100
98
|
|
|
@@ -106,12 +104,12 @@ module FastpixClient
|
|
|
106
104
|
@mp4_support, @playback_ids, @tracks, @summary, @chapters,
|
|
107
105
|
@named_entities, @moderation, @duration, @created_at, @updated_at,
|
|
108
106
|
@thumbnail, @metadata, @title, @max_resolution, @source_resolution,
|
|
109
|
-
@source_access, @generated_subtitles, @is_audio_only, @subtitle_available, @aspect_ratio] ==
|
|
107
|
+
@source_access, @generated_subtitles, @is_audio_only, @subtitle_available, @optimize_audio, @aspect_ratio] ==
|
|
110
108
|
[other.id, other.workspace_id, other.media_quality, other.creator_id, other.status,
|
|
111
109
|
other.mp4_support, other.playback_ids, other.tracks, other.summary, other.chapters,
|
|
112
110
|
other.named_entities, other.moderation, other.duration, other.created_at, other.updated_at,
|
|
113
111
|
other.thumbnail, other.metadata, other.title, other.max_resolution, other.source_resolution,
|
|
114
|
-
other.source_access, other.generated_subtitles, other.is_audio_only, other.subtitle_available, other.aspect_ratio]
|
|
112
|
+
other.source_access, other.generated_subtitles, other.is_audio_only, other.subtitle_available, other.optimize_audio, other.aspect_ratio]
|
|
115
113
|
end
|
|
116
114
|
end
|
|
117
115
|
end
|
|
@@ -56,6 +56,8 @@ class FastpixClient::Models::Components::SourceAccessMedia
|
|
|
56
56
|
def is_audio_only=(str_); end
|
|
57
57
|
def subtitle_available(); end
|
|
58
58
|
def subtitle_available=(str_); end
|
|
59
|
+
def optimize_audio(); end
|
|
60
|
+
def optimize_audio=(str_); end
|
|
59
61
|
def aspect_ratio(); end
|
|
60
62
|
def aspect_ratio=(str_); end
|
|
61
63
|
end
|
|
@@ -7,20 +7,40 @@
|
|
|
7
7
|
module FastpixClient
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
|
-
# SourceAccessMediaMp4Support -
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
# - **audioOnly,capped_4k**: Enables both MP4 video downloads (up to 4K) and an audio-only stream.
|
|
15
|
-
#
|
|
16
|
-
class SourceAccessMediaMp4Support < T::Enum
|
|
10
|
+
# SourceAccessMediaMp4Support - One MP4 rendition generated for the media when MP4 support is requested.
|
|
11
|
+
class SourceAccessMediaMp4Support
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
17
14
|
|
|
15
|
+
# The MP4 rendition type. `capped_4k` is a downloadable MP4 video capped at 4K resolution, `audioOnly` is a downloadable m4a audio-only file.
|
|
16
|
+
field :type, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('type') } }
|
|
17
|
+
# Generation status of this MP4 rendition. One of `preparing`, `ready`, or `failed`.
|
|
18
|
+
field :status, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status') } }
|
|
19
|
+
# Pixel height of the rendition. Omitted for the `audioOnly` type.
|
|
20
|
+
field :height, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('height') } }
|
|
21
|
+
# Pixel width of the rendition. Omitted for the `audioOnly` type.
|
|
22
|
+
field :width, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('width') } }
|
|
23
|
+
# File extension of the downloadable rendition. One of `mp4` or `m4a`.
|
|
24
|
+
field :ext, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('ext') } }
|
|
18
25
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
26
|
+
sig { params(type: T.nilable(::String), status: T.nilable(::String), height: T.nilable(::Integer), width: T.nilable(::Integer), ext: T.nilable(::String)).void }
|
|
27
|
+
def initialize(type: nil, status: nil, height: nil, width: nil, ext: nil)
|
|
28
|
+
@type = type
|
|
29
|
+
@status = status
|
|
30
|
+
@height = height
|
|
31
|
+
@width = width
|
|
32
|
+
@ext = ext
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
36
|
+
def ==(other)
|
|
37
|
+
return false unless other.is_a? self.class
|
|
38
|
+
return false unless @type == other.type
|
|
39
|
+
return false unless @status == other.status
|
|
40
|
+
return false unless @height == other.height
|
|
41
|
+
return false unless @width == other.width
|
|
42
|
+
return false unless @ext == other.ext
|
|
43
|
+
true
|
|
24
44
|
end
|
|
25
45
|
end
|
|
26
46
|
end
|
|
@@ -8,4 +8,14 @@ end
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class FastpixClient::Models::Components::SourceAccessMediaMp4Support
|
|
11
|
-
end
|
|
11
|
+
def type(); end
|
|
12
|
+
def type=(str_); end
|
|
13
|
+
def status(); end
|
|
14
|
+
def status=(str_); end
|
|
15
|
+
def height(); end
|
|
16
|
+
def height=(str_); end
|
|
17
|
+
def width(); end
|
|
18
|
+
def width=(str_); end
|
|
19
|
+
def ext(); end
|
|
20
|
+
def ext=(str_); end
|
|
21
|
+
end
|
|
@@ -18,6 +18,8 @@ module FastpixClient
|
|
|
18
18
|
field :type, Crystalline::Nilable.new(Models::Components::SubtitleTrackType), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Components::SubtitleTrackType, true) } }
|
|
19
19
|
# Indicates the current state of the track. 'available' means the track has been processed successfully and is ready to be used or played.
|
|
20
20
|
field :status, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status') } }
|
|
21
|
+
# Title of the track.
|
|
22
|
+
field :title, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('title') } }
|
|
21
23
|
# Name of the language in which the subtitles will be generated.
|
|
22
24
|
#
|
|
23
25
|
field :language_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('languageName') } }
|
|
@@ -25,11 +27,12 @@ module FastpixClient
|
|
|
25
27
|
#
|
|
26
28
|
field :language_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('languageCode') } }
|
|
27
29
|
|
|
28
|
-
sig { params(id: T.nilable(::String), type: T.nilable(Models::Components::SubtitleTrackType), status: T.nilable(::String), language_name: T.nilable(::String), language_code: T.nilable(::String)).void }
|
|
29
|
-
def initialize(id: nil, type: nil, status: nil, language_name: nil, language_code: nil)
|
|
30
|
+
sig { params(id: T.nilable(::String), type: T.nilable(Models::Components::SubtitleTrackType), status: T.nilable(::String), title: T.nilable(::String), language_name: T.nilable(::String), language_code: T.nilable(::String)).void }
|
|
31
|
+
def initialize(id: nil, type: nil, status: nil, title: nil, language_name: nil, language_code: nil)
|
|
30
32
|
@id = id
|
|
31
33
|
@type = type
|
|
32
34
|
@status = status
|
|
35
|
+
@title = title
|
|
33
36
|
@language_name = language_name
|
|
34
37
|
@language_code = language_code
|
|
35
38
|
end
|
|
@@ -40,6 +43,7 @@ module FastpixClient
|
|
|
40
43
|
return false unless @id == other.id
|
|
41
44
|
return false unless @type == other.type
|
|
42
45
|
return false unless @status == other.status
|
|
46
|
+
return false unless @title == other.title
|
|
43
47
|
return false unless @language_name == other.language_name
|
|
44
48
|
return false unless @language_code == other.language_code
|
|
45
49
|
true
|
|
@@ -19,12 +19,15 @@ module FastpixClient
|
|
|
19
19
|
field :language_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('languageName') } }
|
|
20
20
|
# Language code for content localization
|
|
21
21
|
field :language_code, Crystalline::Nilable.new(Models::Components::LanguageCode), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('languageCode'), 'decoder': Utils.enum_from_string(Models::Components::LanguageCode, true) } }
|
|
22
|
+
# Title of the track.
|
|
23
|
+
field :title, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('title') } }
|
|
22
24
|
|
|
23
|
-
sig { params(metadata: T.nilable(T::Hash[Symbol, ::String]), language_name: T.nilable(::String), language_code: T.nilable(Models::Components::LanguageCode)).void }
|
|
24
|
-
def initialize(metadata: nil, language_name: 'English', language_code: Models::Components::LanguageCode::EN_US)
|
|
25
|
+
sig { params(metadata: T.nilable(T::Hash[Symbol, ::String]), language_name: T.nilable(::String), language_code: T.nilable(Models::Components::LanguageCode), title: T.nilable(::String)).void }
|
|
26
|
+
def initialize(metadata: nil, language_name: 'English', language_code: Models::Components::LanguageCode::EN_US, title: nil)
|
|
25
27
|
@metadata = metadata
|
|
26
28
|
@language_name = language_name
|
|
27
29
|
@language_code = language_code
|
|
30
|
+
@title = title
|
|
28
31
|
end
|
|
29
32
|
|
|
30
33
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -33,6 +36,7 @@ module FastpixClient
|
|
|
33
36
|
return false unless @metadata == other.metadata
|
|
34
37
|
return false unless @language_name == other.language_name
|
|
35
38
|
return false unless @language_code == other.language_code
|
|
39
|
+
return false unless @title == other.title
|
|
36
40
|
true
|
|
37
41
|
end
|
|
38
42
|
end
|
|
@@ -22,13 +22,8 @@ module FastpixClient
|
|
|
22
22
|
field :media_quality, Crystalline::Nilable.new(Models::Components::UpdateMediaMediaQuality), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mediaQuality'), 'decoder': Utils.enum_from_string(Models::Components::UpdateMediaMediaQuality, true) } }
|
|
23
23
|
# Determines the media's status, which can be one of the possible values.
|
|
24
24
|
field :status, Crystalline::Nilable.new(Models::Components::UpdateMediaStatus), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status'), 'decoder': Utils.enum_from_string(Models::Components::UpdateMediaStatus, true) } }
|
|
25
|
-
#
|
|
26
|
-
|
|
27
|
-
# - **capped_4k**: Enables MP4 downloads with resolutions up to 4K.
|
|
28
|
-
# - **audioOnly**: Provides an MP4 stream containing only the audio.
|
|
29
|
-
# - **audioOnly,capped_4k**: Enables both MP4 video downloads (up to 4K) and an audio-only stream.
|
|
30
|
-
#
|
|
31
|
-
field :mp4_support, Crystalline::Nilable.new(Models::Components::UpdateMediaMp4Support), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mp4Support'), 'decoder': Utils.enum_from_string(Models::Components::UpdateMediaMp4Support, true) } }
|
|
25
|
+
# The MP4 renditions generated for the media. Present only when MP4 support is enabled.
|
|
26
|
+
field :mp4_support, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::UpdateMediaMp4Support)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mp4Support') } }
|
|
32
27
|
# The sourceAccess parameter determines whether the original media file is accessible. Set to true to enable access or false to restrict it
|
|
33
28
|
field :source_access, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('sourceAccess') } }
|
|
34
29
|
# A collection of Playback ID objects utilized for crafting HLS playback URLs.
|
|
@@ -45,6 +40,8 @@ module FastpixClient
|
|
|
45
40
|
field :moderation, Crystalline::Nilable.new(Models::Components::AiResponseRecord), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('moderation') } }
|
|
46
41
|
# Specifies whether subtitle tracks are available for the media.
|
|
47
42
|
field :subtitle_available, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('subtitleAvailable') } }
|
|
43
|
+
# Enhance the quality and volume of the audio track. This is available for pre-recorded content only.
|
|
44
|
+
field :optimize_audio, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('optimizeAudio') } }
|
|
48
45
|
# The length of the media in seconds, with a maximum allowed duration of 12 hours per individual media.
|
|
49
46
|
field :duration, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
|
|
50
47
|
# The aspect ratio of a video is a value that describes the relative shape of a video based on its width and height.
|
|
@@ -68,8 +65,8 @@ module FastpixClient
|
|
|
68
65
|
# Indicates whether the media contains only audio (no video track).
|
|
69
66
|
field :is_audio_only, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('isAudioOnly') } }
|
|
70
67
|
|
|
71
|
-
sig { params(thumbnail: T.nilable(::String), id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::UpdateMediaMediaQuality), status: T.nilable(Models::Components::UpdateMediaStatus), mp4_support: T.nilable(Models::Components::UpdateMediaMp4Support), source_access: T.nilable(T::Boolean), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), subtitle_available: T.nilable(T::Boolean), duration: T.nilable(::String), aspect_ratio: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), metadata: T.nilable(T::Hash[Symbol, ::String]), creator_id: T.nilable(::String), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::UpdateMediaMaxResolution), source_resolution: T.nilable(Models::Components::UpdateMediaSourceResolution), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean)).void }
|
|
72
|
-
def initialize(thumbnail: nil, id: nil, workspace_id: nil, media_quality: nil, status: nil, mp4_support: nil, source_access: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, subtitle_available: nil, duration: nil, aspect_ratio: nil, created_at: nil, updated_at: nil, metadata: nil, creator_id: '8fa85f64-5717-4562-b3fc-2c963f66afa6', title: 'My Video Title', max_resolution: Models::Components::UpdateMediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::UpdateMediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, generated_subtitles: nil, is_audio_only: nil)
|
|
68
|
+
sig { params(thumbnail: T.nilable(::String), id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::UpdateMediaMediaQuality), status: T.nilable(Models::Components::UpdateMediaStatus), mp4_support: T.nilable(T::Array[Models::Components::UpdateMediaMp4Support]), source_access: T.nilable(T::Boolean), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), subtitle_available: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean), duration: T.nilable(::String), aspect_ratio: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), metadata: T.nilable(T::Hash[Symbol, ::String]), creator_id: T.nilable(::String), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::UpdateMediaMaxResolution), source_resolution: T.nilable(Models::Components::UpdateMediaSourceResolution), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean)).void }
|
|
69
|
+
def initialize(thumbnail: nil, id: nil, workspace_id: nil, media_quality: nil, status: nil, mp4_support: nil, source_access: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, subtitle_available: nil, optimize_audio: nil, duration: nil, aspect_ratio: nil, created_at: nil, updated_at: nil, metadata: nil, creator_id: '8fa85f64-5717-4562-b3fc-2c963f66afa6', title: 'My Video Title', max_resolution: Models::Components::UpdateMediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::UpdateMediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, generated_subtitles: nil, is_audio_only: nil)
|
|
73
70
|
@thumbnail = thumbnail
|
|
74
71
|
@id = id
|
|
75
72
|
@workspace_id = workspace_id
|
|
@@ -84,6 +81,7 @@ module FastpixClient
|
|
|
84
81
|
@named_entities = named_entities
|
|
85
82
|
@moderation = moderation
|
|
86
83
|
@subtitle_available = subtitle_available
|
|
84
|
+
@optimize_audio = optimize_audio
|
|
87
85
|
@duration = duration
|
|
88
86
|
@aspect_ratio = aspect_ratio
|
|
89
87
|
@created_at = created_at
|
|
@@ -103,12 +101,12 @@ module FastpixClient
|
|
|
103
101
|
|
|
104
102
|
[@thumbnail, @id, @workspace_id, @media_quality, @status,
|
|
105
103
|
@mp4_support, @source_access, @playback_ids, @tracks, @summary,
|
|
106
|
-
@chapters, @named_entities, @moderation, @subtitle_available, @duration,
|
|
104
|
+
@chapters, @named_entities, @moderation, @subtitle_available, @optimize_audio, @duration,
|
|
107
105
|
@aspect_ratio, @created_at, @updated_at, @metadata, @creator_id,
|
|
108
106
|
@title, @max_resolution, @source_resolution, @generated_subtitles, @is_audio_only] ==
|
|
109
107
|
[other.thumbnail, other.id, other.workspace_id, other.media_quality, other.status,
|
|
110
108
|
other.mp4_support, other.source_access, other.playback_ids, other.tracks, other.summary,
|
|
111
|
-
other.chapters, other.named_entities, other.moderation, other.subtitle_available, other.duration,
|
|
109
|
+
other.chapters, other.named_entities, other.moderation, other.subtitle_available, other.optimize_audio, other.duration,
|
|
112
110
|
other.aspect_ratio, other.created_at, other.updated_at, other.metadata, other.creator_id,
|
|
113
111
|
other.title, other.max_resolution, other.source_resolution, other.generated_subtitles, other.is_audio_only]
|
|
114
112
|
end
|
|
@@ -36,6 +36,8 @@ class FastpixClient::Models::Components::UpdateMedia
|
|
|
36
36
|
def moderation=(str_); end
|
|
37
37
|
def subtitle_available(); end
|
|
38
38
|
def subtitle_available=(str_); end
|
|
39
|
+
def optimize_audio(); end
|
|
40
|
+
def optimize_audio=(str_); end
|
|
39
41
|
def duration(); end
|
|
40
42
|
def duration=(str_); end
|
|
41
43
|
def aspect_ratio(); end
|
|
@@ -7,20 +7,40 @@
|
|
|
7
7
|
module FastpixClient
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
|
-
# UpdateMediaMp4Support -
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
# - **audioOnly,capped_4k**: Enables both MP4 video downloads (up to 4K) and an audio-only stream.
|
|
15
|
-
#
|
|
16
|
-
class UpdateMediaMp4Support < T::Enum
|
|
10
|
+
# UpdateMediaMp4Support - One MP4 rendition generated for the media when MP4 support is requested.
|
|
11
|
+
class UpdateMediaMp4Support
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
17
14
|
|
|
15
|
+
# The MP4 rendition type. `capped_4k` is a downloadable MP4 video capped at 4K resolution, `audioOnly` is a downloadable m4a audio-only file.
|
|
16
|
+
field :type, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('type') } }
|
|
17
|
+
# Generation status of this MP4 rendition. One of `preparing`, `ready`, or `failed`.
|
|
18
|
+
field :status, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status') } }
|
|
19
|
+
# Pixel height of the rendition. Omitted for the `audioOnly` type.
|
|
20
|
+
field :height, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('height') } }
|
|
21
|
+
# Pixel width of the rendition. Omitted for the `audioOnly` type.
|
|
22
|
+
field :width, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('width') } }
|
|
23
|
+
# File extension of the downloadable rendition. One of `mp4` or `m4a`.
|
|
24
|
+
field :ext, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('ext') } }
|
|
18
25
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
26
|
+
sig { params(type: T.nilable(::String), status: T.nilable(::String), height: T.nilable(::Integer), width: T.nilable(::Integer), ext: T.nilable(::String)).void }
|
|
27
|
+
def initialize(type: nil, status: nil, height: nil, width: nil, ext: nil)
|
|
28
|
+
@type = type
|
|
29
|
+
@status = status
|
|
30
|
+
@height = height
|
|
31
|
+
@width = width
|
|
32
|
+
@ext = ext
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
36
|
+
def ==(other)
|
|
37
|
+
return false unless other.is_a? self.class
|
|
38
|
+
return false unless @type == other.type
|
|
39
|
+
return false unless @status == other.status
|
|
40
|
+
return false unless @height == other.height
|
|
41
|
+
return false unless @width == other.width
|
|
42
|
+
return false unless @ext == other.ext
|
|
43
|
+
true
|
|
24
44
|
end
|
|
25
45
|
end
|
|
26
46
|
end
|
|
@@ -8,4 +8,14 @@ end
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class FastpixClient::Models::Components::UpdateMediaMp4Support
|
|
11
|
-
end
|
|
11
|
+
def type(); end
|
|
12
|
+
def type=(str_); end
|
|
13
|
+
def status(); end
|
|
14
|
+
def status=(str_); end
|
|
15
|
+
def height(); end
|
|
16
|
+
def height=(str_); end
|
|
17
|
+
def width(); end
|
|
18
|
+
def width=(str_); end
|
|
19
|
+
def ext(); end
|
|
20
|
+
def ext=(str_); end
|
|
21
|
+
end
|
|
@@ -7,31 +7,31 @@
|
|
|
7
7
|
module FastpixClient
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
|
-
# Contains details about the track being
|
|
10
|
+
# Contains details about the track being updated. The track's file (`url`) cannot be changed — only its language and title.
|
|
11
11
|
class UpdateTrackRequest
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
|
-
# The direct URL of the track file. It must point to a valid audio or subtitle file.
|
|
16
|
-
field :url, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('url') } }
|
|
17
15
|
# The BCP 47 language code representing the track’s language.
|
|
18
16
|
field :language_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('languageCode') } }
|
|
19
17
|
# The full name of the language corresponding to the `languageCode`.
|
|
20
18
|
field :language_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('languageName') } }
|
|
19
|
+
# Title of the track.
|
|
20
|
+
field :title, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('title') } }
|
|
21
21
|
|
|
22
|
-
sig { params(
|
|
23
|
-
def initialize(
|
|
24
|
-
@url = url
|
|
22
|
+
sig { params(language_code: T.nilable(::String), language_name: T.nilable(::String), title: T.nilable(::String)).void }
|
|
23
|
+
def initialize(language_code: 'fr', language_name: 'French', title: nil)
|
|
25
24
|
@language_code = language_code
|
|
26
25
|
@language_name = language_name
|
|
26
|
+
@title = title
|
|
27
27
|
end
|
|
28
28
|
|
|
29
29
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
30
30
|
def ==(other)
|
|
31
31
|
return false unless other.is_a? self.class
|
|
32
|
-
return false unless @url == other.url
|
|
33
32
|
return false unless @language_code == other.language_code
|
|
34
33
|
return false unless @language_name == other.language_name
|
|
34
|
+
return false unless @title == other.title
|
|
35
35
|
true
|
|
36
36
|
end
|
|
37
37
|
end
|
|
@@ -8,10 +8,10 @@ end
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class FastpixClient::Models::Components::UpdateTrackRequest
|
|
11
|
-
def url(); end
|
|
12
|
-
def url=(str_); end
|
|
13
11
|
def language_code(); end
|
|
14
12
|
def language_code=(str_); end
|
|
15
13
|
def language_name(); end
|
|
16
14
|
def language_name=(str_); end
|
|
15
|
+
def title(); end
|
|
16
|
+
def title=(str_); end
|
|
17
17
|
end
|