File size: 813 Bytes
6568e62
0dddfdb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bed109a
c764bfb
0dddfdb
 
e780472
0dddfdb
7917b4e
c764bfb
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import gradio as gr
import pdf2speech
from gtts import gTTS
from tempfile import NamedTemporaryFile
import os

def convert_pdf_to_speech(pdf_file):
    text = pdf2speech.extract_text_from_pdf(pdf_file.name)
    tts = gTTS(text=text, lang='en')
    audio_file = NamedTemporaryFile(suffix=".mp3", delete=False)
    tts.save(audio_file.name)
    audio_file.close()
    return audio_file.name

def pdf_to_speech(pdf_file):
    audio_file_path = convert_pdf_to_speech(pdf_file)
    return audio_file_path

def main():
    pdf_input = gr.inputs.File(label="Upload PDF", type="file")
    audio_output = gr.outputs.Audio(label="Generated Audio")

    iface = gr.Interface(fn=pdf_to_speech, inputs=pdf_input, outputs=audio_output, title="PDF to Speech Converter")
    iface.launch()

if __name__ == "__main__":
    main()