mirror of
https://github.com/Orama-Interactive/Pixelorama.git
synced 2025-01-31 07:29:49 +00:00
Load ogg audio files
This commit is contained in:
parent
cc0ab5949f
commit
1b7494a767
|
@ -45,6 +45,8 @@ func handle_loading_file(file: String) -> void:
|
||||||
return
|
return
|
||||||
var file_name: String = file.get_file().get_basename()
|
var file_name: String = file.get_file().get_basename()
|
||||||
Global.control.find_child("ShaderEffect").change_shader(shader, file_name)
|
Global.control.find_child("ShaderEffect").change_shader(shader, file_name)
|
||||||
|
elif file_ext == "ogg": # Audio file
|
||||||
|
open_audio_file(file)
|
||||||
|
|
||||||
else: # Image files
|
else: # Image files
|
||||||
# Attempt to load as APNG.
|
# Attempt to load as APNG.
|
||||||
|
@ -902,6 +904,20 @@ func set_new_imported_tab(project: Project, path: String) -> void:
|
||||||
Global.tabs.delete_tab(prev_project_pos)
|
Global.tabs.delete_tab(prev_project_pos)
|
||||||
|
|
||||||
|
|
||||||
|
func open_audio_file(path: String) -> void:
|
||||||
|
var audio_stream := AudioStreamOggVorbis.load_from_file(path)
|
||||||
|
if not is_instance_valid(audio_stream):
|
||||||
|
return
|
||||||
|
var project := Global.current_project
|
||||||
|
for layer in project.layers:
|
||||||
|
if layer is AudioLayer and not is_instance_valid(layer.audio):
|
||||||
|
layer.audio = audio_stream
|
||||||
|
return
|
||||||
|
var new_layer := AudioLayer.new(project)
|
||||||
|
new_layer.audio = audio_stream
|
||||||
|
Global.animation_timeline.add_layer(new_layer, project)
|
||||||
|
|
||||||
|
|
||||||
func update_autosave() -> void:
|
func update_autosave() -> void:
|
||||||
if not is_instance_valid(autosave_timer):
|
if not is_instance_valid(autosave_timer):
|
||||||
return
|
return
|
||||||
|
|
|
@ -43,6 +43,7 @@ func _ready() -> void:
|
||||||
elif layer is AudioLayer:
|
elif layer is AudioLayer:
|
||||||
audio_player = AudioStreamPlayer.new()
|
audio_player = AudioStreamPlayer.new()
|
||||||
audio_player.stream = layer.audio
|
audio_player.stream = layer.audio
|
||||||
|
layer.audio_changed.connect(func(): audio_player.stream = layer.audio)
|
||||||
add_child(audio_player)
|
add_child(audio_player)
|
||||||
custom_minimum_size.y = Global.animation_timeline.cel_size
|
custom_minimum_size.y = Global.animation_timeline.cel_size
|
||||||
label.text = layer.name
|
label.text = layer.name
|
||||||
|
|
Loading…
Reference in a new issue