Skip to content

Commit 2070c99

Browse files
committed
fix: do not spam frontend with each chunk arrival
Signed-off-by: bigcat88 <bigcat88@icloud.com>
1 parent 06c108c commit 2070c99

1 file changed

Lines changed: 12 additions & 8 deletions

File tree

comfy_api_nodes/nodes_sonilo.py

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,7 @@ async def _stream_sonilo_music(
180180

181181
node_id = get_node_id(cls)
182182
start_ts = time.monotonic()
183+
last_chunk_status_ts = 0.0
183184
audio_streams: dict[int, list[bytes]] = {}
184185
title: str | None = None
185186

@@ -242,14 +243,17 @@ async def _stream_sonilo_music(
242243
audio_streams[stream_idx] = []
243244
audio_streams[stream_idx].append(chunk_data)
244245

245-
total_chunks = sum(len(chunks) for chunks in audio_streams.values())
246-
elapsed = int(time.monotonic() - start_ts)
247-
status_lines = ["Status: Receiving audio"]
248-
if title:
249-
status_lines.append(f"Title: {title}")
250-
status_lines.append(f"Chunks received: {total_chunks}")
251-
status_lines.append(f"Time elapsed: {elapsed}s")
252-
PromptServer.instance.send_progress_text("\n".join(status_lines), node_id)
246+
now = time.monotonic()
247+
if now - last_chunk_status_ts >= 1.0:
248+
total_chunks = sum(len(chunks) for chunks in audio_streams.values())
249+
elapsed = int(now - start_ts)
250+
status_lines = ["Status: Receiving audio"]
251+
if title:
252+
status_lines.append(f"Title: {title}")
253+
status_lines.append(f"Chunks received: {total_chunks}")
254+
status_lines.append(f"Time elapsed: {elapsed}s")
255+
PromptServer.instance.send_progress_text("\n".join(status_lines), node_id)
256+
last_chunk_status_ts = now
253257
elif evt_type == "complete":
254258
break
255259

0 commit comments

Comments
 (0)