31 lines
1.1 KiB
GDScript
31 lines
1.1 KiB
GDScript
extends Node3D
|
|
|
|
func encode_sstv():
|
|
#var encoder = Martin1.new()
|
|
var encoder = RobotBW8.new()
|
|
#var cameraImage = get_viewport().get_texture().get_image()
|
|
#var cameraImage = load("res://tests/checker.png").get_image()
|
|
#var cameraImage = load("res://tests/spiral.png").get_image()
|
|
var cameraImage = load("res://tests/testtest.png").get_image()
|
|
#var cameraImage = load("res://tests/testtest2.png").get_image()
|
|
#var cameraImage = load("res://tests/testtest3.png").get_image()
|
|
var audioBuffer = encoder.EncodeSSTV(cameraImage)
|
|
encoder.SaveAsWav("res://../sstv.wav")
|
|
|
|
# Spew that audio yo.
|
|
#$AudioStreamPlayer.stream.mix_rate = SSTVEncoder.SAMPLE_RATE
|
|
#$AudioStreamPlayer.stream.buffer_length = 120
|
|
#$AudioStreamPlayer.play()
|
|
#var player = $AudioStreamPlayer.get_stream_playback()
|
|
#for i in range(0, audioBuffer.size()):
|
|
#player.push_frame(Vector2(audioBuffer[i], audioBuffer[i]))
|
|
|
|
# a lil hacky delay so sdfgi can settle lol.
|
|
var startTimer = 0
|
|
var first = true
|
|
func _process(delta):
|
|
if startTimer > 10 and first:
|
|
first = false
|
|
encode_sstv()
|
|
|
|
startTimer += 1
|