From ab10c6f7fc047707e75f7c79ce518b2f33fb9231 Mon Sep 17 00:00:00 2001 From: acgist <289547414@qq.com> Date: Wed, 13 Dec 2023 07:11:00 +0800 Subject: [PATCH] =?UTF-8?q?[*]=20=E6=97=A5=E5=B8=B8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acgist/taoyao/boot/utils/ErrorUtils.java | 2 +- .../java/com/acgist/taoyao/AudioMixerTest.java | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/taoyao-signal-server/taoyao-boot/src/main/java/com/acgist/taoyao/boot/utils/ErrorUtils.java b/taoyao-signal-server/taoyao-boot/src/main/java/com/acgist/taoyao/boot/utils/ErrorUtils.java index f83bd38..e5c7da1 100644 --- a/taoyao-signal-server/taoyao-boot/src/main/java/com/acgist/taoyao/boot/utils/ErrorUtils.java +++ b/taoyao-signal-server/taoyao-boot/src/main/java/com/acgist/taoyao/boot/utils/ErrorUtils.java @@ -280,7 +280,7 @@ public final class ErrorUtils { * @return 首个参数 */ private static final String getFirstParams(Object ... params) { - for (Object object : params) { + for (final Object object : params) { if(object != null) { return object.toString(); } diff --git a/taoyao-signal-server/taoyao-server/src/test/java/com/acgist/taoyao/AudioMixerTest.java b/taoyao-signal-server/taoyao-server/src/test/java/com/acgist/taoyao/AudioMixerTest.java index aa41ca1..ae78105 100644 --- a/taoyao-signal-server/taoyao-server/src/test/java/com/acgist/taoyao/AudioMixerTest.java +++ b/taoyao-signal-server/taoyao-server/src/test/java/com/acgist/taoyao/AudioMixerTest.java @@ -1,7 +1,9 @@ package com.acgist.taoyao; import java.io.File; +import java.io.FileOutputStream; import java.io.IOException; +import java.io.OutputStream; import java.nio.ByteBuffer; import java.nio.file.Files; import java.nio.file.Paths; @@ -50,4 +52,20 @@ public class AudioMixerTest { Files.write(Paths.get("C:\\Users\\acgis\\桌面\\3.pcm"), target); } + @Test + public void testStereoToMono() throws IOException { + final File file = new File("C:\\Users\\acgis\\桌面\\src.pcm"); + final File left = new File("C:\\Users\\acgis\\桌面\\left.pcm"); + final File right = new File("C:\\Users\\acgis\\桌面\\right.pcm"); + final byte[] bytes = Files.readAllBytes(file.toPath()); + final OutputStream leftOutput = new FileOutputStream(left); + final OutputStream rightOutput = new FileOutputStream(right); + for (int index = 0; index < bytes.length; index += 4) { + leftOutput.write( new byte[] {bytes[index], bytes[index + 1]}); + rightOutput.write(new byte[] {bytes[index + 2], bytes[index + 3]}); + } + leftOutput.close(); + rightOutput.close(); + } + }