Documentation ¶
Index ¶
- type AmaraConfig
- type AmaraProvider
- func (c *AmaraProvider) CancelJob(job *database.Job) (bool, error)
- func (c *AmaraProvider) DispatchJob(job *database.Job) error
- func (c *AmaraProvider) Download(job *database.Job, captionFormat string) ([]byte, error)
- func (c *AmaraProvider) GetName() string
- func (c *AmaraProvider) GetProviderJob(job *database.Job) (*database.ProviderJob, error)
- type Provider
- type ThreePlayConfig
- type ThreePlayProvider
- func (c *ThreePlayProvider) CancelJob(job *database.Job) (bool, error)
- func (c *ThreePlayProvider) DispatchJob(job *database.Job) error
- func (c *ThreePlayProvider) Download(job *database.Job, captionsType string) ([]byte, error)
- func (c *ThreePlayProvider) GetName() string
- func (c *ThreePlayProvider) GetProviderJob(job *database.Job) (*database.ProviderJob, error)
- type UploadProvider
- func (c *UploadProvider) CancelJob(job *database.Job) (bool, error)
- func (c *UploadProvider) DispatchJob(job *database.Job) error
- func (c *UploadProvider) Download(job *database.Job, captionsType string) ([]byte, error)
- func (c *UploadProvider) GetName() string
- func (c *UploadProvider) GetProviderJob(job *database.Job) (*database.ProviderJob, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AmaraConfig ¶
type AmaraConfig struct { Username string `envconfig:"AMARA_USERNAME"` Team string `envconfig:"AMARA_TEAM"` Token string `envconfig:"AMARA_TOKEN"` }
AmaraConfig holds Amara related config
func LoadAmaraConfigFromEnv ¶
func LoadAmaraConfigFromEnv() AmaraConfig
LoadAmaraConfigFromEnv loads Amara username, token and team from environment
type AmaraProvider ¶
AmaraProvider amara client wrapper that implements the Provider interface
func (*AmaraProvider) CancelJob ¶
func (c *AmaraProvider) CancelJob(job *database.Job) (bool, error)
CancelJob dummy method as amara cannot cancel jobs
func (*AmaraProvider) DispatchJob ¶
func (c *AmaraProvider) DispatchJob(job *database.Job) error
DispatchJob creates a video and adds subtitle to it
func (*AmaraProvider) GetName ¶
func (c *AmaraProvider) GetName() string
GetName returns provider name
func (*AmaraProvider) GetProviderJob ¶
func (c *AmaraProvider) GetProviderJob(job *database.Job) (*database.ProviderJob, error)
GetProviderJob returns current job status from Amara
type Provider ¶
type Provider interface { DispatchJob(*database.Job) error Download(*database.Job, string) ([]byte, error) GetProviderJob(*database.Job) (*database.ProviderJob, error) GetName() string CancelJob(*database.Job) (bool, error) }
Provider is the interface that transcription/captions providers must implement
func New3PlayProvider ¶
func New3PlayProvider(cfg *ThreePlayConfig, svcCfg *config.CaptionsServiceConfig) Provider
New3PlayProvider creates a ThreePlayProvider instance
func NewAmaraProvider ¶
func NewAmaraProvider(cfg *AmaraConfig, svcCfg *config.CaptionsServiceConfig) Provider
NewAmaraProvider creates an AmaraProvider
func NewUploadProvider ¶
func NewUploadProvider(svcCfg *captionsConfig.CaptionsServiceConfig, db database.DB) Provider
NewUploadProvider initializes the GCP provider.
type ThreePlayConfig ¶
ThreePlayConfig holds config necessary to create a ThreePlayProvider
func Load3PlayConfigFromEnv ¶
func Load3PlayConfigFromEnv() ThreePlayConfig
Load3PlayConfigFromEnv loads 3play API Key/Secret from environment
type ThreePlayProvider ¶
ThreePlayProvider is a 3play client that implements the Provider interface
func (*ThreePlayProvider) CancelJob ¶
func (c *ThreePlayProvider) CancelJob(job *database.Job) (bool, error)
CancelJob cancels a job if it is in a cancellable state
func (*ThreePlayProvider) DispatchJob ¶
func (c *ThreePlayProvider) DispatchJob(job *database.Job) error
DispatchJob sends a video file to 3play for transcription and captions generation or generates a expiring editing link when the media_file_url param is provided
func (*ThreePlayProvider) GetName ¶
func (c *ThreePlayProvider) GetName() string
GetName returns provider name
func (*ThreePlayProvider) GetProviderJob ¶
func (c *ThreePlayProvider) GetProviderJob(job *database.Job) (*database.ProviderJob, error)
GetProviderJob returns a 3play file
type UploadProvider ¶
UploadProvider in a GCP client wrapper that implements the Provider interface
func (*UploadProvider) CancelJob ¶
func (c *UploadProvider) CancelJob(job *database.Job) (bool, error)
func (*UploadProvider) DispatchJob ¶
func (c *UploadProvider) DispatchJob(job *database.Job) error
DispatchJob sets the status of the upload job as delivered so that a call to check the job status uploads it to the cloud.
func (*UploadProvider) GetName ¶
func (c *UploadProvider) GetName() string
GetName returns the name of the upload provider - GCP.
func (*UploadProvider) GetProviderJob ¶
func (c *UploadProvider) GetProviderJob(job *database.Job) (*database.ProviderJob, error)
GetProviderJob returns the provider's job parameters.