我正在考虑编写一个Java小程序,它将收集前100首左右的歌曲,在WhoSampled.com上找到他们的样本(歌曲中出现的音乐),然后从YouTube播放这些样本。
我的问题是播放部分,假设我有网址。在Java中处理这个问题的最佳方法是什么,你认为翻录音频和播放音频是最好的,还是应该尝试控制一个有感知的YouTube播放器。
我倾向于提取音频,而且:thread提到了提取音频的方法,但是代码:
wget http://www.youtube.com/get_video.php?video_id=...
ffmpeg -i - audio.mp3
不是用Java编写的。如果可能的话,我如何将其转换为在Java程序中运行?或者有人知道Java的好方法
感谢您的建议。
答案 0 :(得分:0)
您可以像这样https://github.com/bramp/ffmpeg-cli-wrapper/
使用FFMPEG Java包装器可以在自述文件中找到一个示例。将MP4转换为mp3应该是这样的:
FFmpeg ffmpeg = new FFmpeg("/path/to/ffmpeg");
FFprobe ffprobe = new FFprobe("/path/to/ffprobe");
FFmpegBuilder builder = new FFmpegBuilder()
.setInput("input.mp4") // Filename, or a FFmpegProbeResult
.overrideOutputFiles(true) // Override the output if it exists
.addOutput("output.mp3") // Filename for the destination
.setFormat("mp3") // Format is inferred from filename, or can be set
.setAudioCodec("aac") // using the aac codec
.setAudioSampleRate(48_000) // at 48KHz
.setAudioBitRate(32768) // at 32 kbit/s
.done();
FFmpegExecutor executor = new FFmpegExecutor(ffmpeg, ffprobe);
// Run a one-pass encode
executor.createJob(builder).run();