NReco.VideoConverter 1.2.0

The ID prefix of this package has been reserved for one of the owners of this package by Prefix Reserved
.NET Standard 2.0 .NET Framework 4.5
dotnet add package NReco.VideoConverter --version 1.2.0
NuGet\Install-Package NReco.VideoConverter -Version 1.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NReco.VideoConverter" Version="1.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add NReco.VideoConverter --version 1.2.0
#r "nuget: NReco.VideoConverter, 1.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install NReco.VideoConverter as a Cake Addin
#addin nuget:?package=NReco.VideoConverter&version=1.2.0

// Install NReco.VideoConverter as a Cake Tool
#tool nuget:?package=NReco.VideoConverter&version=1.2.0

Video converter component for C#/.NET (wrapper for ffmpeg command line tool). Can convert video/audio files, transcode live streams, extract video thumbnails, apply watermarks to video, screen capture etc - everything that is possible with ffmpeg from the command line. Supports .NET streams for input/output (encode/decode without tmp files).

NReco.VideoConverter nuget can be used for free in non-SaaS apps that have only one single-server production deployment. This nuget package includes ffmpeg.exe (it is extracted on the first use automatically - you don't need to deploy ffmpeg separately) and therefore can be used only on Windows. For cross-platform deployments NReco.VideoConverter.LT nuget should be used instead.

How to use:

var ffmpeg = new NReco.VideoConverter.FFMpegConverter();
ffmpeg.ConvertMedia("input.avi",null,"output.mp4",null,new ConvertSettings());

More info (VideoConverter online demo, examples):

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard2.0 netstandard2.1
.NET Framework net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48 net481
MonoAndroid monoandroid
MonoMac monomac
MonoTouch monotouch
Tizen tizen40 tizen60
Xamarin.iOS xamarinios
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 4.5

    • No dependencies.
  • .NETStandard 2.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on NReco.VideoConverter:

Repository Stars
A C# wrapper of arcsoft's face recogization library.
Version Downloads Last updated
1.2.0 5,611 1/18/2023
1.1.4 143,985 1/23/2020
1.1.3 189,991 6/12/2018
1.1.2 136,531 1/14/2017
1.1.1 74,343 7/4/2016
1.1.0 11,418 4/19/2016
1.0.8 41,239 9/25/2015
1.0.7 12,067 8/7/2015
1.0.6 6,051 5/14/2015
1.0.5 12,148 1/21/2015

More info (online demo, usage examples):

v.1.2.0 changes:
- added netstandard2.0 build: now NReco.VideoConverter nuget (includes ffmpeg.exe) can be used in NET6/NET7/.NET Core apps with free offering! (Windows deployments only)
- ffmpeg.exe updated to the latest stable release 5.1.2 (x64 "essentials" build from
- now relative paths (both for input/output) are resolved in respect to the current working directory, not to ffmpeg location (FFMpegToolPath)
- fixed an issue when FFMpegException didn't reflect the last error line from ffmpeg console log output

v.1.1.4 changes:
- FFMpeg updated to v.4.2.1
- added GetVideoThumbnail overloads that accept ConvertSettings (to pass any custom ffmpeg options)
- fixed (rare) InvalidOperationException issue related to cleanup of FFMpeg Process
- fixed issue with FFMpegInput.Format in ConvertMedia overload that accepts FFMpegInput[]

v.1.1.3 changes:
- FFMpeg updated to v.4.0 (note: Win XP/Server 2003 no longer supported)

v.1.1.2 changes:
- FFMpeg updated to v.3.2.2
- ConvertLiveMediaTask.Stop uses only 'q' command if possible (CTRL+C method not used because of instability)
- Fixed IOException issue thrown by ConvertLiveMedia
- added FFMpegConverter.LogLevel property
- added FFMpegConverter.ExtractFFmpeg() method (forces extraction of ffmpeg binaries)

v.1.1.1 changes:
- FFMpegConverter.Stop switched from sending CTRL+C to ffmpeg console to 'q' command written to stdin: this approach is more stable and compatible with .NET Core
- Fixed issue with NullReferenceException from Process.WaitForExit (thrown when Stop method is called from another thread)
- added NReco.VideoConverter.LT build for NET Standards 1.5 (can be used from .NET Core apps)