flip

package
v0.0.0-...-e40a8b4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2019 License: MIT Imports: 20 Imported by: 1

README

Telestream Cloud Flip Go SDK

This library provides a low-level interface to the REST API of Telestream Cloud, the online video encoding service.

Overview

This API client was generated by the swagger-codegen project. By using the swagger-spec from a remote server, you can easily generate an API client.

  • API version: 2.0.1
  • Package version: 2.0.4
  • Build package: io.swagger.codegen.languages.GoClientCodegen

Documentation for API Endpoints

All URIs are relative to https://api.cloud.telestream.net/flip/3.1

Class Method HTTP request Description
FlipApi CancelEncoding Post /encodings/{id}/cancel.json Cancels an Encoding.
FlipApi CancelVideo Post /videos/{id}/cancel.json Cancel video and all encodings
FlipApi CopyProfile Post /profiles/{id}/copy.json Copies a given Profile
FlipApi CreateEncoding Post /encodings.json Creates an Encoding
FlipApi CreateFactory Post /factories.json Creates a new factory
FlipApi CreateProfile Post /profiles.json Creates a Profile
FlipApi CreateVideo Post /videos.json Creates a Video from a provided source_url.
FlipApi CreateWorkorder Post /workorders.json Creates a Workorder.
FlipApi DeleteEncoding Delete /encodings/{id}.json Deletes an Encoding from both Telestream Cloud and your storage. Returns an information whether the operation was successful.
FlipApi DeleteProfile Delete /profiles/{id}.json Deletes a given Profile
FlipApi DeleteVideo Delete /videos/{id}.json Deletes a Video object.
FlipApi DeleteVideoSource Delete /videos/{id}/source.json Delete a video's source file.
FlipApi Encoding Get /encodings/{id}.json Returns an Encoding object.
FlipApi Encodings Get /encodings.json Returns a list of Encoding objects
FlipApi EncodingsCount Get /encodings/count.json Returns a number of Encoding objects created using a given factory.
FlipApi Factories Get /factories.json Returns a collection of Factory objects.
FlipApi Factory Get /factories/{id}.json Returns a Factory object.
FlipApi Notifications Get /notifications.json Returns a Factory's notification settings.
FlipApi Profile Get /profiles/{id_or_name}.json Returns a Profile object.
FlipApi ProfileEncodings Get /profiles/{id_or_name}/encodings.json Returns a list of Encodings that belong to a Profile.
FlipApi Profiles Get /profiles.json Returns a collection of Profile objects.
FlipApi QueuedVideos Get /videos/queued.json Returns a collection of Video objects queued for encoding.
FlipApi ResubmitVideo Post /videos/resubmit.json Resubmits a video to encode.
FlipApi RetryEncoding Post /encodings/{id}/retry.json Retries a failed encoding.
FlipApi SignedEncodingUrl Get /encodings/{id}/signed-url.json Returns a signed url pointing to an Encoding.
FlipApi SignedEncodingUrls Get /encodings/{id}/signed-urls.json Returns a list of signed urls pointing to an Encoding's outputs.
FlipApi SignedVideoUrl Get /videos/{id}/signed-url.json Returns a signed url pointing to a Video.
FlipApi ToggleFactorySync Post /factories/{id}/sync.json Toggles synchronisation settings.
FlipApi UpdateEncoding Put /encodings/{id}.json Updates an Encoding
FlipApi UpdateFactory Patch /factories/{id}.json Updates a Factory's settings. Returns a Factory object.
FlipApi UpdateNotifications Put /notifications.json Updates a Factory's notification settings.
FlipApi UpdateProfile Put /profiles/{id}.json Updates a given Profile
FlipApi UploadVideo Post /videos/upload.json Creates an upload session.
FlipApi Video Get /videos/{id}.json Returns a Video object.
FlipApi VideoEncodings Get /videos/{id}/encodings.json Returns a list of Encodings that belong to a Video.
FlipApi VideoMetadata Get /videos/{id}/metadata.json Returns a Video's metadata
FlipApi Videos Get /videos.json Returns a collection of Video objects.
FlipApi Workflows Get /workflows.json Returns a collection of Workflows that belong to a Factory.

Documentation For Models

Documentation For Authorization

api_key

  • Type: API key

Example

	auth := context.WithValue(context.Background(), sw.ContextAPIKey, sw.APIKey{
		Key: "APIKEY",
		Prefix: "Bearer", // Omit if not necessary.
	})
    r, err := client.Service.Operation(auth, args)

Author

cloudsupport@telestream.net

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ContextOAuth2 takes a oauth2.TokenSource as authentication for the request.
	ContextOAuth2 = contextKey("token")

	// ContextBasicAuth takes BasicAuth as authentication for the request.
	ContextBasicAuth = contextKey("basic")

	// ContextAccessToken takes a string oauth2 access token as authentication for the request.
	ContextAccessToken = contextKey("accesstoken")

	// ContextAPIKey takes an APIKey as authentication for the request
	ContextAPIKey = contextKey("apikey")
)

Functions

func CacheExpires

func CacheExpires(r *http.Response) time.Time

CacheExpires helper function to determine remaining time before repeating a request.

Types

type APIClient

type APIClient struct {

	// API Services
	FlipApi *FlipApiService
	// contains filtered or unexported fields
}

APIClient manages communication with the Flip API API v2.0.1 In most cases there should be only one, shared, APIClient.

func NewAPIClient

func NewAPIClient(cfg *Configuration) *APIClient

NewAPIClient creates a new API client. Requires a userAgent string describing your application. optionally a custom http.Client to allow for advanced features such as caching.

func (*APIClient) ChangeBasePath

func (c *APIClient) ChangeBasePath(path string)

Change base path to allow switching to mocks

type APIKey

type APIKey struct {
	Key    string
	Prefix string
}

APIKey provides API key based authentication to a request passed via context using ContextAPIKey

type APIResponse

type APIResponse struct {
	*http.Response `json:"-"`
	Message        string `json:"message,omitempty"`
	// Operation is the name of the swagger operation.
	Operation string `json:"operation,omitempty"`
	// RequestURL is the request URL. This value is always available, even if the
	// embedded *http.Response is nil.
	RequestURL string `json:"url,omitempty"`
	// Method is the HTTP method used for the request.  This value is always
	// available, even if the embedded *http.Response is nil.
	Method string `json:"method,omitempty"`
	// Payload holds the contents of the response body (which may be nil or empty).
	// This is provided here as the raw response.Body() reader will have already
	// been drained.
	Payload []byte `json:"-"`
}

func NewAPIResponse

func NewAPIResponse(r *http.Response) *APIResponse

func NewAPIResponseWithError

func NewAPIResponseWithError(errorMessage string) *APIResponse

type BasicAuth

type BasicAuth struct {
	UserName string `json:"userName,omitempty"`
	Password string `json:"password,omitempty"`
}

BasicAuth provides basic http authentication to a request passed via context using ContextBasicAuth

type CanceledResponse

type CanceledResponse struct {

	// Informs whether an action has been canceled successfully.
	Canceled bool `json:"canceled,omitempty"`
}

type CloudNotificationSettings

type CloudNotificationSettings struct {

	// Notifications will be sent to this endpoint.
	Url string `json:"url"`

	Delay int32 `json:"delay"`

	// Determines whether a video payload will be included in notification messages.
	SendVideoPayload bool `json:"send_video_payload"`

	Events *CloudNotificationSettingsEvents `json:"events"`
}

type CloudNotificationSettingsEvents

type CloudNotificationSettingsEvents struct {

	// If set to `true`, a notification will be sent after an encoding becomes complete.
	EncodingCompleted bool `json:"encoding_completed"`

	// If set to `true`, a notification will be sent after an encoding's progess changes.
	EncodingProgress bool `json:"encoding_progress"`

	// If set to `true`, a notification will be sent after a video is created.
	VideoCreated bool `json:"video_created"`

	// If set to `true`, a notification will be sent after a video is encoded.
	VideoEncoded bool `json:"video_encoded"`
}

type Configuration

type Configuration struct {
	BasePath      string            `json:"basePath,omitempty"`
	Host          string            `json:"host,omitempty"`
	Scheme        string            `json:"scheme,omitempty"`
	DefaultHeader map[string]string `json:"defaultHeader,omitempty"`
	UserAgent     string            `json:"userAgent,omitempty"`
	HTTPClient    *http.Client
}

func NewConfiguration

func NewConfiguration() *Configuration

func (*Configuration) AddDefaultHeader

func (c *Configuration) AddDefaultHeader(key string, value string)

type CopyProfileBody

type CopyProfileBody struct {

	// an id of a target Factory that will own a copy of the Profile
	DestFactoryId string `json:"dest_factory_id"`

	// a name for a copy of the Profile
	ProfileName string `json:"profile_name"`
}

type CountResponse

type CountResponse struct {

	// Informs how many objects are stored in the database.
	Total int32 `json:"total,omitempty"`
}

type CreateEncodingBody

type CreateEncodingBody struct {

	// Id of a Video that will be encoded.
	VideoId string `json:"video_id"`

	// Id of a Profile that will be used for encoding.
	ProfileId string `json:"profile_id,omitempty"`

	// A name of a Profile that will be used for encoding.
	ProfileName string `json:"profile_name,omitempty"`
}

type CreateVideoBody

type CreateVideoBody struct {

	// An URL pointing to a source file.
	SourceUrl string `json:"source_url,omitempty"`

	// Comma-separated list of profile names or IDs to be used during encoding. Alternatively, specify none so no encodings are created yet.
	Profiles string `json:"profiles,omitempty"`

	// Arbitrary string stored along the Video object.
	Payload string `json:"payload,omitempty"`

	// String-encoded JSON describing profiles pipeline.
	Pipeline string `json:"pipeline,omitempty"`

	// A list of urls pointing to remote subtitle files.
	SubtitleFiles []string `json:"subtitle_files,omitempty"`

	ExtraFiles map[string][]string `json:"extra_files,omitempty"`

	ExtraVariables map[string]string `json:"extra_variables,omitempty"`

	PathFormat string `json:"path_format,omitempty"`

	// Clip ends at a specific time (timecode).
	ClipEnd string `json:"clip_end,omitempty"`

	// A clip’s duration.
	ClipLength string `json:"clip_length,omitempty"`

	// Clip starts at a specific offset.
	ClipOffset string `json:"clip_offset,omitempty"`

	StartingTimecode string `json:"starting_timecode,omitempty"`

	// An individual store_id for this video processing. If provided will replace store_id from cloud factory but must match underlying cloud provider and region.
	StoreId string `json:"store_id,omitempty"`
}

type DeletedResponse

type DeletedResponse struct {

	// Informs whether an object has been deleted successfully.
	Deleted bool `json:"deleted,omitempty"`
}

type Encoding

type Encoding struct {

	// A unique identifier of an Encoding.
	Id string `json:"id,omitempty"`

	// Audio bitrate (in bits/s).
	AudioBitrate int32 `json:"audio_bitrate,omitempty"`

	// A number of audio channels.
	AudioChannels int32 `json:"audio_channels,omitempty"`

	// A codec that is used to encode audio streams.
	AudioCodec string `json:"audio_codec,omitempty"`

	// A number of samples of audio carried per second.
	AudioSampleRate int32 `json:"audio_sample_rate,omitempty"`

	// A date and time when the Encoding has been created.
	CreatedAt string `json:"created_at,omitempty"`

	Duration int32 `json:"duration,omitempty"`

	EncodingProgress int32 `json:"encoding_progress,omitempty"`

	EncodingTime int32 `json:"encoding_time,omitempty"`

	// A class of an error that has occurred during the encoding process. It is present only if the encoding status is equal to `fail`.
	ErrorClass string `json:"error_class,omitempty"`

	// A message that explains why the encoding process has resulted in an error. It is present only if the encoding status is equal to `fail`.
	ErrorMessage string `json:"error_message,omitempty"`

	ExternalId string `json:"external_id,omitempty"`

	// Extension of the output file.
	Extname string `json:"extname,omitempty"`

	// A size of the output file.
	FileSize int64 `json:"file_size,omitempty"`

	// An array of output file names.
	Files []string `json:"files,omitempty"`

	// Number of frames per second.
	Fps float32 `json:"fps,omitempty"`

	// Height of the output video.
	Height int32 `json:"height,omitempty"`

	// Width of the output video.
	Width int32 `json:"width,omitempty"`

	// An URL pointing to a logfile.
	LogfileUrl string `json:"logfile_url,omitempty"`

	// A mime type of the encoded file.
	MimeType string `json:"mime_type,omitempty"`

	ParentEncodingId string `json:"parent_encoding_id,omitempty"`

	Path string `json:"path,omitempty"`

	// An id of a related Profile.
	ProfileId string `json:"profile_id,omitempty"`

	// A name of the used Profile.
	ProfileName string `json:"profile_name,omitempty"`

	Screenshots []string `json:"screenshots,omitempty"`

	// A date and time when the encoding process has been started
	StartedEncodingAt string `json:"started_encoding_at,omitempty"`

	// Determines at what stage the encoding process is at the moment.
	Status string `json:"status,omitempty"`

	// A date and time when a Encoding has been updated last time.
	UpdatedAt string `json:"updated_at,omitempty"`

	// video bitrate (in bits/s)
	VideoBitrate int32 `json:"video_bitrate,omitempty"`

	// A codec that is used to encode video streams.
	VideoCodec string `json:"video_codec,omitempty"`

	// An id of a related Video object
	VideoId string `json:"video_id,omitempty"`
}

type EncodingSignedUrl

type EncodingSignedUrl struct {

	// A signed URLs pointing to the encoding's output.
	SignedUrl string `json:"signed_url,omitempty"`
}

type EncodingSignedUrls

type EncodingSignedUrls struct {

	// A list of signed URLs pointing to the encoding's outputs.
	SignedUrls []string `json:"signed_urls,omitempty"`
}

type ExtraFile

type ExtraFile struct {
	Tag string `json:"tag"`

	FileSize int64 `json:"file_size"`

	FileName string `json:"file_name"`
}

type Factory

type Factory struct {

	// A unique identifier of a Factory.
	Id string `json:"id,omitempty"`

	// Human-readable identifier of a Factory.
	Name string `json:"name,omitempty"`

	// A region where the factory is located.
	FactoryRegion string `json:"factory_region,omitempty"`

	// A bucket where processed files will be stored.
	OutputBucketName string `json:"output_bucket_name,omitempty"`

	// Specify if your files are public or private (private files need authorization url to access). By default this is not set.
	Acl string `json:"acl,omitempty"`

	// A date and time when a Factory has been created.
	CreatedAt string `json:"created_at,omitempty"`

	// A date and time when a Factory has been updated last time.
	UpdatedAt string `json:"updated_at,omitempty"`

	// An URL pointing to the output_bucket_name.
	Url string `json:"url,omitempty"`

	// Specify if you want to use multi-factor server-side 256-bit AES-256 data encryption with Amazon S3-managed encryption keys (SSE-S3). Each object is encrypted using a unique key which as an additional safeguard is encrypted itself with a master key that S3 regularly rotates. By default this is not set.
	ServerSideEncryption bool `json:"server_side_encryption,omitempty"`

	// A name of an input bucket.
	InputBucketName string `json:"input_bucket_name,omitempty"`

	// Determines whether the Factory should be notified about new files added to the input bucket.
	InputBucketWatch bool `json:"input_bucket_watch,omitempty"`

	InputBucketFilesMap *interface{} `json:"input_bucket_files_map,omitempty"`

	// Determines how often the input bucket is synchronised.
	InputBucketSyncEveryNMin string `json:"input_bucket_sync_every_n_min,omitempty"`

	InputBucketRecursive string `json:"input_bucket_recursive,omitempty"`

	// A pattern that will be used to locate files in the input bucket. Valid wildcards might be used.
	InputBucketFilePattern string `json:"input_bucket_file_pattern,omitempty"`

	OutputsPathFormat string `json:"outputs_path_format,omitempty"`

	// Specifies which storage provider the factory should use. Available options: S3: 0, Google Cloud Storage: 1, FTP storage: 2, Google Cloud Interoperability Storage: 5, Flip storage: 7, FASP storage: 8, Azure Blob Storage: 9
	StorageProvider int32 `json:"storage_provider,omitempty"`

	ProviderSpecificSettings *interface{} `json:"provider_specific_settings,omitempty"`
}

type FactoryBody

type FactoryBody struct {

	// AWS access key.
	AwsAccessKey string `json:"aws_access_key,omitempty"`

	// AWS secret key.
	AwsSecretKey string `json:"aws_secret_key,omitempty"`

	// A region where the factory is located.
	FactoryRegion string `json:"factory_region,omitempty"`

	// A pattern that will be used to locate files in the input bucket. Valid wildcards might be used.
	InputBucketFilePattern string `json:"input_bucket_file_pattern,omitempty"`

	// A name of an input bucket.
	InputBucketName string `json:"input_bucket_name,omitempty"`

	InputBucketRecursive bool `json:"input_bucket_recursive,omitempty"`

	// Determines how often the input bucket is synchronised.
	InputBucketSyncEveryNMin int32 `json:"input_bucket_sync_every_n_min,omitempty"`

	// Determines whether the Factory should be notified about new files added to the input bucket.
	InputBucketWatch bool `json:"input_bucket_watch,omitempty"`

	// Name of the Factory.
	Name string `json:"name"`

	// Specify the directory where the output files should be stored. By default it is not set. More info [here](https://cloud.telestream.net/docs#path-format---know-how).
	OutputsPathFormat string `json:"outputs_path_format,omitempty"`

	ProviderSpecificSettings *interface{} `json:"provider_specific_settings,omitempty"`

	// Specify if your files are public or private (private files need authorization url to access). By default this is not set.
	Acl string `json:"acl,omitempty"`

	// A bucket where processed files will be stored.
	OutputBucketName string `json:"output_bucket_name,omitempty"`

	// Specify if you want to use multi-factor server-side 256-bit AES-256 data encryption with Amazon S3-managed encryption keys (SSE-S3). Each object is encrypted using a unique key which as an additional safeguard is encrypted itself with a master key that S3 regularly rotates. By default this is not set.
	ServerSideEncryption bool `json:"server_side_encryption,omitempty"`

	StorageCredentialAttributes *FactoryBodyStorageCredentialAttributes `json:"storage_credential_attributes,omitempty"`

	// Specifies which storage provider the factory should use. Available options: S3: 0, Google Cloud Storage: 1, FTP storage: 2, Google Cloud Interoperability Storage: 5, Flip storage: 7, FASP storage: 8, Azure Blob Storage: 9
	StorageProvider int32 `json:"storage_provider,omitempty"`
}

type FactoryBodyStorageCredentialAttributes

type FactoryBodyStorageCredentialAttributes struct {
	Host string `json:"host,omitempty"`

	Username string `json:"username,omitempty"`

	Password string `json:"password,omitempty"`

	Port int32 `json:"port,omitempty"`
}

type FactorySync

type FactorySync struct {

	// Determines whether a Factory will be synchronised with an input bucket.
	Syncing string `json:"syncing,omitempty"`
}

type FactorySyncBody

type FactorySyncBody struct {

	// Determines whether a Factory's data will be synchronised.
	Sync string `json:"sync"`
}

type FlipApiService

type FlipApiService service

func (*FlipApiService) CancelEncoding

func (a *FlipApiService) CancelEncoding(ctx context.Context, id string, factoryId string) (CanceledResponse, *http.Response, error)

FlipApiService Cancels an Encoding. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of an Encoding. @param factoryId Id of a Factory. @return CanceledResponse

func (*FlipApiService) CancelVideo

func (a *FlipApiService) CancelVideo(ctx context.Context, id string, factoryId string) (CanceledResponse, *http.Response, error)

FlipApiService Cancel video and all encodings * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Video. @param factoryId Id of a Factory. @return CanceledResponse

func (*FlipApiService) CopyProfile

func (a *FlipApiService) CopyProfile(ctx context.Context, id string, factoryId string, copyProfileBody CopyProfileBody, localVarOptionals map[string]interface{}) (Profile, *http.Response, error)

FlipApiService Copies a given Profile * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Profile. @param factoryId Id of a Factory. @param copyProfileBody @param optional (nil or map[string]interface{}) with one or more of:

@param "expand" (bool) If expand option is set Profile objects will contain all command parameters, even if their value is default. By default this is not set.

@return Profile

func (*FlipApiService) CreateEncoding

func (a *FlipApiService) CreateEncoding(ctx context.Context, factoryId string, createEncodingBody CreateEncodingBody, localVarOptionals map[string]interface{}) (Encoding, *http.Response, error)

FlipApiService Creates an Encoding * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param createEncodingBody @param optional (nil or map[string]interface{}) with one or more of:

@param "screenshots" (bool) Determines whether the response will include screenshots. By default this is not set.
@param "preciseStatus" (bool) Determines whether the response will include a precise status. By default this is not set.

@return Encoding

func (*FlipApiService) CreateFactory

func (a *FlipApiService) CreateFactory(ctx context.Context, createFactoryBody FactoryBody, localVarOptionals map[string]interface{}) (Factory, *http.Response, error)

FlipApiService Creates a new factory * @param ctx context.Context for authentication, logging, tracing, etc. @param createFactoryBody @param optional (nil or map[string]interface{}) with one or more of:

@param "withStorageProvider" (bool) if set to `true`, results will include a storage provider's id

@return Factory

func (*FlipApiService) CreateProfile

func (a *FlipApiService) CreateProfile(ctx context.Context, factoryId string, createProfileBody ProfileBody, localVarOptionals map[string]interface{}) (Profile, *http.Response, error)

FlipApiService Creates a Profile * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param createProfileBody @param optional (nil or map[string]interface{}) with one or more of:

@param "excludeAdvancedServices" (bool)
@param "expand" (bool) If expand option is set Profile objects will contain all command parameters, even if their value is default. By default it is not set.

@return Profile

func (*FlipApiService) CreateVideo

func (a *FlipApiService) CreateVideo(ctx context.Context, factoryId string, createVideoBody CreateVideoBody) (Video, *http.Response, error)

FlipApiService Creates a Video from a provided source_url. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param createVideoBody @return Video

func (*FlipApiService) CreateWorkorder

func (a *FlipApiService) CreateWorkorder(ctx context.Context, factoryId string, localVarOptionals map[string]interface{}) (*http.Response, error)

FlipApiService Creates a Workorder. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "profileId" (string) Id of a Profile.
@param "file" (*os.File) Input file.
@param "sourceUrl" (string) URL pointing to an input file.

@return

func (*FlipApiService) DeleteEncoding

func (a *FlipApiService) DeleteEncoding(ctx context.Context, id string, factoryId string) (DeletedResponse, *http.Response, error)

FlipApiService Deletes an Encoding from both Telestream Cloud and your storage. Returns an information whether the operation was successful. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of an Encoding. @param factoryId Id of a Factory. @return DeletedResponse

func (*FlipApiService) DeleteProfile

func (a *FlipApiService) DeleteProfile(ctx context.Context, id string, factoryId string) (DeletedResponse, *http.Response, error)

FlipApiService Deletes a given Profile * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Profile @param factoryId Id of a Factory. @return DeletedResponse

func (*FlipApiService) DeleteVideo

func (a *FlipApiService) DeleteVideo(ctx context.Context, id string, factoryId string) (DeletedResponse, *http.Response, error)

FlipApiService Deletes a Video object. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Video. @param factoryId Id of a Factory. @return DeletedResponse

func (*FlipApiService) DeleteVideoSource

func (a *FlipApiService) DeleteVideoSource(ctx context.Context, id string, factoryId string) (DeletedResponse, *http.Response, error)

FlipApiService Delete a video's source file. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Video. @param factoryId Id of a Factory. @return DeletedResponse

func (*FlipApiService) Encoding

func (a *FlipApiService) Encoding(ctx context.Context, id string, factoryId string, localVarOptionals map[string]interface{}) (Encoding, *http.Response, error)

FlipApiService Returns an Encoding object. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of an Encoding. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "screenshots" (bool) Determines whether the response will include screenshots. By default this is not set.
@param "preciseStatus" (bool) Determines whether the response will include a precise status. By default this is not set.

@return Encoding

func (*FlipApiService) Encodings

func (a *FlipApiService) Encodings(ctx context.Context, factoryId string, localVarOptionals map[string]interface{}) (PaginatedEncodingsCollection, *http.Response, error)

FlipApiService Returns a list of Encoding objects * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "videoId" (string) Id of a Video. When specified, the resulting list will contain videos that belong to the Video.
@param "status" (string) One of `success`, `fail`, `processing`. When specified, the resulting list will contain ecodings filtered by status.
@param "profileId" (string) Filter by profile_id.
@param "profileName" (string) Filter by profile_name.
@param "page" (int32) A page to be fetched. Default is `1`.
@param "perPage" (int32) A number of results per page. Default is `100`.
@param "screenshots" (bool) Determines whether the response will include screenshots. By default this is not set.
@param "preciseStatus" (bool) Determines whether the response will include a precise status. By default this is not set.

@return PaginatedEncodingsCollection

func (*FlipApiService) EncodingsCount

func (a *FlipApiService) EncodingsCount(ctx context.Context, factoryId string) (CountResponse, *http.Response, error)

FlipApiService Returns a number of Encoding objects created using a given factory. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @return CountResponse

func (*FlipApiService) Factories

func (a *FlipApiService) Factories(ctx context.Context, localVarOptionals map[string]interface{}) (PaginatedFactoryCollection, *http.Response, error)

FlipApiService Returns a collection of Factory objects. Returns a collection of Factory objects. * @param ctx context.Context for authentication, logging, tracing, etc. @param optional (nil or map[string]interface{}) with one or more of:

@param "page" (int32) A page to be fetched. Default is `1`.
@param "perPage" (int32) A number of results per page. Default is `100`.
@param "withStorageProvider" (bool) if set to `true`, results will include a storage provider's id

@return PaginatedFactoryCollection

func (*FlipApiService) Factory

func (a *FlipApiService) Factory(ctx context.Context, id string, localVarOptionals map[string]interface{}) (Factory, *http.Response, error)

FlipApiService Returns a Factory object. Returns a Factory object. * @param ctx context.Context for authentication, logging, tracing, etc. @param id id of a factory @param optional (nil or map[string]interface{}) with one or more of:

@param "withStorageProvider" (bool) if set to `true`, results will include a storage provider's id

@return Factory

func (*FlipApiService) Notifications

func (a *FlipApiService) Notifications(ctx context.Context, factoryId string) (CloudNotificationSettings, *http.Response, error)

FlipApiService Returns a Factory's notification settings. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @return CloudNotificationSettings

func (*FlipApiService) Profile

func (a *FlipApiService) Profile(ctx context.Context, idOrName string, factoryId string, localVarOptionals map[string]interface{}) (Profile, *http.Response, error)

FlipApiService Returns a Profile object. * @param ctx context.Context for authentication, logging, tracing, etc. @param idOrName A name or an id of a Profile. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "expand" (bool) If expand option is set Profile objects will contain all command parameters, even if their value is default. By default this is not set.

@return Profile

func (*FlipApiService) ProfileEncodings

func (a *FlipApiService) ProfileEncodings(ctx context.Context, idOrName string, factoryId string) (PaginatedEncodingsCollection, *http.Response, error)

FlipApiService Returns a list of Encodings that belong to a Profile. * @param ctx context.Context for authentication, logging, tracing, etc. @param idOrName Id or name of a Profile. @param factoryId Id of a Factory. @return PaginatedEncodingsCollection

func (*FlipApiService) Profiles

func (a *FlipApiService) Profiles(ctx context.Context, factoryId string, localVarOptionals map[string]interface{}) (PaginatedProfilesCollection, *http.Response, error)

FlipApiService Returns a collection of Profile objects. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "excludeAdvancedServices" (bool) Determine whether exclude Advanced Services profiles from the results. By default this is not set.
@param "expand" (bool) If expand option is set Profile objects will contain all command parameters, even if their value is default. By default this is not set.
@param "page" (int32) A page to be fetched. Default is `1`.
@param "perPage" (int32) A number of results per page. Default is `100`.

@return PaginatedProfilesCollection

func (*FlipApiService) QueuedVideos

func (a *FlipApiService) QueuedVideos(ctx context.Context, factoryId string, localVarOptionals map[string]interface{}) (PaginatedVideoCollection, *http.Response, error)

FlipApiService Returns a collection of Video objects queued for encoding. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "page" (int32) A page to be fetched. Default is `1`.
@param "perPage" (int32) A number of results per page. Default is `100`.

@return PaginatedVideoCollection

func (*FlipApiService) ResubmitVideo

func (a *FlipApiService) ResubmitVideo(ctx context.Context, factoryId string, resubmitVideoBody ResubmitVideoBody) (*http.Response, error)

FlipApiService Resubmits a video to encode. Resubmits the video to encode. Please note that this option will work only for videos in `success` status. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param resubmitVideoBody @return

func (*FlipApiService) RetryEncoding

func (a *FlipApiService) RetryEncoding(ctx context.Context, id string, factoryId string) (RetriedResponse, *http.Response, error)

FlipApiService Retries a failed encoding. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of an Encoding. @param factoryId Id of a Factory. @return RetriedResponse

func (*FlipApiService) SignedEncodingUrl

func (a *FlipApiService) SignedEncodingUrl(ctx context.Context, id string, factoryId string, localVarOptionals map[string]interface{}) (EncodingSignedUrl, *http.Response, error)

FlipApiService Returns a signed url pointing to an Encoding. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of an Encoding. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "expires" (int32) Duration in seconds for validity period.

@return EncodingSignedUrl

func (*FlipApiService) SignedEncodingUrls

func (a *FlipApiService) SignedEncodingUrls(ctx context.Context, id string, factoryId string) (EncodingSignedUrls, *http.Response, error)

FlipApiService Returns a list of signed urls pointing to an Encoding's outputs. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of an Encoding. @param factoryId Id of a Factory. @return EncodingSignedUrls

func (*FlipApiService) SignedVideoUrl

func (a *FlipApiService) SignedVideoUrl(ctx context.Context, id string, factoryId string) (SignedVideoUrl, *http.Response, error)

FlipApiService Returns a signed url pointing to a Video. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Video. @param factoryId Id of a Factory. @return SignedVideoUrl

func (*FlipApiService) ToggleFactorySync

func (a *FlipApiService) ToggleFactorySync(ctx context.Context, id string, factorySyncBody FactorySyncBody) (FactorySync, *http.Response, error)

FlipApiService Toggles synchronisation settings. * @param ctx context.Context for authentication, logging, tracing, etc. @param id id of the factory @param factorySyncBody @return FactorySync

func (*FlipApiService) UpdateEncoding

func (a *FlipApiService) UpdateEncoding(ctx context.Context, id string, factoryId string, updateEncodingBody UpdateEncodingBody, localVarOptionals map[string]interface{}) (Encoding, *http.Response, error)

FlipApiService Updates an Encoding * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of an Encoding. @param factoryId Id of a Factory. @param updateEncodingBody @param optional (nil or map[string]interface{}) with one or more of:

@param "screenshots" (bool) Determines whether the response will include screenshots. By default this is not set.
@param "preciseStatus" (bool) Determines whether the response will include a precise status. By default this is not set.

@return Encoding

func (*FlipApiService) UpdateFactory

func (a *FlipApiService) UpdateFactory(ctx context.Context, id string, updateFactoryBody FactoryBody, localVarOptionals map[string]interface{}) (Factory, *http.Response, error)

FlipApiService Updates a Factory's settings. Returns a Factory object. * @param ctx context.Context for authentication, logging, tracing, etc. @param id id of the factory @param updateFactoryBody @param optional (nil or map[string]interface{}) with one or more of:

@param "withStorageProvider" (bool) if set to `true`, results will include a storage provider's id

@return Factory

func (*FlipApiService) UpdateNotifications

func (a *FlipApiService) UpdateNotifications(ctx context.Context, factoryId string, cloudNotificationSettingsBody CloudNotificationSettings) (CloudNotificationSettings, *http.Response, error)

FlipApiService Updates a Factory's notification settings. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param cloudNotificationSettingsBody @return CloudNotificationSettings

func (*FlipApiService) UpdateProfile

func (a *FlipApiService) UpdateProfile(ctx context.Context, id string, factoryId string, updateProfileBody ProfileBody, localVarOptionals map[string]interface{}) (Profile, *http.Response, error)

FlipApiService Updates a given Profile * @param ctx context.Context for authentication, logging, tracing, etc. @param id @param factoryId Id of a Factory. @param updateProfileBody @param optional (nil or map[string]interface{}) with one or more of:

@param "excludeAdvancedServices" (bool)
@param "expand" (bool) If expand option is set Profile objects will contain all command parameters, even if their value is default. By default this is not set.

@return Profile

func (*FlipApiService) UploadVideo

func (a *FlipApiService) UploadVideo(ctx context.Context, factoryId string, videoUploadBody VideoUploadBody) (UploadSession, *http.Response, error)

FlipApiService Creates an upload session. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param videoUploadBody @return UploadSession

func (*FlipApiService) Video

func (a *FlipApiService) Video(ctx context.Context, id string, factoryId string) (Video, *http.Response, error)

FlipApiService Returns a Video object. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Video. @param factoryId Id of a Factory. @return Video

func (*FlipApiService) VideoEncodings

func (a *FlipApiService) VideoEncodings(ctx context.Context, id string, factoryId string, localVarOptionals map[string]interface{}) (PaginatedEncodingsCollection, *http.Response, error)

FlipApiService Returns a list of Encodings that belong to a Video. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Video. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "page" (int32) A page to be fetched. Default is `1`.
@param "perPage" (int32) A number of results per page. Default is `100`.
@param "screenshots" (bool) Determines whether the response will include screenshots. By default this is not set.
@param "preciseStatus" (bool) Determines whether the response will include a precise status. By default this is not set.

@return PaginatedEncodingsCollection

func (*FlipApiService) VideoMetadata

func (a *FlipApiService) VideoMetadata(ctx context.Context, id string, factoryId string) (VideoMetadata, *http.Response, error)

FlipApiService Returns a Video's metadata * @param ctx context.Context for authentication, logging, tracing, etc. @param id Id of a Video. @param factoryId Id of a Factory. @return VideoMetadata

func (*FlipApiService) Videos

func (a *FlipApiService) Videos(ctx context.Context, factoryId string, localVarOptionals map[string]interface{}) (PaginatedVideoCollection, *http.Response, error)

FlipApiService Returns a collection of Video objects. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "page" (int32) A page to be fetched. Default is `1`.
@param "perPage" (int32) A number of results per page. Default is `100`.

@return PaginatedVideoCollection

func (*FlipApiService) Workflows

func (a *FlipApiService) Workflows(ctx context.Context, factoryId string, localVarOptionals map[string]interface{}) (PaginatedWorkflowsCollection, *http.Response, error)

FlipApiService Returns a collection of Workflows that belong to a Factory. * @param ctx context.Context for authentication, logging, tracing, etc. @param factoryId Id of a Factory. @param optional (nil or map[string]interface{}) with one or more of:

@param "page" (int32) A page to be fetched. Default is `1`.
@param "perPage" (int32) A number of results per page. Default is `100`.

@return PaginatedWorkflowsCollection

type ModelError

type ModelError struct {

	// Error type
	Error_ string `json:"error,omitempty"`

	// Explanation why the error has been raised.
	Message string `json:"message,omitempty"`
}

type PaginatedEncodingsCollection

type PaginatedEncodingsCollection struct {
	Encodings []Encoding `json:"encodings"`

	// A number of the fetched page.
	Page int32 `json:"page"`

	// A number of encodings per page.
	PerPage int32 `json:"per_page"`

	// A number of all encodings stored in the db.
	Total int32 `json:"total"`
}

type PaginatedFactoryCollection

type PaginatedFactoryCollection struct {
	Factories []Factory `json:"factories,omitempty"`

	// A number of the fetched page.
	Page int32 `json:"page,omitempty"`

	// A number of factories per page.
	PerPage int32 `json:"per_page,omitempty"`

	// A number of all factories stored in the db.
	Total int32 `json:"total,omitempty"`
}

type PaginatedProfilesCollection

type PaginatedProfilesCollection struct {
	Profiles []Profile `json:"profiles,omitempty"`

	// A number of the fetched page.
	Page int32 `json:"page,omitempty"`

	// A number of profiles per page.
	PerPage int32 `json:"per_page,omitempty"`

	// A number of all profiles stored in the db.
	Total int32 `json:"total,omitempty"`
}

type PaginatedVideoCollection

type PaginatedVideoCollection struct {
	Videos []Video `json:"videos,omitempty"`

	// A number of the fetched page.
	Page int32 `json:"page,omitempty"`

	// A number of videos per page.
	PerPage int32 `json:"per_page,omitempty"`

	// A number of all videos stored in the db.
	Total int32 `json:"total,omitempty"`
}

type PaginatedWorkflowsCollection

type PaginatedWorkflowsCollection struct {
	Workflows []Profile `json:"workflows,omitempty"`

	// A number of the fetched page.
	Page int32 `json:"page,omitempty"`

	// A number of factories per page.
	PerPage int32 `json:"per_page,omitempty"`

	// A number of all factories stored in the db.
	Total int32 `json:"total,omitempty"`
}

type Profile

type Profile struct {

	// todo
	AdvancedFpsConversion string `json:"advanced_fps_conversion,omitempty"`

	// Specifies an aspect mode for output videos. The following options are available:   - preserve   - constrain   - letterbox   - pad   - fill (crop)   - stretch   - center Default is \"letterbox\".
	AspectMode string `json:"aspect_mode,omitempty"`

	// A display aspect ratio. By default it is not set.
	AspectRatio string `json:"aspect_ratio,omitempty"`

	// audio bitrate (in bits/s)
	AudioBitrate int32 `json:"audio_bitrate,omitempty"`

	// A number of audio channels. By default it is not set.
	AudioChannels int32 `json:"audio_channels,omitempty"`

	// A channel layout specifies the spatial disposition of the channels in a multi-channel audio stream.
	AudioChannelsLayout string `json:"audio_channels_layout,omitempty"`

	// A number of audio channels per track.
	AudioChannelsPerTrack int32 `json:"audio_channels_per_track,omitempty"`

	// Audio codec that will be used by the profile. Available codecs are: `libmp3lame`, `libvorbis`, `libfdk_aac`, `dib_ac3, `pcm_s16le`, `mp2`, `ac3`, `eac3`.
	AudioCodec string `json:"audio_codec,omitempty"`

	// Specifies an audio container.
	AudioFormat string `json:"audio_format,omitempty"`

	AudioMap string `json:"audio_map,omitempty"`

	// Packet identifier used by MPEG formats.
	AudioPid string `json:"audio_pid,omitempty"`

	// Specifies an audio profile.
	AudioProfile string `json:"audio_profile,omitempty"`

	// The number of samples of audio carried per second.
	AudioSampleRate int32 `json:"audio_sample_rate,omitempty"`

	AudioStreamId int32 `json:"audio_stream_id,omitempty"`

	// A number of audio streams.
	AudioStreams int32 `json:"audio_streams,omitempty"`

	// A class of the AVC-Intra video coding.
	AvcintraClass string `json:"avcintra_class,omitempty"`

	// Determines the size of the PulseAudio buffer. by default it is not set.
	BufferSize int32 `json:"buffer_size,omitempty"`

	// todo
	BufferSizeInPackets string `json:"buffer_size_in_packets,omitempty"`

	Bumpers *interface{} `json:"bumpers,omitempty"`

	ByteRangeRequests bool `json:"byte_range_requests,omitempty"`

	// Clip ends at a specific time (timecode).
	ClipEnd string `json:"clip_end,omitempty"`

	PixelFormat string `json:"pixel_format,omitempty"`

	// A clip’s duration.
	ClipLength string `json:"clip_length,omitempty"`

	// Clip starts at a specific offset.
	ClipOffset string `json:"clip_offset,omitempty"`

	// One of add (adds captions as a separate streams) or burn (burns captions on video stream using the first subtitle file). By default it is not set.
	ClosedCaptions string `json:"closed_captions,omitempty"`

	ColorMetadata bool `json:"color_metadata,omitempty"`

	// A date and time when the Profile has been created.
	CreatedAt string `json:"created_at,omitempty"`

	// Distance (in pixels) from the bottom edge of the screen from which you want your crop to be done.
	CropInputBottom string `json:"crop_input_bottom,omitempty"`

	// Width of the cropped image in pixels.
	CropInputHeight string `json:"crop_input_height,omitempty"`

	// Distance (in pixels) from the left edge of the screen from which you want your crop to be done.
	CropInputLeft string `json:"crop_input_left,omitempty"`

	// Distance (in pixels) from the right edge of the screen from which you want your crop to be done.
	CropInputRight string `json:"crop_input_right,omitempty"`

	// Distance (in pixels) from the top edge of the screen from which you want your crop to be done.
	CropInputTop string `json:"crop_input_top,omitempty"`

	// Height of the cropped image in pixels.
	CropInputWidth float32 `json:"crop_input_width,omitempty"`

	DashProfile string `json:"dash_profile,omitempty"`

	// One of `keep_fps` or `double_fps`. By default it is not set.
	Deinterlace string `json:"deinterlace,omitempty"`

	DeinterlaceFrames string `json:"deinterlace_frames,omitempty"`

	// Description of the profile.
	Description string `json:"description,omitempty"`

	DnxhdType string `json:"dnxhd_type,omitempty"`

	Encryption bool `json:"encryption,omitempty"`

	// File extension.
	Extname string `json:"extname,omitempty"`

	// Null value copy the original fps. By default it is not set.
	Fps float32 `json:"fps,omitempty"`

	// Evenly spaced number of generated screenshots. By default it is not set.
	FrameCount int32 `json:"frame_count,omitempty"`

	// Thumbnail interval (Frames or seconds).
	FrameInterval string `json:"frame_interval,omitempty"`

	// Array of offsets (Frames or seconds).
	FrameOffsets string `json:"frame_offsets,omitempty"`

	// A specified set of constraints that indicate a degree of required decoder performance for a profile.
	H264Level string `json:"h264_level,omitempty"`

	// Profiles represent a sub-set of the encoding techniques available in H.264.
	H264Profile string `json:"h264_profile,omitempty"`

	// Specifies a h264 tuning option.
	H264Tune string `json:"h264_tune,omitempty"`

	// Height in pixels.
	Height int32 `json:"height,omitempty"`

	Id string `json:"id,omitempty"`

	ImxType string `json:"imx_type,omitempty"`

	Inputs *interface{} `json:"inputs,omitempty"`

	Interlace string `json:"interlace,omitempty"`

	// Adds a key frame every N frames. Default is 250, adds a key frame every 250 frames.
	KeyframeInterval int32 `json:"keyframe_interval,omitempty"`

	// todo
	KeyframeRate string `json:"keyframe_rate,omitempty"`

	Lang string `json:"lang,omitempty"`

	// A max bitrate tolerance (in bits/s). By default this is not set.
	MaxRate int32 `json:"max_rate,omitempty"`

	MergeAudioStreams string `json:"merge_audio_streams,omitempty"`

	// Remove audio from input video file. By default it is set to `false`.
	MuteAudioTracks bool `json:"mute_audio_tracks,omitempty"`

	// A unique machine-readable name that will identify the profile. Helpful later on for filtering encodings by profile.
	Name string `json:"name,omitempty"`

	Outputs *interface{} `json:"outputs,omitempty"`

	// Specify the directory where the output files should be stored. By default it is not set. More information about this [here](https://cloud.telestream.net/docs#path-format---know-how).
	OutputsPathFormat string `json:"outputs_path_format,omitempty"`

	PlaylistType string `json:"playlist_type,omitempty"`

	PmtPid string `json:"pmt_pid,omitempty"`

	// a name of a preset that a profile will use.
	PresetName string `json:"preset_name,omitempty"`

	ProresFormat string `json:"prores_format,omitempty"`

	// Minimum value is 2, maximum is 60.
	SegmentTime int32 `json:"segment_time,omitempty"`

	Stack string `json:"stack,omitempty"`

	StartingTimecode string `json:"starting_timecode,omitempty"`

	TelestreamBlockSize string `json:"telestream_block_size,omitempty"`

	// Minimum value is 0, maximum is 4.
	TelestreamBlurScaler float32 `json:"telestream_blur_scaler,omitempty"`

	// Minimum value is 0, maximum is 4.
	TelestreamCostScaler float32 `json:"telestream_cost_scaler,omitempty"`

	// Minimum value is 0, maximum is 2.
	TelestreamSearchLengthScaler int32 `json:"telestream_search_length_scaler,omitempty"`

	TelestreamSubpelMode bool `json:"telestream_subpel_mode,omitempty"`

	// If set, timestamps will be added to your videos. By default this is not set.
	TimeCode string `json:"time_code,omitempty"`

	// Human-readable name.
	Title string `json:"title,omitempty"`

	Trailers *interface{} `json:"trailers,omitempty"`

	TransportRate string `json:"transport_rate,omitempty"`

	TsPids string `json:"ts_pids,omitempty"`

	UpdatedAt string `json:"updated_at,omitempty"`

	// Upscale the video resolution to match your profile. Default is `true`.
	Upscale bool `json:"upscale,omitempty"`

	UseEditlist bool `json:"use_editlist,omitempty"`

	// Pattern utilised to match HLS.Variant presets by name. Default is hls.*.
	Variants string `json:"variants,omitempty"`

	VideoBitrate int32 `json:"video_bitrate,omitempty"`

	VideoPid string `json:"video_pid,omitempty"`

	// Distance from the bottom of the video frame in pixels or percentage of video frame height. Works like CSS. Default is `0`.
	WatermarkBottom string `json:"watermark_bottom,omitempty"`

	WatermarkBumpers bool `json:"watermark_bumpers,omitempty"`

	// Height of the watermark image in pixels or percentage of video frame height. Default is no resizing
	WatermarkHeight string `json:"watermark_height,omitempty"`

	// Distance from the left of the video frame in pixels or percentage of video frame width. Works like CSS. Default is `0`.
	WatermarkLeft string `json:"watermark_left,omitempty"`

	// Distance from the right of the video frame in pixels or percentage of video frame width. Works like CSS. Default is `0`.
	WatermarkRight string `json:"watermark_right,omitempty"`

	// Distance from the top of the video frame in pixels or percentage of video frame height. Works like CSS. Default is `0`.
	WatermarkTop string `json:"watermark_top,omitempty"`

	WatermarkTrailers bool `json:"watermark_trailers,omitempty"`

	// Url of a watermark image.
	WatermarkUrl string `json:"watermark_url,omitempty"`

	// Width of the watermark image in pixels or percentage of video frame width. Default is `no resizing`.
	WatermarkWidth string `json:"watermark_width,omitempty"`

	// Width in pixels.
	Width int32 `json:"width,omitempty"`

	X264Options string `json:"x264_options,omitempty"`

	X265Options string `json:"x265_options,omitempty"`

	XdcamFormat string `json:"xdcam_format,omitempty"`

	// Enable more sensitive pulldown removal algorithm.
	TachyonAllowRemovePulldown bool `json:"tachyon_allow_remove_pulldown,omitempty"`

	// If the images you are converting are composited 29.976, but the pulldown pattern was not adhered to when performing the composite, this setting is required to remove combing artifacts. It will also remove combing artifacts related to very poor 3:2 cadence.
	TachyonEnablePostPulldownFilter bool `json:"tachyon_enable_post_pulldown_filter,omitempty"`

	TachyonMediaHintIsCartoon bool `json:"tachyon_media_hint_is_cartoon,omitempty"`

	// Remove chroma noise during the analysis of a video.
	TachyonMediaHintHasChromaNoise bool `json:"tachyon_media_hint_has_chroma_noise,omitempty"`

	// When pulldown is not achieved due to extremely broken cadence, or other factors like highly mixed content or if chroma noise masks motion, the pulldown engine may fall back to de-interlacing rather than removing telecine. If that's a case, a more sensitive pulldown pattern can be used. This algorithm favors inverse telecine and with lower thresholds for triggering pulldown identification, will maximize the number of progressive frames created from the video.
	TachyonMoreSensitiveRemovePulldown bool `json:"tachyon_more_sensitive_remove_pulldown,omitempty"`

	TachyonAllowAddStandardPd bool `json:"tachyon_allow_add_standard_pd,omitempty"`

	// Allows 2:2 (PSF) Insertion. Creates a new series of frames which are based on duplicating the field an interlacing it into top/bottom field. Maintains a film-look.
	TachyonAllowAdd22pd bool `json:"tachyon_allow_add_2_2pd,omitempty"`

	// Allows 4:4 Insertion. Repeats each progressive frame twice on output (motion rate is halved). This setting is used when you want to convert to high progressive frame rates (i.e. 50p/59.94p/60p) but want to preserve film qualities (low motion rate, such as 24p).
	TachyonAllowAdd44pd bool `json:"tachyon_allow_add_4_4pd,omitempty"`

	// 2:3 Insertion. inserts a standard 2:3 telecine pattern to 23.976p video stream to achieve a 29.97i frame rate
	TachyonAllowAdd46pd bool `json:"tachyon_allow_add_4_6pd,omitempty"`

	// Allows Euro Insertion. For field based interpolation rather than pixel-based. This is designed for interlaced or progressive integer frame rate conversions that are being converted to interlaced outputs. This method is valid for 24p to 50i conversions only.
	TachyonAllowAddEuroPd bool `json:"tachyon_allow_add_euro_pd,omitempty"`

	// Allows Adaptive Insertion. For field-based interpolation rather than using pixel-based interpolation. This algorithm is designed for both integer and non-integer frame rate conversion targets - as long as one of them is a non-integer rate (23.976, 29.97, 59.94, etc). This creates NTSC-PAL conversions clean of motion artifacts at the expense of potential slight stutter. Stutter is most noticeable with material that has smooth and uniform motion.
	TachyonAllowAddAdaptivePd bool `json:"tachyon_allow_add_adaptive_pd,omitempty"`

	// This setting determines how much Tachyon will trust motion vectors in the creation of new images
	TachyonMotionAmount string `json:"tachyon_motion_amount,omitempty"`

	// This option specifies the transition region size between fallback areas and motion compensated areas. A larger fallback size allows more blending (feathering) to occur between the regions.
	TachyonFallbackSize string `json:"tachyon_fallback_size,omitempty"`

	// This option specifies the size of a motion block.
	TachyonMblockSize string `json:"tachyon_mblock_size,omitempty"`

	TachyonCutDetectionSensitivity float32 `json:"tachyon_cut_detection_sensitivity,omitempty"`

	// Enables the trusted metadata framework.
	Eac3EvolutionEnable bool `json:"eac3_evolution_enable,omitempty"`

	// Selects the type of audio service. **For 1/0 Voiceover will be used when Voiceover/Karaoke is selected. For 2/0 and above Karaoke will be used.
	Eac3BitstreamMode string `json:"eac3_bitstream_mode,omitempty"`

	// Applies a 90-degree phase shift to the surround channels; necessary if the output file is being decoded by a Dolby Surround Pro Logic or Pro Logic II decoder.
	Eac3NinetyDegreePhaseShift bool `json:"eac3_ninety_degree_phase_shift,omitempty"`

	// Attenuates the surround channels by 3 dB before encoding.
	Eac3ThreeDecibelAttenuation bool `json:"eac3_three_decibel_attenuation,omitempty"`

	// Applies a 120 Hz eighth order lowpass filter to the LFE input prior to encoding.
	Eac3EnableLfeLowPassFilter bool `json:"eac3_enable_lfe_low_pass_filter,omitempty"`

	// Allows audio that has passed through an A/D conversion stage to be marked as such.
	Eac3AnalogToDigitalConverterType string `json:"eac3_analog_to_digital_converter_type,omitempty"`

	Eac3StereoDownmixPreference string `json:"eac3_stereo_downmix_preference,omitempty"`

	// Indicates the level shift applied to the center channel when adding to the left and right outputs during a downmix to a Lt/Rt output.
	Eac3LtRtCenterMixLevel string `json:"eac3_lt_rt_center_mix_level,omitempty"`

	// Indicates the level shift applied to the surround channel when adding to the left and right outputs during a downmix to a Lt/Rt output.
	Eac3LtRtSurroundMixLevel string `json:"eac3_lt_rt_surround_mix_level,omitempty"`

	// Indicates the level shift applied to the center channel when adding to the left and right outputs during a downmix to a Lo/Ro output.
	Eac3LoRoCenterMixLevel string `json:"eac3_lo_ro_center_mix_level,omitempty"`

	// Indicates the level shift applied to the surround channel when adding to the left and right outputs during a downmix to a Lo/Ro output.
	Eac3LoRoSurroundMixLevel string `json:"eac3_lo_ro_surround_mix_level,omitempty"`

	// Indicates whether the audio stream was encoded using Dolby EX.
	Eac3SurroundExMode string `json:"eac3_surround_ex_mode,omitempty"`

	// Dynamic Range Control for Line Mode.
	Eac3DrcLineModeProfile string `json:"eac3_drc_line_mode_profile,omitempty"`

	// Dynamic Range Control for RF Mode.
	Eac3DrcRfModeProfile string `json:"eac3_drc_rf_mode_profile,omitempty"`

	// Represents the volume level of dialog in the audio stream which can be used by a Dolby Digital decoder. This aids the decoder in matching volume between program sources. Minimum value is 1, maximum is 31.
	Eac3DialogNormalization int32 `json:"eac3_dialog_normalization,omitempty"`

	Eac3RoomType string `json:"eac3_room_type,omitempty"`

	// Minimum value is 80, maximum is 111.
	Eac3MixingLevel int32 `json:"eac3_mixing_level,omitempty"`

	// Indicates whether the encoded bitstream is copyright protected.
	Eac3CopyrightProtected bool `json:"eac3_copyright_protected,omitempty"`

	// Indicates whether the encoded bitstream is the master version, or a copy.
	Eac3OriginalBitstream bool `json:"eac3_original_bitstream,omitempty"`
}

type ProfileBody

type ProfileBody struct {

	// a name of a preset that a profile will use.
	PresetName string `json:"preset_name"`

	// todo
	AdvancedFpsConversion string `json:"advanced_fps_conversion,omitempty"`

	// Default is \"letterbox\".
	AspectMode string `json:"aspect_mode,omitempty"`

	// Sets the desired display aspect ratio. By default it is not set.
	AspectRatio string `json:"aspect_ratio,omitempty"`

	// audio bitrate (in bits/s)
	AudioBitrate int32 `json:"audio_bitrate,omitempty"`

	// Sets the number of audio channels. By default it is not set.
	AudioChannels int32 `json:"audio_channels,omitempty"`

	// A channel layout specifies the spatial disposition of the channels in a multi-channel audio stream.
	AudioChannelsLayout string `json:"audio_channels_layout,omitempty"`

	// Sets the number of audio channels per track.
	AudioChannelsPerTrack string `json:"audio_channels_per_track,omitempty"`

	// Audio codec that will be used by the profile.
	AudioCodec string `json:"audio_codec,omitempty"`

	// Specifies an audio container.
	AudioFormat string `json:"audio_format,omitempty"`

	// Packet identifier used by MPEG formats.
	AudioPid string `json:"audio_pid,omitempty"`

	// Sets an audio profile.
	AudioProfile string `json:"audio_profile,omitempty"`

	// The number of samples of audio carried per second.
	AudioSampleRate int32 `json:"audio_sample_rate,omitempty"`

	// Sets the number of audio streams.
	AudioStreams int32 `json:"audio_streams,omitempty"`

	// class of the AVC-Intra video coding.
	AvcintraClass string `json:"avcintra_class,omitempty"`

	// Sets the buffer size, and can be 1-2 seconds for most gaming screencasts, and up to 5 seconds for more static content. You will have to experiment to see what looks best for your content.
	BufferSize int32 `json:"buffer_size,omitempty"`

	// todo
	BufferSizeInPackets string `json:"buffer_size_in_packets,omitempty"`

	// Sets the clip’s duration.
	ClipLength string `json:"clip_length,omitempty"`

	// Clip starts at a specific offset.
	ClipOffset string `json:"clip_offset,omitempty"`

	// Clip ends at a specific time (timecode).
	ClipEnd string `json:"clip_end,omitempty"`

	PixelFormat string `json:"pixel_format,omitempty"`

	// One of add (adds captions as a separate streams) or burn (burns captions on video stream using the first subtitle file). By default it is not set.
	ClosedCaptions string `json:"closed_captions,omitempty"`

	DashProfile string `json:"dash_profile,omitempty"`

	// One of `keep_fps` or `double_fps`. By default it is not set.
	Deinterlace string `json:"deinterlace,omitempty"`

	DeinterlaceFrames string `json:"deinterlace_frames,omitempty"`

	DnxhdType string `json:"dnxhd_type,omitempty"`

	Encryption bool `json:"encryption,omitempty"`

	// File extension.
	Extname string `json:"extname,omitempty"`

	// Null value copy the original fps. By default it is not set.
	Fps float32 `json:"fps,omitempty"`

	// Array of offsets (Frames or seconds).
	FrameOffsets string `json:"frame_offsets,omitempty"`

	// Thumbnail interval (Frames or seconds).
	FrameInterval string `json:"frame_interval,omitempty"`

	// Evenly spaced number of generated screenshots. By default it is not set.
	FrameCount int32 `json:"frame_count,omitempty"`

	// A specified set of constraints that indicate a degree of required decoder performance for a profile.
	H264Level string `json:"h264_level,omitempty"`

	// Profiles represent a sub-set of the encoding techniques available in H.264.
	H264Profile string `json:"h264_profile,omitempty"`

	// Use this option to change settings based upon the specifics of your input
	H264Tune string `json:"h264_tune,omitempty"`

	// Height in pixels.
	Height int32 `json:"height,omitempty"`

	ImxType string `json:"imx_type,omitempty"`

	Interlace string `json:"interlace,omitempty"`

	// Adds a key frame every N frames. Default is 250, adds a key frame every 250 frames.
	KeyframeInterval int32 `json:"keyframe_interval,omitempty"`

	// todo
	KeyframeRate float32 `json:"keyframe_rate,omitempty"`

	// Set max bitrate tolerance (in bits/s). By default this is not set
	MaxRate int32 `json:"max_rate,omitempty"`

	MergeAudioStreams string `json:"merge_audio_streams,omitempty"`

	// Unique machine-readable name that will identify the profile. Helpful later on for filtering encodings by profile.
	Name string `json:"name,omitempty"`

	// Specify the directory where the output files should be stored. By default it is not set. More information about this [here](https://cloud.telestream.net/docs#path-format---know-how).
	OutputsPathFormat string `json:"outputs_path_format,omitempty"`

	PmtPid string `json:"pmt_pid,omitempty"`

	ProresFormat string `json:"prores_format,omitempty"`

	SegmentTime string `json:"segment_time,omitempty"`

	Size string `json:"size,omitempty"`

	StartingTimecode string `json:"starting_timecode,omitempty"`

	Tar bool `json:"tar,omitempty"`

	TransportRate string `json:"transport_rate,omitempty"`

	TsPids string `json:"ts_pids,omitempty"`

	// Upscale the video resolution to match your profile. Default is `true`.
	Upscale bool `json:"upscale,omitempty"`

	// Pattern utilised to match HLS.Variant presets by name. Default is hls.*.
	Variants string `json:"variants,omitempty"`

	VideoBitrate int32 `json:"video_bitrate,omitempty"`

	VideoPid string `json:"video_pid,omitempty"`

	// Distance from the bottom of the video frame in pixels or percentage of video frame height. Works like CSS. Default is `0`.
	WatermarkBottom string `json:"watermark_bottom,omitempty"`

	// Height of the watermark image in pixels or percentage of video frame height. Default is no resizing
	WatermarkHeight string `json:"watermark_height,omitempty"`

	// Distance from the left of the video frame in pixels or percentage of video frame width. Works like CSS. Default is `0`.
	WatermarkLeft string `json:"watermark_left,omitempty"`

	// Distance from the right of the video frame in pixels or percentage of video frame width. Works like CSS. Default is `0`.
	WatermarkRight string `json:"watermark_right,omitempty"`

	// Distance from the top of the video frame in pixels or percentage of video frame height. Works like CSS. Default is `0`.
	WatermarkTop string `json:"watermark_top,omitempty"`

	// Url of a watermark image.
	WatermarkUrl string `json:"watermark_url,omitempty"`

	// Width of the watermark image in pixels or percentage of video frame width. Default is `no resizing`.
	WatermarkWidth string `json:"watermark_width,omitempty"`

	// Width in pixels.
	Width int32 `json:"width,omitempty"`

	X264Options string `json:"x264_options,omitempty"`

	X265Options string `json:"x265_options,omitempty"`

	XdcamFormat string `json:"xdcam_format,omitempty"`

	// Remove audio from input video file. By default it is set to `false`.
	MuteAudioTracks bool `json:"mute_audio_tracks,omitempty"`

	ByteRangeRequests string `json:"byte_range_requests,omitempty"`

	Lang string `json:"lang,omitempty"`

	UseEditlist string `json:"use_editlist,omitempty"`

	AudioMap string `json:"audio_map,omitempty"`

	AudioStreamId string `json:"audio_stream_id,omitempty"`

	Bumpers *interface{} `json:"bumpers,omitempty"`

	// Determines a preset that is used by encoders.
	CodecPreset string `json:"codec_preset,omitempty"`

	ColorMetadata string `json:"color_metadata,omitempty"`

	// Distance (in pixels) from the bottom edge of the screen from which you want your crop to be done.
	CropInputBottom string `json:"crop_input_bottom,omitempty"`

	// Width of the cropped image in pixels.
	CropInputHeight string `json:"crop_input_height,omitempty"`

	// Distance (in pixels) from the left edge of the screen from which you want your crop to be done.
	CropInputLeft string `json:"crop_input_left,omitempty"`

	// Distance (in pixels) from the right edge of the screen from which you want your crop to be done.
	CropInputRight string `json:"crop_input_right,omitempty"`

	// Distance (in pixels) from the top edge of the screen from which you want your crop to be done.
	CropInputTop string `json:"crop_input_top,omitempty"`

	// Height of the cropped image in pixels.
	CropInputWidth string `json:"crop_input_width,omitempty"`

	DynamicRecipe string `json:"dynamic_recipe,omitempty"`

	PlaylistType string `json:"playlist_type,omitempty"`

	PresetVersion string `json:"preset_version,omitempty"`

	SegmentDelimiter string `json:"segment_delimiter,omitempty"`

	SwsFlags string `json:"sws_flags,omitempty"`

	TelestreamBlockSize string `json:"telestream_block_size,omitempty"`

	// Minimum value is 0, maximum is 4.
	TelestreamBlurScaler string `json:"telestream_blur_scaler,omitempty"`

	// Minimum value is 0, maximum is 4.
	TelestreamCostScaler string `json:"telestream_cost_scaler,omitempty"`

	// Minimum value is 0, maximum is 2.
	TelestreamSearchLengthScaler string `json:"telestream_search_length_scaler,omitempty"`

	TelestreamSubpelMode string `json:"telestream_subpel_mode,omitempty"`

	Trailers *interface{} `json:"trailers,omitempty"`

	VantageGroupId string `json:"vantage_group_id,omitempty"`

	WatermarkBumpers string `json:"watermark_bumpers,omitempty"`

	WatermarkTrailers string `json:"watermark_trailers,omitempty"`

	// Enable more sensitive pulldown removal algorithm.
	TachyonAllowRemovePulldown bool `json:"tachyon_allow_remove_pulldown,omitempty"`

	// If the images you are converting are composited 29.976, but the pulldown pattern was not adhered to when performing the composite, this setting is required to remove combing artifacts. It will also remove combing artifacts related to very poor 3:2 cadence.
	TachyonEnablePostPulldownFilter bool `json:"tachyon_enable_post_pulldown_filter,omitempty"`

	TachyonMediaHintIsCartoon bool `json:"tachyon_media_hint_is_cartoon,omitempty"`

	// Remove chroma noise during the analysis of a video.
	TachyonMediaHintHasChromaNoise bool `json:"tachyon_media_hint_has_chroma_noise,omitempty"`

	// When pulldown is not achieved due to extremely broken cadence, or other factors like highly mixed content or if chroma noise masks motion, the pulldown engine may fall back to de-interlacing rather than removing telecine. If that's a case, a more sensitive pulldown pattern can be used. This algorithm favors inverse telecine and with lower thresholds for triggering pulldown identification, will maximize the number of progressive frames created from the video.
	TachyonMoreSensitiveRemovePulldown bool `json:"tachyon_more_sensitive_remove_pulldown,omitempty"`

	TachyonAllowAddStandardPd bool `json:"tachyon_allow_add_standard_pd,omitempty"`

	// Allows 2:2 (PSF) Insertion. Creates a new series of frames which are based on duplicating the field an interlacing it into top/bottom field. Maintains a film-look.
	TachyonAllowAdd22pd bool `json:"tachyon_allow_add_2_2pd,omitempty"`

	// Allows 4:4 Insertion. Repeats each progressive frame twice on output (motion rate is halved). This setting is used when you want to convert to high progressive frame rates (i.e. 50p/59.94p/60p) but want to preserve film qualities (low motion rate, such as 24p).
	TachyonAllowAdd44pd bool `json:"tachyon_allow_add_4_4pd,omitempty"`

	// 2:3 Insertion. inserts a standard 2:3 telecine pattern to 23.976p video stream to achieve a 29.97i frame rate
	TachyonAllowAdd46pd bool `json:"tachyon_allow_add_4_6pd,omitempty"`

	// Allows Euro Insertion. For field based interpolation rather than pixel-based. This is designed for interlaced or progressive integer frame rate conversions that are being converted to interlaced outputs. This method is valid for 24p to 50i conversions only.
	TachyonAllowAddEuroPd bool `json:"tachyon_allow_add_euro_pd,omitempty"`

	// Allows Adaptive Insertion. For field-based interpolation rather than using pixel-based interpolation. This algorithm is designed for both integer and non-integer frame rate conversion targets - as long as one of them is a non-integer rate (23.976, 29.97, 59.94, etc). This creates NTSC-PAL conversions clean of motion artifacts at the expense of potential slight stutter. Stutter is most noticeable with material that has smooth and uniform motion.
	TachyonAllowAddAdaptivePd bool `json:"tachyon_allow_add_adaptive_pd,omitempty"`

	// This setting determines how much Tachyon will trust motion vectors in the creation of new images
	TachyonMotionAmount string `json:"tachyon_motion_amount,omitempty"`

	// This option specifies the transition region size between fallback areas and motion compensated areas. A larger fallback size allows more blending (feathering) to occur between the regions.
	TachyonFallbackSize string `json:"tachyon_fallback_size,omitempty"`

	// This option specifies the size of a motion block.
	TachyonMblockSize string `json:"tachyon_mblock_size,omitempty"`

	TachyonCutDetectionSensitivity float32 `json:"tachyon_cut_detection_sensitivity,omitempty"`

	// Enables the trusted metadata framework.
	Eac3EvolutionEnable bool `json:"eac3_evolution_enable,omitempty"`

	// Selects the type of audio service. **For 1/0 Voiceover will be used when Voiceover/Karaoke is selected. For 2/0 and above Karaoke will be used.
	Eac3BitstreamMode string `json:"eac3_bitstream_mode,omitempty"`

	// Applies a 90-degree phase shift to the surround channels; necessary if the output file is being decoded by a Dolby Surround Pro Logic or Pro Logic II decoder.
	Eac3NinetyDegreePhaseShift bool `json:"eac3_ninety_degree_phase_shift,omitempty"`

	// Attenuates the surround channels by 3 dB before encoding.
	Eac3ThreeDecibelAttenuation bool `json:"eac3_three_decibel_attenuation,omitempty"`

	// Applies a 120 Hz eighth order lowpass filter to the LFE input prior to encoding.
	Eac3EnableLfeLowPassFilter bool `json:"eac3_enable_lfe_low_pass_filter,omitempty"`

	// Allows audio that has passed through an A/D conversion stage to be marked as such.
	Eac3AnalogToDigitalConverterType string `json:"eac3_analog_to_digital_converter_type,omitempty"`

	Eac3StereoDownmixPreference string `json:"eac3_stereo_downmix_preference,omitempty"`

	// Indicates the level shift applied to the center channel when adding to the left and right outputs during a downmix to a Lt/Rt output.
	Eac3LtRtCenterMixLevel string `json:"eac3_lt_rt_center_mix_level,omitempty"`

	// Indicates the level shift applied to the surround channel when adding to the left and right outputs during a downmix to a Lt/Rt output.
	Eac3LtRtSurroundMixLevel string `json:"eac3_lt_rt_surround_mix_level,omitempty"`

	// Indicates the level shift applied to the center channel when adding to the left and right outputs during a downmix to a Lo/Ro output.
	Eac3LoRoCenterMixLevel string `json:"eac3_lo_ro_center_mix_level,omitempty"`

	// Indicates the level shift applied to the surround channel when adding to the left and right outputs during a downmix to a Lo/Ro output.
	Eac3LoRoSurroundMixLevel string `json:"eac3_lo_ro_surround_mix_level,omitempty"`

	// Indicates whether the audio stream was encoded using Dolby EX.
	Eac3SurroundExMode string `json:"eac3_surround_ex_mode,omitempty"`

	// Dynamic Range Control for Line Mode.
	Eac3DrcLineModeProfile string `json:"eac3_drc_line_mode_profile,omitempty"`

	// Dynamic Range Control for RF Mode.
	Eac3DrcRfModeProfile string `json:"eac3_drc_rf_mode_profile,omitempty"`

	// Represents the volume level of dialog in the audio stream which can be used by a Dolby Digital decoder. This aids the decoder in matching volume between program sources. Minimum value is 1, maximum is 31.
	Eac3DialogNormalization int32 `json:"eac3_dialog_normalization,omitempty"`

	Eac3RoomType string `json:"eac3_room_type,omitempty"`

	// Minimum value is 80, maximum is 111.
	Eac3MixingLevel int32 `json:"eac3_mixing_level,omitempty"`

	// Indicates whether the encoded bitstream is copyright protected.
	Eac3CopyrightProtected bool `json:"eac3_copyright_protected,omitempty"`

	// Indicates whether the encoded bitstream is the master version, or a copy.
	Eac3OriginalBitstream bool `json:"eac3_original_bitstream,omitempty"`

	// Human-readable name.
	Title string `json:"title,omitempty"`

	// If set, timestamps will be added to your videos. By default this is not set.
	TimeCode bool `json:"time_code,omitempty"`
}

type ResubmitVideoBody

type ResubmitVideoBody struct {

	// Id of the video.
	VideoId string `json:"video_id,omitempty"`
}

type RetriedResponse

type RetriedResponse struct {

	// Informs whether an action has been retried successfully.
	Retried bool `json:"retried,omitempty"`
}

type SignedVideoUrl

type SignedVideoUrl struct {

	// An URL pointing to the Video file. It contains a valid authentication token.
	SignedUrl string `json:"signed_url,omitempty"`
}

type UpdateEncodingBody

type UpdateEncodingBody struct {

	// Id of a Profile that will be used for encoding.
	ProfileId string `json:"profile_id,omitempty"`

	// A name of a Profile that will be used for encoding.
	ProfileName string `json:"profile_name,omitempty"`
}

type UploadSession

type UploadSession struct {

	// An unique identifier of the UploadSession.
	Id string `json:"id"`

	// An URL to which chunks of the uploaded file should be sent
	Location string `json:"location"`

	// A number of chunks that are expected by the upstream.
	Parts int32 `json:"parts,string,omitempty"`

	// An expected size of uploaded chunks.
	PartSize int32 `json:"part_size,string,omitempty"`

	// A maximum number of concurrent connections.
	MaxConnections int32 `json:"max_connections,string,omitempty"`

	// An object containing additional files uploaded using the session.
	ExtraFiles *interface{} `json:"extra_files,omitempty"`
}

type Video

type Video struct {

	// A unique identifier of the Video.
	Id string `json:"id,omitempty"`

	// audio bitrate (in bits/s)
	AudioBitrate int32 `json:"audio_bitrate,omitempty"`

	// A number of audio channels.
	AudioChannels int32 `json:"audio_channels,omitempty"`

	// A codec that has been used to encode audio streams.
	AudioCodec string `json:"audio_codec,omitempty"`

	// A number of samples of audio carried per second.
	AudioSampleRate int32 `json:"audio_sample_rate,omitempty"`

	// A date and time when the Video has been created.
	CreatedAt string `json:"created_at,omitempty"`

	// A duration of the video in seconds.
	Duration int32 `json:"duration,omitempty"`

	// A number of related Encoding objects.
	EncodingsCount int32 `json:"encodings_count,omitempty"`

	// A class of an error that has occurred during the encoding process. It is present only if the encoding status is equal to `fail`.
	ErrorClass string `json:"error_class,omitempty"`

	// A message that explains why the encoding process has resulted in an error. It is present only if the encoding status is equal to `fail`.
	ErrorMessage string `json:"error_message,omitempty"`

	// Extension of the source file.
	Extname string `json:"extname,omitempty"`

	// A size of the source file.
	FileSize int64 `json:"file_size,omitempty"`

	// Number of frames per second.
	Fps float32 `json:"fps,omitempty"`

	// Height of the output video.
	Height int32 `json:"height,omitempty"`

	// Width of the output video.
	Width int32 `json:"width,omitempty"`

	// A mime type of the source file.
	MimeType string `json:"mime_type,omitempty"`

	// A name of the source file.
	OriginalFilename string `json:"original_filename,omitempty"`

	Path string `json:"path,omitempty"`

	// Payload is an arbitrary text of length 256 or shorter that you can store along the Video. It is typically used to retain an association with one of your own DB record ID.
	Payload string `json:"payload,omitempty"`

	// An URL pointing to the source file.
	SourceUrl string `json:"source_url,omitempty"`

	// Determines at what stage of importing process the Video is at the moment.
	Status string `json:"status,omitempty"`

	// A date and time when a Video has been updated last time.
	UpdatedAt string `json:"updated_at,omitempty"`

	// video bitrate (in bits/s)
	VideoBitrate int32 `json:"video_bitrate,omitempty"`

	// A codec that has been used to encode the input file's video streams.
	VideoCodec string `json:"video_codec,omitempty"`
}

type VideoMetadata

type VideoMetadata struct {
}

type VideoUploadBody

type VideoUploadBody struct {

	// Size of the file that will be uploaded in `bytes`.
	FileSize int64 `json:"file_size"`

	// Name of the file that will be uploaded.
	FileName string `json:"file_name"`

	// A list of names of additional files that will be uploaded.
	ExtraFiles []ExtraFile `json:"extra_files,omitempty"`

	// A comma-separated list of profile names or IDs to be used during encoding. Alternatively, specify none so no encodings will created right away.
	Profiles string `json:"profiles,omitempty"`

	PathFormat string `json:"path_format,omitempty"`

	// Payload is an arbitrary text of length 256 or shorter that you can store along the Video. It is typically used to retain an association with one of your own DB record ID.
	Payload string `json:"payload,omitempty"`

	ExtraVariables map[string]string `json:"extra_variables,omitempty"`

	// URL pointing to an image that will be used asa watermark.
	WatermarkUrl string `json:"watermark_url,omitempty"`

	// Determines distance between the left edge of a video and the left edge of a watermark image. Can be specified in pixels or percents. This parameter can be set only if watermark_right is not.
	WatermarkLeft string `json:"watermark_left,omitempty"`

	// Determines distance between the top edge of a video and the top edge of a watermark image. Can be specified in pixels or percents. This parameter can be set only if watermark_bottom is not.
	WatermarkTop string `json:"watermark_top,omitempty"`

	// Determines distance between the right edge of a video and the right edge of a watermark image. Can be specified in pixels or percents. This parameter can be set only if watermark_left is not.
	WatermarkRight string `json:"watermark_right,omitempty"`

	// Determines distance between the bottom edge of a video and the bottom edge of a watermark image. Can be specified in pixels or percents. This parameter can be set only if watermark_top is not.
	WatermarkBottom string `json:"watermark_bottom,omitempty"`

	// Determines width of the watermark image. Should be specified in pixels.
	WatermarkWidth string `json:"watermark_width,omitempty"`

	// Determines width of the watermark image. Should be specified in pixels.
	WatermarkHeight string `json:"watermark_height,omitempty"`

	// Length of the uploaded video. Should be formatted as follows: HH:MM:SS
	ClipLength string `json:"clip_length,omitempty"`

	// Clip starts at a specific offset.
	ClipOffset string `json:"clip_offset,omitempty"`

	MultiChunk bool `json:"multi_chunk,omitempty"`

	// An individual store_id for this video processing. If provided will replace store_id from cloud factory but must match underlying cloud provider and region.
	StoreId string `json:"store_id,omitempty"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL