-
Notifications
You must be signed in to change notification settings - Fork 1
/
gui.py
84 lines (61 loc) · 2.42 KB
/
gui.py
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# links úteis:
# https://docs.python.org/3/library/dialog.html#module-tkinter.filedialog
from tkinter import *
from tkinter import filedialog as fd
#from tkinter.ttk import *
import divider
import amd
def selectFile():
filename = fd.askopenfilename(initialdir = "/",
title = "Select file",filetypes = (("mp3 files","*.mp3"),("all files","*.*")))
entryFile.delete(0,END)
#entryFile.insert(0,filename.split('/')[-1]) # without path
entryFile.insert(0,filename) # with path
def getValuesToParams():
global mms
global thr
global std
mms = int(entryMms.get() if entryMms.get() else 1000000)
thr = float(entryThr.get() if entryThr.get() else 0.001)
std = int(entryStd.get() if entryStd.get() else 49000)
def divide():
global filename
global wavFilename
filename = entryFile.get()
getValuesToParams()
wavFilename = amd.prepareFile(filename)
outputQuantity = divider.divideIntoParts(wavFilename, mms, thr, std)
amd.finishProcess(wavFilename)
entryOutput.delete(0,END)
entryOutput.insert(0,outputQuantity)
window = Tk()
window.title("Audio Music Divider")
window.geometry('640x480')
#window.resizable(False, False)
window.resizable(width=1, height=1)
#imports
backgroundImg = PhotoImage(file="img\\background.png")
browseBtnImg = PhotoImage(file="img\\browse.png")
divideBtnImg = PhotoImage(file="img\\divide.png")
#labels
backgroundLabel = Label(window, image=backgroundImg)
backgroundLabel.pack()
# File selection
entryFile = Entry(window, bd=2, font=("Calibri",15), justify=LEFT)
entryFile.place(width=211,height=38, x=148, y=98)
btnBrowser = Button(window, bd=0, image=browseBtnImg, command=selectFile)
btnBrowser.place(width=56,height=50, x=515, y=80)
# Additional Parameters
entryMms = Entry(window, font=("Calibri",13), justify=RIGHT)
entryMms.place(width=156,height=29, x=422, y=177)
entryThr = Entry(window, font=("Calibri",13), justify=RIGHT)
entryThr.place(width=156,height=29, x=422, y=237)
entryStd = Entry(window, font=("Calibri",13), justify=RIGHT)
entryStd.place(width=156,height=29, x=422, y=297)
#Divide Button
btnDivide = Button(window, bd=0, image=divideBtnImg, command=divide)
btnDivide.place(width=140,height=40, x=292, y=360)
#Output Info
entryOutput = Entry(window, font=("Calibri",12), justify=CENTER)
entryOutput.place(width=45,height=23, x=440, y=433)
window.mainloop()