Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Godot 4.1.1 #9

Merged
merged 4 commits into from
Aug 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Directories using files from my vosk api
libpath/*
project/bin/*
# libpath/*
# project/bin/*

# The language models from vosk are way too huge
project/*/language_models/*
Expand All @@ -10,6 +10,7 @@ godot-cpp/*

# automatically generated files
project/.import/*
project/.godot/*
*.obj
.sconsign.dblite

3 changes: 1 addition & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
[submodule "godot-cpp"]
path = godot-cpp
url = git@github.com:godotengine/godot-cpp
branch = 4.0
url = git@github.com:godotengine/godot-cpp
Binary file added libpath/libvosk.lib
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -104,9 +104,10 @@ Anim={
"half_res": false,
"information": false,
"listener": true,
"lock_rotation": false,
"orthogonal": false,
"position": Vector3(0, 0, 0),
"use_environment": false,
"use_orthogonal": false,
"view_type": 0,
"x_rotation": 0.5,
"y_rotation": -0.5
Expand All @@ -122,9 +123,10 @@ Anim={
"half_res": false,
"information": false,
"listener": false,
"lock_rotation": false,
"orthogonal": false,
"position": Vector3(0, 0, 0),
"use_environment": false,
"use_orthogonal": false,
"view_type": 0,
"x_rotation": 0.5,
"y_rotation": -0.5
Expand All @@ -140,9 +142,10 @@ Anim={
"half_res": false,
"information": false,
"listener": false,
"lock_rotation": false,
"orthogonal": false,
"position": Vector3(0, 0, 0),
"use_environment": false,
"use_orthogonal": false,
"view_type": 0,
"x_rotation": 0.5,
"y_rotation": -0.5
Expand All @@ -158,13 +161,15 @@ Anim={
"half_res": false,
"information": false,
"listener": false,
"lock_rotation": false,
"orthogonal": false,
"position": Vector3(0, 0, 0),
"use_environment": false,
"use_orthogonal": false,
"view_type": 0,
"x_rotation": 0.5,
"y_rotation": -0.5
}],
"zfar": 4000.01,
"znear": 0.05
}
selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@17637/@Control@697/@Panel@698/@VBoxContainer@706/@HSplitContainer@709/@HSplitContainer@717/@HSplitContainer@725/@VBoxContainer@726/@VSplitContainer@728/@VSplitContainer@754/@VBoxContainer@755/@PanelContainer@800/MainScreen/@CanvasItemEditor@10090/@VSplitContainer@9915/@HSplitContainer@9917/@HSplitContainer@9919/@Control@9920/@SubViewportContainer@9921/@SubViewport@9922/Main/VoskSpeechRecognizer")])
27 changes: 25 additions & 2 deletions project/.godot/editor/editor_layout.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,40 @@ dock_hsplit_1=0
dock_hsplit_2=336
dock_hsplit_3=-270
dock_hsplit_4=0
dock_1_selected_tab_idx=0
dock_2_selected_tab_idx=0
dock_3_selected_tab_idx=0
dock_4_selected_tab_idx=0
dock_5_selected_tab_idx=0
dock_6_selected_tab_idx=0
dock_7_selected_tab_idx=0
dock_8_selected_tab_idx=0
dock_floating={}
dock_filesystem_selected_paths=PackedStringArray("res://default_bus_layout.tres")
dock_filesystem_uncollapsed_paths=PackedStringArray("res://")
dock_3="Scene,Import"
dock_4="FileSystem"
dock_5="Inspector,Node,History"

[EditorNode]

open_scenes=["res://Main.tscn"]
open_scenes=PackedStringArray("res://Main.tscn")
current_scene="res://Main.tscn"
center_split_offset=0
selected_default_debugger_tab_idx=0
selected_main_editor_idx=2
selected_bottom_panel_item=0

[ScriptEditor]

open_scripts=["res://AudioEffectCaptureExtend.gd", "res://Main.gd", "res://RecordingPlayer.gd", "res://testHUD.gd", "res://speech_recognizer/VoskSpeechRecognizer.gd"]
open_scripts=["res://Main.gd", "res://RecordingPlayer.gd", "res://testHUD.gd", "res://speech_recognizer/VoskSpeechRecognizer.gd"]
open_help=[]
script_split_offset=240
list_split_offset=0
selected_script="res://Main.gd"

[ShaderEditor]

open_shaders=[]
split_offset=0
selected_shader=""
40 changes: 15 additions & 25 deletions project/.godot/editor/filesystem_cache8
Original file line number Diff line number Diff line change
@@ -1,25 +1,15 @@
2a60927148abd1d33b818b535e306557
::res://::1678000988
AudioEffectCaptureExtend.gd::GDScript::-1::1677973145::0::1::::<>AudioEffectCaptureExtend<>::
default_bus_layout.tres::AudioBusLayout::8260279863403892904::1677999920::0::1::::<><>::
icon.png::CompressedTexture2D::7862382961466664112::1677012919::1677905256::1::::<><>::
Main.gd::GDScript::-1::1678000858::0::1::::<>Node2D<>::
Main.tscn::PackedScene::2334701008700716727::1678000858::0::1::::<><>::res://Main.gd<>res://RecordingPlayer.gd<>res://speech_recognizer/VoskSpeechRecognizer.gd<>uid://d0odff4jebh0c
RecordingPlayer.gd::GDScript::-1::1677975658::0::1::::<>AudioStreamPlayer<>::
testHUD.gd::GDScript::-1::1677982758::0::1::::<>Node2D<>::
testHUD.tscn::PackedScene::8943075818365164696::1678000057::0::1::::<><>::res://testHUD.gd
::res://assets/::1677905256
mouths_sheet.png::CompressedTexture2D::3889319267765816103::1677729682::1677905256::1::::<><>::
::res://bin/::1677998065
::res://speech_recognizer/::1678000652
VoskSpeechRecognizer.gd::GDScript::-1::1678000652::0::1::::<>VoskSpeechRecognizer<>::
vosk_speech_recognizer.gdextension::GDExtension::-1::1677969255::0::1::::<><>::
::res://speech_recognizer/language_models/::1677904818
phones.txt::TextFile::-1::1677729679::0::1::::<><>::
::res://speech_recognizer/language_models/vosk-model-small-en-us-0.15/::1676147252
::res://speech_recognizer/language_models/vosk-model-small-en-us-0.15/am/::1676147252
::res://speech_recognizer/language_models/vosk-model-small-en-us-0.15/conf/::1676147252
::res://speech_recognizer/language_models/vosk-model-small-en-us-0.15/graph/::1677727755
phones.txt::TextFile::-1::1677646295::0::1::::<><>::
::res://speech_recognizer/language_models/vosk-model-small-en-us-0.15/graph/phones/::1676147252
::res://speech_recognizer/language_models/vosk-model-small-en-us-0.15/ivector/::1676147252
ea4bc82a6ad023ab7ee23ee620429895
::res://::1693419124
default_bus_layout.tres::AudioBusLayout::8260279863403892904::1693415414::0::1::::<><>::
icon.png::CompressedTexture2D::7862382961466664112::1693415414::1693415414::1::::<><>::
Main.gd::GDScript::-1::1693415414::0::1::::<>Node2D<>::
Main.tscn::PackedScene::2334701008700716727::1693415414::0::1::::<><>::res://Main.gd<>res://RecordingPlayer.gd<>res://speech_recognizer/VoskSpeechRecognizer.gd<>uid://d0odff4jebh0c::::res://testHUD.tscn
RecordingPlayer.gd::GDScript::-1::1693415414::0::1::::<>AudioStreamPlayer<>::
testHUD.gd::GDScript::-1::1693415414::0::1::::<>Node2D<>::
testHUD.tscn::PackedScene::8943075818365164696::1693415414::0::1::::<><>::res://testHUD.gd
::res://bin/::1693419109
::res://speech_recognizer/::1693415727
VoskSpeechRecognizer.gd::GDScript::-1::1690922055::0::1::::<>VoskSpeechRecognizer<>::
vosk_speech_recognizer.gdextension::GDExtension::-1::1690921561::0::1::::<><>::
::res://speech_recognizer/language_models/::1693415414
phones.txt::TextFile::-1::1693415414::0::1::::<><>::
2 changes: 2 additions & 0 deletions project/.godot/editor/filesystem_update4
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
res://default_bus_layout.tres
res://Main.tscn
res://Main.gd
res://RecordingPlayer.gd
res://speech_recognizer/VoskSpeechRecognizer.gd
6 changes: 5 additions & 1 deletion project/.godot/editor/project_metadata.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[editor_metadata]

executable_path="C:/Program Files (x86)/Godot/Godot_v4.0-stable_win64.exe"
executable_path="C:/Program Files (x86)/Godot/Godot_v4.1.1-stable_win64.exe"

[debug_options]

Expand All @@ -23,3 +23,7 @@ project_settings=Rect2(2182, 379, 900, 700)
[project_settings]

advanced_mode=true

[linked_properties]

Node2D:scale=true
26 changes: 6 additions & 20 deletions project/.godot/editor/script_editor_cache.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -6,35 +6,21 @@ state={
"column": 0,
"folded_lines": Array[int]([]),
"h_scroll_position": 0,
"row": 52,
"scroll_position": 33.0,
"selection": false,
"syntax_highlighter": "GDScript"
}

[res://RecordingPlayer.gd]

state={
"bookmarks": PackedInt32Array(),
"breakpoints": PackedInt32Array(),
"column": 0,
"folded_lines": Array[int]([]),
"h_scroll_position": 0,
"row": 14,
"row": 19,
"scroll_position": 0.0,
"selection": false,
"syntax_highlighter": "GDScript"
}

[res://AudioEffectCaptureExtend.gd]
[res://RecordingPlayer.gd]

state={
"bookmarks": PackedInt32Array(),
"breakpoints": PackedInt32Array(),
"column": 0,
"column": 18,
"folded_lines": Array[int]([]),
"h_scroll_position": 0,
"row": 1,
"row": 26,
"scroll_position": 0.0,
"selection": false,
"syntax_highlighter": "GDScript"
Expand All @@ -59,10 +45,10 @@ state={
state={
"bookmarks": PackedInt32Array(),
"breakpoints": PackedInt32Array(),
"column": 17,
"column": 22,
"folded_lines": Array[int]([]),
"h_scroll_position": 0,
"row": 7,
"row": 6,
"scroll_position": 0.0,
"selection": false,
"syntax_highlighter": "GDScript"
Expand Down
Binary file modified project/.godot/uid_cache.bin
Binary file not shown.
1 change: 0 additions & 1 deletion project/AudioEffectCaptureExtend.gd

This file was deleted.

2 changes: 0 additions & 2 deletions project/Main.gd
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ var text_result : String = ""
var phoneme_labels : Array
var phoneme_timings : Array



func _ready():
print("Starting Test!")

Expand Down
2 changes: 1 addition & 1 deletion project/RecordingPlayer.gd
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ func _ready() -> void:

func start_recording() -> void:
is_recording = true
capture_effect.clear_buffer()
# capture_effect.clear_buffer()

func stop_recording() -> void:
is_recording = false
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added project/bin/libgcc_s_seh-1.dll
Binary file not shown.
Binary file added project/bin/libstdc++-6.dll
Binary file not shown.
Binary file added project/bin/libvosk.dll
Binary file not shown.
Binary file added project/bin/libwinpthread-1.dll
Binary file not shown.
4 changes: 2 additions & 2 deletions project/default_bus_layout.tres
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[gd_resource type="AudioBusLayout" load_steps=2 format=3 uid="uid://dpxluqq8qy37y"]

[sub_resource type="AudioEffectCaptureExtend" id="AudioEffectCaptureExtend_iy28f"]
[sub_resource type="AudioEffectCaptureExtend" id="AudioEffectCaptureExtend_kmsm8"]
resource_name = "CaptureExtend"

[resource]
Expand All @@ -10,5 +10,5 @@ bus/1/mute = true
bus/1/bypass_fx = false
bus/1/volume_db = 0.0
bus/1/send = &"Capture 2"
bus/1/effect/0/effect = SubResource("AudioEffectCaptureExtend_iy28f")
bus/1/effect/0/effect = SubResource("AudioEffectCaptureExtend_kmsm8")
bus/1/effect/0/enabled = true
2 changes: 1 addition & 1 deletion project/project.godot
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ config_version=5

config/name="vosk-godot"
run/main_scene="res://Main.tscn"
config/features=PackedStringArray("4.0")
config/features=PackedStringArray("4.1")
config/icon="res://icon.png"

[audio]
Expand Down
7 changes: 5 additions & 2 deletions project/speech_recognizer/VoskSpeechRecognizer.gd
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,14 @@ extends VoskSpeechRecognizer

var model_path = "speech_recognizer/language_models/vosk-model-small-en-us-0.15"
var sample_rate: float = ProjectSettings.get_setting("audio/driver/mix_rate")
var is_running : bool = false

func _ready():
func _ready() -> void:
start()

func start() -> void:
initialize(model_path, sample_rate)

set_words_option(true)
set_phones_option(true)
set_timings_option(true)
is_running = true
4 changes: 1 addition & 3 deletions project/speech_recognizer/vosk_speech_recognizer.gdextension
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
[configuration]

entry_symbol = "vosk_speech_recognizer_library_init"
compatibility_minimum = 4.1

[libraries]

windows.debug.x86_64 = "res://bin/lib_vosk_speech_recognizer.windows.template_debug.x86_64.dll"

[dependencies]

windows.debug.x86_64 = ["res://bin/libvosk.dll"]
5 changes: 3 additions & 2 deletions src/register_types.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ void initialize_vosk_speech_recognizer_module(ModuleInitializationLevel p_level)

ClassDB::register_class<VoskSpeechRecognizer>();
ClassDB::register_class<AudioEffectCaptureExtend>();
//ClassDB::register_class<AudioEffectCustom>();

}

Expand All @@ -32,8 +33,8 @@ void uninitialize_vosk_speech_recognizer_module(ModuleInitializationLevel p_leve

extern "C" {
// Initialization
GDExtensionBool GDE_EXPORT vosk_speech_recognizer_library_init(const GDExtensionInterface *p_interface, GDExtensionClassLibraryPtr p_library, GDExtensionInitialization *r_initialization) {
godot::GDExtensionBinding::InitObject init_obj(p_interface, p_library, r_initialization);
GDExtensionBool GDE_EXPORT vosk_speech_recognizer_library_init(GDExtensionInterfaceGetProcAddress p_get_proc_address, GDExtensionClassLibraryPtr p_library, GDExtensionInitialization *r_initialization) {
godot::GDExtensionBinding::InitObject init_obj(p_get_proc_address, p_library, r_initialization);

init_obj.register_initializer(initialize_vosk_speech_recognizer_module);
init_obj.register_terminator(uninitialize_vosk_speech_recognizer_module);
Expand Down
28 changes: 27 additions & 1 deletion src/vosk_speech_recognizer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ void VoskSpeechRecognizer::_bind_methods() {

// Methods
ClassDB::bind_method(D_METHOD("initialize", "path", "sample_rate"), &VoskSpeechRecognizer::initialize);
ClassDB::bind_method(D_METHOD("reset"), &VoskSpeechRecognizer::reset);
ClassDB::bind_method(D_METHOD("accept_waveform", "audio_data"), &VoskSpeechRecognizer::accept_waveform);
ClassDB::bind_method(D_METHOD("get_partial"), &VoskSpeechRecognizer::get_partial);
ClassDB::bind_method(D_METHOD("get_phone_partial"), &VoskSpeechRecognizer::get_phone_partial);
Expand Down Expand Up @@ -72,6 +73,10 @@ void VoskSpeechRecognizer::initialize(String path, float rate) {
speech_recognizer = vosk_recognizer_new(language_model, rate);
}

void VoskSpeechRecognizer::reset() {
vosk_recognizer_reset(speech_recognizer);
}

int VoskSpeechRecognizer::accept_waveform(PackedByteArray data) {
int len = data.size();
memcpy(buf, data.ptr(), len);
Expand Down Expand Up @@ -119,4 +124,25 @@ PackedByteArray AudioEffectCaptureExtend::get_buffer_uint16(int p_frames) {
encode_uint16(u, &w[i * 2]);
}
return data;
}
}

// ===== AudioEffectCustom ===== //
/*
void AudioEffectCustomInstance::_bind_methods() {

}


void AudioEffectCustom::_bind_methods() {

}

Ref<AudioEffectInstance> AudioEffectCustom::instantiate() {
Ref<AudioEffectInstance> ins;
ins.instantiate();
ins->base = Ref<AudioEffectCustom>(this);


return ins;
}
*/
Loading