Files
Marcelo Fernandez 453405031c Added MicRecord demo
2018-12-15 14:45:28 -03:00

44 lines
1.0 KiB
GDScript

extends Node2D
var effect
var recording
func _ready():
var idx = AudioServer.get_bus_index("Record")
effect = AudioServer.get_bus_effect(idx, 0)
func _on_RecordButton_pressed():
if (effect.is_recording_active()):
recording = effect.get_recording()
$PlayButton.disabled = false
$SaveButton.disabled = false
effect.set_recording_active(false)
$RecordButton.text = "Record"
else:
$PlayButton.disabled = true
$SaveButton.disabled = true
effect.set_recording_active(true)
$RecordButton.text = "Stop"
func _on_PlayButton_pressed():
print(recording)
print(recording.format)
print(recording.mix_rate)
print(recording.stereo)
var data = recording.get_data()
print(data)
print(data.size())
$AudioStreamPlayer.stream = recording
$AudioStreamPlayer.play()
func _on_Play_Music_pressed():
if ($AudioStreamPlayer2.playing):
$AudioStreamPlayer2.stop()
$PlayMusic.text = "Play Music"
else:
$AudioStreamPlayer2.play()
$PlayMusic.text = "Stop Music"
func _on_SaveButton_pressed():
recording.save_to_wav($SaveButton/Filename.text)