siddhartharya commited on
Commit
acded7a
·
verified ·
1 Parent(s): 78317d1

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -9
app.py CHANGED
@@ -1,7 +1,6 @@
1
  import gradio as gr
2
  from utils import generate_script, generate_audio, truncate_text, extract_text_from_url
3
  from prompts import SYSTEM_PROMPT
4
- from pydub import AudioSegment
5
  import pypdf
6
  import os
7
  import tempfile
@@ -30,20 +29,21 @@ def generate_podcast(file, url, tone, length):
30
 
31
  script = generate_script(SYSTEM_PROMPT, truncated_text, tone, length)
32
 
33
- audio_segments = []
34
  transcript = ""
35
  for item in script.dialogue:
36
  audio_file = generate_audio(item.text, item.speaker)
37
- audio_segment = AudioSegment.from_wav(audio_file)
38
- audio_segments.append(audio_segment)
39
  transcript += f"**{item.speaker}**: {item.text}\n\n"
40
- os.remove(audio_file) # Clean up temporary audio file
41
 
42
- combined_audio = sum(audio_segments)
 
 
 
 
 
43
 
44
- with tempfile.NamedTemporaryFile(delete=False, suffix=".wav") as temp_audio:
45
- combined_audio.export(temp_audio.name, format="wav")
46
- return temp_audio.name, transcript
47
 
48
  except Exception as e:
49
  return None, f"An error occurred: {str(e)}"
 
1
  import gradio as gr
2
  from utils import generate_script, generate_audio, truncate_text, extract_text_from_url
3
  from prompts import SYSTEM_PROMPT
 
4
  import pypdf
5
  import os
6
  import tempfile
 
29
 
30
  script = generate_script(SYSTEM_PROMPT, truncated_text, tone, length)
31
 
32
+ audio_files = []
33
  transcript = ""
34
  for item in script.dialogue:
35
  audio_file = generate_audio(item.text, item.speaker)
36
+ audio_files.append(audio_file)
 
37
  transcript += f"**{item.speaker}**: {item.text}\n\n"
 
38
 
39
+ # Combine audio files
40
+ with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as combined_audio:
41
+ for audio_file in audio_files:
42
+ with open(audio_file, 'rb') as f:
43
+ combined_audio.write(f.read())
44
+ os.remove(audio_file) # Clean up individual audio files
45
 
46
+ return combined_audio.name, transcript
 
 
47
 
48
  except Exception as e:
49
  return None, f"An error occurred: {str(e)}"