hanifekaptan commited on
Commit
8e8c518
·
verified ·
1 Parent(s): 6203e1c

Upload 3 files

Browse files
Files changed (3) hide show
  1. app.py +38 -0
  2. gtts_lang.csv +48 -0
  3. requirements.txt +3 -0
app.py ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from gtts import gTTS
2
+ import streamlit as st
3
+ import pandas as pd
4
+
5
+ # Load language data from CSV file
6
+ data = pd.read_csv("gtts_lang.csv")
7
+
8
+ st.title("Text to Speech")
9
+ text = st.text_area("Enter your text", placeholder="Enter your text here")
10
+
11
+ # Create a dropdown menu for language selection
12
+ language = st.selectbox("Select Language", data["Language"], index = 43)
13
+
14
+ # Create a dropdown menu for speed selection
15
+ speed = st.selectbox("Select Language", ["Fast", "Slow"], index=0)
16
+
17
+ if st.button("Convert"):
18
+ try:
19
+ # Determine if the speech should be slow
20
+ is_slow = False if speed == "Fast" else True
21
+
22
+ # Get the selected language code
23
+ lang = data[data["Language"] == language]["Lang"].values[0]
24
+
25
+ # Create a gTTS object with the provided text and language
26
+ tts = gTTS(text = text, lang = lang, slow = is_slow)
27
+
28
+ except Exception as e:
29
+ st.error("Dönüşüm hatası", e)
30
+
31
+ try:
32
+ tts.save("output.mp3")
33
+ # Provide a download button for the user to download the MP3 file
34
+ with open("output.mp3", "rb") as f:
35
+ download = st.download_button("Download", data=f, file_name="output.mp3", mime="audio/mpeg")
36
+
37
+ except Exception as e:
38
+ st.error("İndirme hatası", e)
gtts_lang.csv ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ID,Language,Lang
2
+ 1,Afrikaans (Afrikaans),af
3
+ 2,Albanian (Shqip),sq
4
+ 3,Azerbaijani (Azərbaycanca),az
5
+ 4,Basque (Euskara),eu
6
+ 5,Belarusian (Беларуская),be
7
+ 6,Bengali (বাংলা),bn
8
+ 7,Bulgarian (Български),bg
9
+ 8,Czech (Čeština),cs
10
+ 9,Danish (Dansk),da
11
+ 10,Emoji (Emoji),emoji
12
+ 11,Estonian (Eesti),et
13
+ 12,Finnish (Suomi),fi
14
+ 13,Frisian (Frysk),fy
15
+ 14,Georgian (ქართული),ka
16
+ 15,Croatian (Hrvatski),hr
17
+ 16,Hindi (हिन्दी),hi
18
+ 17,English (English),en
19
+ 18,Spanish (Español),es
20
+ 19,French (Français),fr
21
+ 20,German (Deutsch),de
22
+ 21,Portuguese (Português),pt
23
+ 22,Arabic (العربية),ar
24
+ 23,Italian (Italiano),it
25
+ 24,Chinese (中文),zh-CN
26
+ 25,Chinese (中文),zh-TW
27
+ 26,Norwegian (Norsk),no
28
+ 27,Russian (Русский),ru
29
+ 28,Japanese (日本語),ja
30
+ 29,Korean (한국어),ko
31
+ 30,Latvian (Latviešu),lv
32
+ 31,Lithuanian (Lietuvių),lt
33
+ 32,Luxembourgish (Lëtzebuergesch),lb
34
+ 33,Macedonian (Македонски),mk
35
+ 34,Malay (Bahasa Melayu),ms
36
+ 35,Maltese (Malti),mt
37
+ 36,Persian (فارسی),fa
38
+ 37,Romanian (Română),ro
39
+ 38,Serbian (Српски),sr
40
+ 39,Slovak (Slovenčina),sk
41
+ 40,Slovenian (Slovenščina),sl
42
+ 41,Swahili (Kiswahili),sw
43
+ 42,Swedish (Svenska),sv
44
+ 43,Thai (ภาษาไทย),th
45
+ 44,Turkish (Türkçe),tr
46
+ 45,Ukrainian (Українська),uk
47
+ 46,Vietnamese (Tiếng Việt),vi
48
+ 47,Greek (Ελληνικά),el
requirements.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ gtts==2.5.4
2
+ streamlit==1.36.0
3
+ pandas==2.2.3