【发布时间】:2016-11-22 12:42:08
【问题描述】:
我有一个 .vox 格式的音频文件,我想通过 java 脚本将其转换为 .mp3 格式结束代码,但我不想通过java脚本来转换文件。请帮助我。
【问题讨论】:
-
你弄清楚你的java代码在做什么,你看看你是否可以把它映射到javascript。但可能它正在调用一些 library ,这将无法正常工作。所以你会寻找可以为你做这件事的 JS 库。
标签: java
我有一个 .vox 格式的音频文件,我想通过 java 脚本将其转换为 .mp3 格式结束代码,但我不想通过java脚本来转换文件。请帮助我。
【问题讨论】:
标签: java
使用 NAudio.Wave 使用 NAudio 下载 Naudio dll(免费)
string convertedFileName = string.Format("{0}{1}", System.IO.Path.GetTempPath(), System.IO.Path.GetFileName(path).Replace(".vox", ".mp3"));
using (FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read))
{
using (var reader = new RawSourceWaveStream(fileStream, Mp3WaveFormat.CreateALawFormat(8000, 1)))
{
using (WaveStream convertedStream = WaveFormatConversionStream.CreatePcmStream(reader))
{
WaveFileWriter.CreateWaveFile(convertedFileName, convertedStream);
}
}
}
return File(convertedFileName, System.Net.Mime.MediaTypeNames.Application.Octet, System.IO.Path.GetFileName(convertedFileName));
【讨论】:
如果您的代码已经使用 Java 语言并定义了类,则可以使用http://jdk6.java.net/plugin2/liveconnect/ LiveConnect,正如这篇文章指出的那样:
calling java methods in javascript code
正如帖子指出的,这是一个例子:
Java 代码:
public class MethodInvocation extends Applet {
public void noArgMethod() { ... }
public void someMethod(String arg) { ... }
public void someMethod(int arg) { ... }
public int methodReturningInt() { return 5; }
public String methodReturningString() { return "Hello"; }
public OtherClass methodReturningObject() { return new OtherClass(); }
}
public class OtherClass {
public void anotherMethod();
}
网页和 JavaScript 代码:
<applet id="app"
archive="examples.jar"
code="MethodInvocation" ...>
</applet>
<script language="javascript">
app.noArgMethod();
app.someMethod("Hello");
app.someMethod(5);
var five = app.methodReturningInt();
var hello = app.methodReturningString();
app.methodReturningObject().anotherMethod();
</script>
希望对你有帮助:)
【讨论】: