This commit is contained in:
zedoCN 2024-08-31 04:20:35 +08:00
parent aad1681994
commit fbf7e998b3
2 changed files with 12 additions and 3 deletions

View File

@ -4,9 +4,7 @@ import kotlinx.coroutines.runBlocking
import java.io.IOException
import java.io.InputStream
import java.io.OutputStream
import java.net.InetSocketAddress
import java.net.Socket
import java.util.Arrays
import javax.sound.sampled.AudioFormat
import javax.sound.sampled.AudioSystem
import kotlin.system.measureTimeMillis
@ -64,7 +62,13 @@ fun mainClient() = runBlocking {
launch(Dispatchers.IO) {
while (true) {
try {
if (`in`!!.available() > bufferIn.size * 2) {
`in`!!.skip(`in`!!.available().toLong())
continue
}
`in`!!.read(bufferIn, 0, bufferIn.size)
sourceDataLine.write(bufferIn, 0, bufferIn.size)
} catch (e: IOException) {
e.printStackTrace()

View File

@ -17,7 +17,6 @@ fun main() = runBlocking {
for (client in clientAudios) {
if (!client.isConnected) {
clientAudios.remove(client)
println("现在是: $clientAudios")
continue
}
client.read()
@ -64,6 +63,12 @@ class ClientAudio(var socket: Socket) {
fun read() {
try {
if (`in`!!.available() > bufferIn.size * 2) {
`in`!!.skip(`in`!!.available().toLong())
Arrays.fill(mixSample, 0f)
return
}
`in`.read(buffer)
AudioConvert.convertShortByteToFloat(buffer, sample)
Arrays.fill(mixSample, 0f)