Omarkhaled99 commited on
Commit
bf61cc2
·
verified ·
1 Parent(s): c324a67

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +50 -0
app.py ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import pandas as pd
2
+ import gradio as gr
3
+
4
+ # Load Parquet data
5
+ df = pd.read_parquet('audio_and_text.parquet')
6
+
7
+ # Define function to fetch audio and text by number or index
8
+ def fetch_record(index):
9
+ index = int(index)
10
+ if 0 <= index < len(df):
11
+ record = df.iloc[index]
12
+ number = record['number']
13
+ diacritics_audio = (record['with_diacritics_audio'], "audio.wav")
14
+ no_diacritics_audio = (record['no_diacritics_audio'], "audio.wav")
15
+ diacritics_text = record['diacritics_text']
16
+ no_diacritics_text = record['no_diacritics_text']
17
+
18
+ return (f"Record Number: {number}",
19
+ diacritics_audio, diacritics_text,
20
+ no_diacritics_audio, no_diacritics_text)
21
+ else:
22
+ return ("Index out of range.", None, "", None, "")
23
+
24
+ # Gradio UI setup
25
+ with gr.Blocks() as demo:
26
+ gr.Markdown("## 📚 Arabic Audio & Text Browser")
27
+
28
+ index_input = gr.Number(label="Enter Record Index", value=0, precision=0)
29
+
30
+ btn_fetch = gr.Button("Fetch Record")
31
+
32
+ record_label = gr.Label(label="Record Info")
33
+
34
+ with gr.Row():
35
+ with gr.Column():
36
+ diacritics_audio_player = gr.Audio(label="Audio (With Diacritics)")
37
+ diacritics_text_output = gr.Textbox(label="Text (With Diacritics)", lines=5)
38
+
39
+ with gr.Column():
40
+ no_diacritics_audio_player = gr.Audio(label="Audio (No Diacritics)")
41
+ no_diacritics_text_output = gr.Textbox(label="Text (No Diacritics)", lines=5)
42
+
43
+ btn_fetch.click(fn=fetch_record,
44
+ inputs=index_input,
45
+ outputs=[record_label,
46
+ diacritics_audio_player, diacritics_text_output,
47
+ no_diacritics_audio_player, no_diacritics_text_output])
48
+
49
+ # Launch the app
50
+ demo.launch()