Files
streamctl/pkg/encoder/libav/safeencoder/input.go
2024-12-14 15:44:20 +00:00

36 lines
652 B
Go

package safeencoder
import (
"context"
"github.com/xaionaro-go/streamctl/pkg/encoder/libav/safeencoder/process"
)
type InputID = process.InputID
type InputConfig = process.InputConfig
type Input struct {
Process *Process
ID InputID
}
func (p *Process) NewInputFromURL(
ctx context.Context,
url string,
streamKey string,
cfg InputConfig,
) (*Input, error) {
inputID, err := p.Client.NewInputFromURL(ctx, url, streamKey, cfg)
if err != nil {
return nil, err
}
return &Input{
Process: p,
ID: inputID,
}, nil
}
func (input *Input) Close() error {
return input.Process.Client.CloseInput(context.Background(), input.ID)
}