commit 06/10/2025

This commit is contained in:
2025-10-06 13:50:00 +07:00
parent cfb38556b5
commit 611745439f
7 changed files with 190 additions and 42 deletions

View File

@@ -580,7 +580,7 @@ class MainExtension01 {
).toString()
audioPlayer.WavWriter(
listafi,
targetfile
targetfile, true,
) { success, message ->
db.Add_Log("AAS", message)
if (success) {
@@ -662,11 +662,8 @@ class MainExtension01 {
val zz = qa.BroadcastZones.split(";")
if (AllBroadcastZonesValid(zz)) {
println("All broadcast zones valid")
val ips = BroadcastZones_to_SoundChannel_IP(zz)
println("Broadcast zones $zz converted to SoundChannel IPs: $ips")
if (AllStreamerOutputIdle(ips)) {
println("All broadcast zones idle")
if (qa.Type == "SOUNDBANK") {
val variables = Get_Soundbank_Data(qa.SB_TAGS)
val languages = qa.Language.split(";")
@@ -708,17 +705,14 @@ class MainExtension01 {
val listafi = mutableListOf<AudioFileInfo>()
mblist.forEach { mb ->
println("Getting soundbank files for messagebank id ${mb.ANN_ID} voice=${mb.Voice_Type} lang=${mb.Language}, variables=$variables")
Get_Soundbank_Files(mb, variables ?: emptyMap(), {
listfile ->
println("Got soundbank files: $listfile")
listfile.forEach { filenya ->
val afi = audioPlayer.LoadAudioFile(filenya)
if (afi.isValid()) {
listafi.add(afi)
}
}
println("Loaded AudioFileInfo list: $listafi")
},
{
err ->
@@ -728,27 +722,30 @@ class MainExtension01 {
}
if (listafi.isNotEmpty()){
db.queuetableDB.DeleteByIndex(qa.index.toInt())
val targetfile = SoundbankResult_directory.resolve(Make_WAV_FileName("Soundbank","")).toString()
println("Writing to target WAV file: $targetfile")
audioPlayer.WavWriter(listafi, targetfile
audioPlayer.WavWriter(listafi, targetfile, true,
) { success, message ->
if (success) {
// file siap broadcast
println("Successfully wrote WAV file: $targetfile")
val targetafi = audioPlayer.LoadAudioFile(targetfile)
if (targetafi.isValid()) {
zz.forEach { z1 ->
StreamerOutputs.values.find { it.channel == z1 }
?.SendData(
targetafi.bytes,
{ db.Add_Log("AAS", it) },
{ db.Add_Log("AAS", it) })
ips.forEach { ip ->
StreamerOutputs[ip].let{ sc ->
sc?.SendData(targetafi.bytes,
{ db.Add_Log("AAS", it) },
{ db.Add_Log("AAS", it) } )
}
}
val logmsg =
"Broadcast started SOUNDBANK message with generated file '$targetfile' to zones: ${qa.BroadcastZones}"
Logger.info { logmsg }
db.Add_Log("AAS", logmsg)
db.queuetableDB.DeleteByIndex(qa.index.toInt())
}
} else {
@@ -783,7 +780,7 @@ class MainExtension01 {
}
}
val targetfile = SoundbankResult_directory.resolve(Make_WAV_FileName("Timer","")).toString()
audioPlayer.WavWriter(listafi, targetfile
audioPlayer.WavWriter(listafi, targetfile, true,
) { success, message ->
if (success) {
// file siap broadcast