def getAudio(parent, encode=True): "Record and return filename" # record first r = Recorder() mb = QMessageBox(parent) restoreGeom(mb, "audioRecorder") mb.setWindowTitle("Anki") mb.setIconPixmap(QPixmap(":/icons/media-record.png")) but = QPushButton(_("Save")) mb.addButton(but, QMessageBox.AcceptRole) but = QPushButton(_("Cancel")) mb.addButton(but, QMessageBox.RejectRole) mb.setEscapeButton(but) t = time.time() r.start() time.sleep(r.startupDelay) QApplication.instance().processEvents() while not mb.clickedButton(): txt =_("Recording...<br>Time: %0.1f") mb.setText(txt % (time.time() - t)) mb.show() QApplication.instance().processEvents() if mb.clickedButton() == mb.escapeButton(): r.stop() return saveGeom(mb, "audioRecorder") # ensure at least a second captured while time.time() - t < 1: time.sleep(0.1) r.stop() # process r.postprocess(encode) return r.file()
def getAudio(parent, encode=True): "Record and return filename" # record first r = Recorder() mb = QMessageBox(parent) restoreGeom(mb, "audioRecorder") mb.setWindowTitle("Anki") mb.setIconPixmap(QPixmap(":/icons/media-record.png")) but = QPushButton(_(" Stop")) but.setIcon(QIcon(":/icons/media-playback-stop.png")) #but.setIconSize(QSize(32, 32)) mb.addButton(but, QMessageBox.RejectRole) t = time.time() r.start() QApplication.instance().processEvents() while not mb.clickedButton(): txt = _("Recording...<br>Time: %0.1f") mb.setText(txt % (time.time() - t)) mb.show() QApplication.instance().processEvents() saveGeom(mb, "audioRecorder") # ensure at least a second captured while time.time() - t < 1: time.sleep(0.1) r.stop() # process r.postprocess(encode) return r.file()
def getAudio(parent, string=""): "Record and return filename" # record first r = Recorder() mb = QMessageBox(parent) restoreGeom(mb, "audioRecorder") mb.setWindowTitle("Anki") mb.setIconPixmap(QPixmap(":/icons/media-record.png")) but = QPushButton(_(" Stop")) but.setIcon(QIcon(":/icons/media-playback-stop.png")) #but.setIconSize(QSize(32, 32)) mb.addButton(but, QMessageBox.RejectRole) t = time.time() r.start() QApplication.instance().processEvents() while not mb.clickedButton(): txt =_("Recording...<br>Time: %0.1f") mb.setText(txt % (time.time() - t)) mb.show() QApplication.instance().processEvents() # ensure at least a second captured saveGeom(mb, "audioRecorder") while time.time() - t < 1: time.sleep(0.1) r.stop() # process r.postprocess() return r.file()
def recordNoiseProfile(parent): r = Recorder() mb = QMessageBox(parent) mb.setStandardButtons(QMessageBox.NoButton) mb.setIconPixmap(QPixmap(":/icons/media-record.png")) mb.show() QApplication.instance().processEvents() f = time.time() + 10 r.start() while f > time.time(): txt =_("Sampling silence...<br>Time: %0.1f") mb.setText(txt % (f - time.time())) QApplication.instance().processEvents() time.sleep(0.1) r.stop() generateNoiseProfile() mb.deleteLater()
def on_show_question(): global recorder global filename global recording_directory filename = None recording_directory = None if recorder: log('[on_show_question][{}] Stop recording'.format(recorder.thread.ident)) recorder.stop() recorder = None if not should_record_audio(): return recorder = Recorder() recorder.start() log('[on_show_question][{}] Start recording'.format(recorder.thread.ident))
def recordNoiseProfile(parent): r = Recorder() mb = QMessageBox(parent) mb.setStandardButtons(QMessageBox.NoButton) mb.setIconPixmap(QPixmap(":/icons/media-record.png")) mb.show() mb.setWindowTitle("Anki") QApplication.instance().processEvents() f = time.time() + 10 r.start() while f > time.time(): txt = _("Sampling silence...<br>Time: %0.1f") mb.setText(txt % (f - time.time())) QApplication.instance().processEvents() time.sleep(0.1) r.stop() generateNoiseProfile() mb.deleteLater()
def getAudio(parent, encode=True): "Record and return filename" # record first if not Recorder: showWarning("pyaudio not installed") return r = Recorder() mb = QMessageBox(parent) restoreGeom(mb, "audioRecorder") mb.setWindowTitle("Anki") mb.setIconPixmap(QPixmap(":/icons/media-record.png")) but = QPushButton(_("Save")) mb.addButton(but, QMessageBox.AcceptRole) but.setDefault(True) but = QPushButton(_("Cancel")) mb.addButton(but, QMessageBox.RejectRole) mb.setEscapeButton(but) t = time.time() r.start() time.sleep(r.startupDelay) QApplication.instance().processEvents() while not mb.clickedButton(): txt = _("Recording...<br>Time: %0.1f") mb.setText(txt % (time.time() - t)) mb.show() QApplication.instance().processEvents() if mb.clickedButton() == mb.escapeButton(): r.stop() r.cleanup() return saveGeom(mb, "audioRecorder") # ensure at least a second captured while time.time() - t < 1: time.sleep(0.1) r.stop() # process r.postprocess(encode) return r.file()