繁体   English   中英

FFMpegConverter 实例不是从 NReco.VideoConverter.dll 版本 1.1.2 创建的

[英]FFMpegConverter instance is not created from NReco.VideoConverter.dll version 1.1.2

我试图在我的 .NET CORE 2.0 中使用 NReco.VideoConverter.dll 程序集,但未创建 FFMpegConverter 实例。 我越来越低于异常。 你能看看这个并指导我如何使用 NReco.VideoConverter.dll 制作 FFMpegConverter 的实例,它的版本是 1.1.2。

system.TypeLoadException 发生 HResult=0x80131522 消息=无法从程序集“System.Web,版本=4.0.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a”加载类型“System.Web.HttpContext”。 Source=无法评估异常源

从 Nuget 包管理器控制台Uninstall-Package NReco.VideoConverter 然后:

Install-Package NReco.VideoConverter.LT -Version 1.1.2

正如 Hossein Shahabi 所提到的,对于 .NET Core 应用程序,需要安装NReco.VideoConverter.LT版本,但是,请注意应用程序类型,因为正如其官方文档所述,存在一些技术限制:

VideoConverter 在单独的进程(使用 System.Diagnostics.Process)中调用 FFMpeg,您的项目环境/平台应该允许这样做。

在以下情况下,这可能是不可能的:

  • 部分信任环境:大多数共享的 ASP.NET 主机
  • “共享”计划中的 Azure 应用。 Azure WebJobs / 基于 VM 的 Azure 应用程序(计划“基本”或更高版本)可以使用 VideoConverter 自动运行任务。
  • UWP 应用——它们只是没有 VideoConverter 使用的 System.Diagnostics.Process API。 您可以尝试 Microsoft 的适用于 Win10/WinPhone8.1 应用程序的 FFMpeg 互操作库(在这种情况下,FFMpeg GPL 编解码器不适用于非 GPL 应用程序)。

VideoConverter 适用于 Azure VM 实例(Web 角色、工作角色、Azure WebJobs)。

Linux/MacOS + 单声道

LT 版本 (NReco.VideoConverter.LT.dll) 允许您自己部署 ffmpeg 并在 Linux 或 MacOS 等非 Windows 环境中使用 VideoConverter。

.NET 核心

NReco.VideoConverter.LT nuget 包包含一个用于 netstandard2.0 目标的构建,该目标与 .NET Core 2.x 和 3.x 应用程序兼容。 不要忘记您应该使用 .NET Core 应用程序为您的目标平台(Windows、Linux 或 OS X)部署 ffmpeg 二进制文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM