![](/img/trans.png)
[英]Will the next MVC 6 be part of ASP.NET 4.6 or ASP.NET Core 1.0 or both?
[英]Load Unmanaged dll reference in ASP.NET MVC Core 1.0 (Aka) ASP.net 5 MVC 6
此問題與ASP.NET MVC WEP API和Naudio有關
我想要的是
當我使用此代碼時,我正在WPF應用程序中使用原型,wav文件轉換為mp3
var retMs = new MemoryStream();
using (var ms = new MemoryStream(File.ReadAllBytes("sound.wav")))
using (var rdr = new WaveFileReader(ms))
using (var wtr = new LameMP3FileWriter(retMs, rdr.WaveFormat, 128))
{
rdr.CopyTo(wtr);
}
return retMs.ToArray();
但是在api項目中使用此代碼時,出現了這樣的錯誤
無法加載DLL'libmp3lame.dll':找不到指定的模塊。
我知道libmp3lame是未管理的dll,在WPF項目中,我只是將dll復制到bin文件夾,並且一切正常,但是如何在Web API項目中實現這一目標,我的意思是asp.net 5項目
注意
上面的代碼在wpf項目中正常工作
另外現在我的API僅支持dotnetframwork,這意味着只有Windows 刪除了其他平台依賴項
更新:
在ASP.Net MVC創建問題回購
我參加聚會有點晚了,但我會分享給大家。 NAudio可以將WAVE轉換為MP3,而無需使用非托管DLL,從而避免了這個問題。 唯一的麻煩是它必須寫出到文件(然后可以讀回文件)。 假設您有一個MemoryStream,在其中讀取了所有字節(就像您一樣):
using (var wfr = new WaveFileReader(ms))
{
MediaFoundationApi.Startup();
MediaFoundationEncoder.EncodeToMp3(wfr, @"C:\Temp\test.mp3", 48000);
MediaFoundationApi.Shutdown();
}
在bin庫路徑中獲取到模塊的映射聽起來像是一個問題,請查看以下內容,可能會有所幫助-
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.