我正在尝试创建一个需要此功能的Web应用程序:
假设我有.mp3文件,我想选择/上传此文件,然后从0:15到0:30(示例)创建一个新文件,然后保存为新的.mp3 /。 WAV。
因为它应该放在网上,在PHP中更受欢迎,但是我非常怀疑它是否可能,Java(Applets)或C#(ASP.NET)是可以接受的,并且受到高度赞赏。
提前致谢。
答案 0 :(得分:5)
执行此操作的最佳方法是使用FFMPEG。有一个PHP extension for it,但我一般认为用exec()调用它是最简单的。
ffmpeg -ss 00:00:15 -t 15 -i yourfile.mp3 -acodec copy outputfile.mp3
此处有更多信息:http://www.catswhocode.com/blog/19-ffmpeg-commands-for-all-needs
答案 1 :(得分:4)
如果您想在Java中使用,可以使用JAudio中的AudioSamples类。
// read the file into an AudioSamples object
AudioSamples as = new AudioSamples(new File("originalFile.mp3"),"",false);
// get the audio from 15 to 30 seconds
double[][] samples = as.getSamplesChannelSegregated(15.0, 30.0);
// discard the rest of the samples
as.setSamples(samples);
// write the samples to a .wav file
as.saveAudio(new File("newAudioFileName.wav"), true, AudioFileFormat.Type.WAVE, false);