Files
transcriber/internal/contract/contract.go

26 lines
579 B
Go

package contract
import (
"io"
"git.vakhrushev.me/av/transcriber/internal/entity"
)
type AudioInfo struct {
Seconds int // Длина аудиофайла в секундах
}
type AudioMetaViewer interface {
GetInfo(src string) (*AudioInfo, error)
}
type AudioFileConverter interface {
Convert(src, dest string) error
}
type AudioRecognizer interface {
Recognize(file io.Reader, fileName string) (operationID string, err error)
GetRecognitionText(operationID string) (string, error)
CheckRecognitionStatus(operationID string) (*entity.RecognitionResult, error)
}