O script original:
-
Cria uma janela GUI PyQt
-
Usa o VLC via linha de comandos para:
- Gravar som do microfone
- Guardar num ficheiro
.wav
-
Tem botões:
- Gravar
- Parar
- Sair
- PyQt5 (funciona também em Windows 10)
subprocesspara executar o VLCQFileDialogpara escolher o ficheiroQMessageBoxpara mensagens
📦 Instalação (se ainda não tiveres):
pip install pyqt5class VLCRecorder(QWidget):- Em Qt, a janela é uma classe
- Herdamos de
QWidget
QPushButton("Gravar")
QVBoxLayout()QVBoxLayoutorganiza os botões na vertical- Cada botão liga a uma função (
clicked.connect)
QFileDialog.getSaveFileName()- Substitui
filedialogdo Tkinter - Retorna o caminho escolhido
subprocess.Popen(vlc_command)- Igual ao Tkinter
- O VLC grava áudio via
dshow:// - Guarda em WAV
def closeEvent(self, event):- Garante que o VLC é fechado ao sair
- Muito importante em Qt
Posso acrescentar facilmente:
- ✅ Duração configurável (SpinBox)
- ✅ Barra de progresso
- ✅ Escolha do dispositivo de áudio
- ✅ Gravação ilimitada (sem tempo fixo)
- ✅ Logs num ficheiro
.log - ✅ Integração com VLC Python bindings