AydinAdn/MediaToolkit

Does this support Linux?

Opened this issue · 4 comments

Hi,

Does this support linux?, I try to run it on AWS EC2, (Centos 7), but I got the following:

I am pretty sure the directory already had 777 and root access

===========
2019-09-14 09:20:23.712 +07:00 [ERR] FFMpeg.GetVideoThumbnailAsync: System.ComponentModel.Win32Exception (13): Permission denied
at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Boolean setUser, UInt32 userId, UInt32 groupId, Int32& lpChildPid, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd, Boolean shouldThrow)
at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at MediaToolkit.Engine.StartFFmpegProcess(EngineParameters engineParameters)
at MediaToolkit.Engine.FFmpegEngine(EngineParameters engineParameters)
at PrimeBiometry.Models.FFMpeg.GetVideoThumbnailAsync() in
~
~
~
~

yeah I am seeing the same thing.
I am using a bionic docker container.

Honest Advice: Use this fork for Linux - https://github.com/mtebenev/MediaToolkit.NetCore

You are able to specify custom path to ffmpeg (have to be installed, ofc).
app.config file should be created in the project root, having content below:

<?xml version="1.0" encoding="utf-8"?>

<configuration>
    <appSettings>
        <add key="mediaToolkit.ffmpeg.path" value="/usr/bin/ffmpeg"/>
    </appSettings>
</configuration>

you need install ffmpeg on linux

yum install ffmpeg -y

C# code like this :

            var engine = new MediaToolkit.Engine();
            if (!isWindows)
            {
                engine = new MediaToolkit.Engine("/usr/bin/ffmpeg");
            }