104 lines
3.7 KiB
Java
104 lines
3.7 KiB
Java
package com.ruoyi.system.utils;
|
||
|
||
import java.io.File;
|
||
import java.util.Arrays;
|
||
import java.util.List;
|
||
|
||
/**
|
||
* FFmpeg Opus转MP3测试工具
|
||
*
|
||
* @author ruoyi
|
||
*/
|
||
public class FFmpegOpusTest {
|
||
|
||
public static void main(String[] args) {
|
||
System.out.println("=== FFmpeg Opus转MP3测试 ===");
|
||
|
||
// 测试FFmpeg是否可用
|
||
boolean isAvailable = FFmpegUtilsSimple.isFFmpegAvailable();
|
||
System.out.println("FFmpeg是否可用: " + isAvailable);
|
||
|
||
if (!isAvailable) {
|
||
System.out.println("FFmpeg不可用,测试终止");
|
||
return;
|
||
}
|
||
|
||
// 获取FFmpeg版本
|
||
String version = FFmpegUtilsSimple.getFFmpegVersion();
|
||
System.out.println("FFmpeg版本: " + version);
|
||
|
||
// 测试音频格式检测
|
||
System.out.println("\n=== 音频格式检测测试 ===");
|
||
testAudioFormatDetection();
|
||
|
||
// 测试合并功能
|
||
System.out.println("\n=== 合并功能测试 ===");
|
||
testMergeFunction();
|
||
|
||
System.out.println("\n=== 测试完成 ===");
|
||
}
|
||
|
||
/**
|
||
* 测试音频格式检测
|
||
*/
|
||
private static void testAudioFormatDetection() {
|
||
// 这里可以添加一些测试文件路径
|
||
String[] testFiles = {
|
||
"D:/ruoyi/uploadPath/upload/sound/2329/2025-08-02/wDoBh4bMpIXZcb9cc77fe118c54e5cba9ff87ec3ba12.durationTime=9472_20250802155052A017.mp3"
|
||
};
|
||
|
||
for (String filePath : testFiles) {
|
||
File file = new File(filePath);
|
||
if (file.exists()) {
|
||
String format = FFmpegUtilsSimple.detectAudioFormat(filePath);
|
||
System.out.println("文件: " + filePath);
|
||
System.out.println(" 存在: " + file.exists());
|
||
System.out.println(" 大小: " + file.length() + " bytes");
|
||
System.out.println(" 格式: " + format);
|
||
System.out.println();
|
||
} else {
|
||
System.out.println("文件不存在: " + filePath);
|
||
}
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 测试合并功能
|
||
*/
|
||
private static void testMergeFunction() {
|
||
// 使用实际的音频文件路径
|
||
List<String> inputFiles = Arrays.asList(
|
||
"D:/ruoyi/uploadPath/upload/sound/2329/2025-08-02/wDoBh4bMpIXZcb9cc77fe118c54e5cba9ff87ec3ba12.durationTime=9472_20250802155052A017.mp3"
|
||
);
|
||
|
||
String outputFile = "C:/Users/user/AppData/Local/Temp/test_merged_output.mp3";
|
||
|
||
System.out.println("输入文件:");
|
||
for (String file : inputFiles) {
|
||
File f = new File(file);
|
||
String format = FFmpegUtilsSimple.detectAudioFormat(file);
|
||
System.out.println(" " + file);
|
||
System.out.println(" 存在: " + f.exists());
|
||
System.out.println(" 大小: " + f.length() + " bytes");
|
||
System.out.println(" 格式: " + format);
|
||
}
|
||
|
||
System.out.println("输出文件: " + outputFile);
|
||
|
||
// 测试合并功能
|
||
System.out.println("开始测试合并功能...");
|
||
boolean success = FFmpegUtilsSimple.mergeAudioFiles(inputFiles, outputFile);
|
||
|
||
System.out.println("合并结果: " + (success ? "成功" : "失败"));
|
||
|
||
// 检查输出文件
|
||
File output = new File(outputFile);
|
||
if (output.exists()) {
|
||
System.out.println("输出文件存在,大小: " + output.length() + " bytes");
|
||
String outputFormat = FFmpegUtilsSimple.detectAudioFormat(outputFile);
|
||
System.out.println("输出文件格式: " + outputFormat);
|
||
} else {
|
||
System.out.println("输出文件不存在");
|
||
}
|
||
}
|
||
} |