diff --git a/core/media_streamer.go b/core/media_streamer.go index 7c38d6dd8..4e6ed3b7b 100644 --- a/core/media_streamer.go +++ b/core/media_streamer.go @@ -24,14 +24,14 @@ type MediaStreamer interface { type TranscodingCache cache.FileCache -func NewMediaStreamer(ds model.DataStore, ffm transcoder.Transcoder, cache TranscodingCache) MediaStreamer { - return &mediaStreamer{ds: ds, ffm: ffm, cache: cache} +func NewMediaStreamer(ds model.DataStore, t transcoder.Transcoder, cache TranscodingCache) MediaStreamer { + return &mediaStreamer{ds: ds, transcoder: t, cache: cache} } type mediaStreamer struct { - ds model.DataStore - ffm transcoder.Transcoder - cache cache.FileCache + ds model.DataStore + transcoder transcoder.Transcoder + cache cache.FileCache } type streamJob struct { @@ -182,7 +182,7 @@ func GetTranscodingCache() TranscodingCache { log.Error(ctx, "Error loading transcoding command", "format", job.format, err) return nil, os.ErrInvalid } - out, err := job.ms.ffm.Start(ctx, t.Command, job.mf.Path, job.bitRate) + out, err := job.ms.transcoder.Start(ctx, t.Command, job.mf.Path, job.bitRate) if err != nil { log.Error(ctx, "Error starting transcoder", "id", job.mf.ID, err) return nil, os.ErrInvalid diff --git a/core/transcoder/ffmpeg.go b/core/transcoder/transcoder.go similarity index 74% rename from core/transcoder/ffmpeg.go rename to core/transcoder/transcoder.go index b3ff0aad9..576026061 100644 --- a/core/transcoder/ffmpeg.go +++ b/core/transcoder/transcoder.go @@ -16,19 +16,15 @@ type Transcoder interface { } func New() Transcoder { - _, err := exec.LookPath("ffmpeg") - if err != nil { - log.Error("Unable to find ffmpeg", err) - } - return &ffmpeg{} + return &externalTranscoder{} } -type ffmpeg struct{} +type externalTranscoder struct{} -func (ff *ffmpeg) Start(ctx context.Context, command, path string, maxBitRate int) (f io.ReadCloser, err error) { +func (e *externalTranscoder) Start(ctx context.Context, command, path string, maxBitRate int) (f io.ReadCloser, err error) { args := createTranscodeCommand(command, path, maxBitRate) - log.Trace(ctx, "Executing ffmpeg command", "cmd", args) + log.Trace(ctx, "Executing transcoding command", "cmd", args) cmd := exec.Command(args[0], args[1:]...) // #nosec cmd.Stderr = os.Stderr if f, err = cmd.StdoutPipe(); err != nil { diff --git a/core/transcoder/ffmpeg_test.go b/core/transcoder/transcoder_test.go similarity index 100% rename from core/transcoder/ffmpeg_test.go rename to core/transcoder/transcoder_test.go