Skip to content

Telestream/telestream-cloud-go-sdk

Repository files navigation

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

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •