telestream-cloud-go-sdk

module
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

README

Telestream Cloud API client

Getting Started

Obtain address for TCS api

In order to use TCS api client first you need to get ApiKey. Login to website, go to Flip service and open API Access tab. You account will be identified by unique Api Key, if it is unavailable click Reset button.

Installation
go get github.com/Telestream/telestream-cloud-go-sdk/...
Usage

This example show uploading media file to flip service. If you want to use other service refer to services.

package main

import (
    "fmt"
    "os"

    "github.com/Telestream/telestream-cloud-go-sdk/flip"
    "github.com/Telestream/telestream-cloud-go-sdk/flip/uploader"
)

func main() {
    api_key := "tcs_78fecxxf034"
    factory := "ta0180de394aec03412x840ca8304"
    profiles := "h264"


    config := flip.NewConfiguration()
    client := flip.NewAPIClient(config)
    ctx := context.WithValue(context.Background(), flip.ContextAPIKey, flip.APIKey{Key: key})

    upload, err := uploader.New(client.FlipApi, factory)
    if err != nil {
        panic(err)
    }

    file, err := os.Open("video.mp4")
    if err != nil {
        panic(err)
    }

    fileInfo, err := file.Stat()
    if err != nil {
        panic(err)
    }

    extraFile, err := os.Open("video.scc")
    if err != nil {
        panic(err)
    }

    extraFileInfo, err := extraFile.Stat()
    if err != nil {
        panic(err)
    }

    extraFiles := &uploader.ExtraFilesInfo{
        {
            Tag: "subtitles",
            Files: []uploader.ExtraFileItem{
                {
                    Name: extraFileInfo.Name(),
                    File: extraFile,
                    Size: extraFileInfo.Size(),
                },
            },
        },
    }

    err = upload.Upload(ctx, file, fileInfo.Name(), fileInfo.Size(), profiles, extraFiles)
    if err != nil {
        panic(err)
    }

    fmt.Printf("Created new video %s\n", upload.MediaID)
}

Services

Api client is divided into parts corresponding to services provided. Currently supported services include:

  • Flip - high-volume media transcoding to multiple formats
  • Timed Text Speech - automated captions and subtitles creation
  • Quality Control - automated quality control for file base media

Directories

Path Synopsis
qc
tts

Jump to

Keyboard shortcuts

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