Skip to content

Latest commit

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

High performance .NET FFmpeg Restful Server

Information

This provides a restful server to create and manage transcoding jobs, this more or less wraps FFmpeg to provide a high performance transcoding server.

Usage

App.config

 <appSettings>
<addkey="bindhost"value="*"/>
<addkey="bindport"value="5121"/>
<addkey="maxtasks"value="3"/> <!-- Typical one less than the number of cpus/cores you have -->
<addkey="file-root"value="/mnt/media"/>
<addkey="video-destination"value="/videos"/>
<addkey="thumb-destination"value="/thumbs"/>
<addkey="serve-url"value="https://transcoded.myserver.com"/>
<addkey="mode"value="move"/>
<addkey="statsfile"value="/opt/ffrest/ffrest.stats"/>
<addkey="workingdir"value="/var/ffrest/working"/>
<addkey="ffmpeg-location"value="/usr/local/bin/ffmpeg"/>
<addkey="ffprobe-location"value="/usr/local/bin/ffprobe"/>
</appSettings>

Creating Jobs

 POST server:5121 /jobs
jobid=myJob&taskid=task1&tag=My description&video=https://myserver.com/myfile.mp4&preset=x264&callbackUrl=https://myserver.com/transcodecomplete.php&extension=mp4

Jobs Status

 GET server:5121 /jobs

FAQ

Q: Why doesn't it do X Y Z? Why isn't X feature supported? I found a bug!

A: Create an issue and I will look into it for sure!

Q: If you do X you get can get a Y% performance increase!

A: Not really a questions is it? Also great! Submit a pull request!

About

Restful FFmpeg Video Transcoding Server

Resources

Stars

1 star

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages