aiplexdeveloper commited on
Commit
6cdbbf8
·
verified ·
1 Parent(s): d975c3f

Update handler.py

Browse files
Files changed (1) hide show
  1. handler.py +6 -16
handler.py CHANGED
@@ -15,33 +15,23 @@ class EndpointHandler():
15
  inputs = data.get("inputs", {})
16
  text = inputs.get("text")
17
  voice = inputs.get("voice")
18
-
19
  audio_segments = []
20
-
21
  generator = self.pipeline(text, voice)
 
 
22
  for i, (gs, ps, audio) in enumerate(generator):
23
- # Save temporarily just in case (optional if you skip saving to disk)
24
- filename = f"{i}.wav"
25
- sf.write(filename, audio, 24000)
26
  audio_segments.append(audio)
27
-
28
  # Concatenate all audio segments
29
  full_audio = torch.cat([torch.tensor(a) for a in audio_segments])
30
-
31
  # Write full audio to a binary buffer
32
  buffer = io.BytesIO()
33
  sf.write(buffer, full_audio.numpy(), 24000, format='WAV')
34
  buffer.seek(0)
35
-
36
- # Clean up temp files
37
- for i in range(len(audio_segments)):
38
- try:
39
- os.remove(f"{i}.wav")
40
- except FileNotFoundError:
41
- pass
42
-
43
  from flask import Response
44
- buffer.seek(0)
45
  return Response(
46
  buffer.read(),
47
  mimetype='audio/wav',
 
15
  inputs = data.get("inputs", {})
16
  text = inputs.get("text")
17
  voice = inputs.get("voice")
18
+
19
  audio_segments = []
 
20
  generator = self.pipeline(text, voice)
21
+
22
+ # Direct append without saving to disk
23
  for i, (gs, ps, audio) in enumerate(generator):
 
 
 
24
  audio_segments.append(audio)
25
+
26
  # Concatenate all audio segments
27
  full_audio = torch.cat([torch.tensor(a) for a in audio_segments])
28
+
29
  # Write full audio to a binary buffer
30
  buffer = io.BytesIO()
31
  sf.write(buffer, full_audio.numpy(), 24000, format='WAV')
32
  buffer.seek(0)
33
+
 
 
 
 
 
 
 
34
  from flask import Response
 
35
  return Response(
36
  buffer.read(),
37
  mimetype='audio/wav',