Compare commits

..

1 Commits

Author SHA1 Message Date
bucket 1688d4f982 the fix in question 2026-02-26 22:21:12 +01:00
36 changed files with 76 additions and 159 deletions
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=1.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=1
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
+1 -1
View File
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@@ -38,7 +38,7 @@ func get_mp3_metadata(stream: AudioStreamMP3) -> MusicMetadata:
return meta
var v = "ID3v2.%d.%d" % [header[3], header[4]]
if v == "ID3v2.4.0" or v == "ID3v2.3.0" or v == "ID3v2.2.0":
if v == "ID3v2.4.0" or v == "ID3v2.3.0":
var flags = header[5]
var _unsync = flags & 0x80 > 0
var extended = flags & 0x40 > 0
@@ -66,18 +66,15 @@ func get_mp3_metadata(stream: AudioStreamMP3) -> MusicMetadata:
match frame_id:
"TBPM", 'TBP':
meta.bpm = int(get_string_from_data(data, idx, size))
"TIT2","TT2":
"TIT2":
print("a " + str(Array(data.slice(idx, idx + 3)).hash()))
print([1, 0xff, 0xfe].hash())
meta.title = get_string_from_data(data, idx, size)
"TALB", 'TAL':
meta.album = get_string_from_data(data, idx, size)
"COMM","COM":
var string:String = get_string_from_data(data, idx, size)
print("got comment " + string)
if string:
meta.comments = string
"TYER","TYE":
"COMM":
meta.comments = get_string_from_data(data, idx, size)
"TYER":
meta.year = int(get_string_from_data(data, idx, size))
"TPE1", 'TP1':
meta.artist = get_string_from_data(data, idx, size)
+6 -1
View File
@@ -232,6 +232,11 @@ script = ExtResource("1_ubs1p")
LoopPressed = ExtResource("2_iolk5")
LoopNotPressed = ExtResource("5_c2g63")
[node name="OSMediaIntigration" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
[node name="WallpaperManager" type="Node2D" parent="." node_paths=PackedStringArray("Daytime", "Evening", "Nighttime")]
script = ExtResource("4_y372l")
Daytime = NodePath("../Daytime")
@@ -916,7 +921,7 @@ offset_left = -64.0
offset_top = -23.0
grow_horizontal = 0
grow_vertical = 0
text = "v1.6.3"
text = "v1.6.2"
horizontal_alignment = 2
[node name="SettingsButton" type="Button" parent="."]
+5 -8
View File
@@ -64,7 +64,7 @@ layout_mode = 2
custom_minimum_size = Vector2(70, 0)
layout_mode = 2
focus_mode = 0
text = "PLAY"
text = "Play"
[node name="OptionsDropdown" type="MenuButton" parent="HSplitContainer/HBoxContainer"]
modulate = Color(0.724643, 0.724643, 0.724643, 1)
@@ -72,13 +72,10 @@ custom_minimum_size = Vector2(20.505, 0)
layout_mode = 2
icon = ExtResource("2_im6ur")
expand_icon = true
item_count = 3
popup/item_0/text = "Open Directory"
popup/item_0/id = 2
popup/item_1/text = "Change Directory"
popup/item_1/id = 0
popup/item_2/text = "DELETE"
popup/item_2/id = 1
item_count = 2
popup/item_0/text = "Change Directory"
popup/item_1/text = "Delete"
popup/item_1/id = 1
[node name="FileDialog" type="FileDialog" parent="."]
title = "Open a Directory"
-12
View File
@@ -66,18 +66,6 @@ texture = ExtResource("2_haeb5")
expand_mode = 3
stretch_mode = 5
[node name="TextureRect2" type="TextureRect" parent="ColorRect"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
texture = ExtResource("3_j8vo6")
expand_mode = 3
stretch_mode = 6
[node name="TextureRect" type="TextureRect" parent="ColorRect"]
layout_mode = 1
anchors_preset = 15
+22 -27
View File
@@ -1,39 +1,33 @@
[gd_scene load_steps=4 format=3 uid="uid://ctqcbjrmxaqsk"]
[gd_scene load_steps=3 format=3 uid="uid://ctqcbjrmxaqsk"]
[ext_resource type="Script" uid="uid://c3aaxhp0oim08" path="res://Scripts/search_item.gd" id="1_j4126"]
[ext_resource type="Texture2D" uid="uid://dwvy6crqhardn" path="res://Icons/Dropdown.png" id="2_hicj1"]
[ext_resource type="Script" uid="uid://dd38vqi4220tx" path="res://Scripts/SongSource.cs" id="3_ftuau"]
[node name="SearchItem" type="Control" node_paths=PackedStringArray("soung_source")]
[node name="SearchItem" type="Control"]
custom_minimum_size = Vector2(0, 30)
layout_mode = 3
anchors_preset = 10
anchors_preset = 14
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 4
script = ExtResource("1_j4126")
soung_source = NodePath("Node")
[node name="HBoxContainer" type="HBoxContainer" parent="."]
custom_minimum_size = Vector2(200, 32)
custom_minimum_size = Vector2(700, 32)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -16.0
offset_right = 700.0
offset_bottom = 16.0
grow_vertical = 2
alignment = 1
[node name="Songname" type="Button" parent="HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
focus_mode = 0
flat = true
alignment = 0
text_overrun_behavior = 1
clip_text = true
[node name="Dropdown" type="Button" parent="HBoxContainer"]
custom_minimum_size = Vector2(20, 0)
layout_mode = 2
@@ -44,16 +38,17 @@ flat = true
icon_alignment = 1
expand_icon = true
[node name="Songname" type="Button" parent="HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
focus_mode = 0
flat = true
alignment = 0
[node name="PopupMenu" type="PopupMenu" parent="."]
size = Vector2i(116, 100)
item_count = 2
item_count = 1
item_0/text = "DELETE"
item_0/id = 0
item_1/text = "OPEN SOURCE"
item_1/id = 1
[node name="Node" type="Node" parent="."]
script = ExtResource("3_ftuau")
[connection signal="pressed" from="HBoxContainer/Songname" to="." method="_on_songname_pressed"]
[connection signal="pressed" from="HBoxContainer/Dropdown" to="." method="_on_dropdown_pressed"]
[connection signal="pressed" from="HBoxContainer/Songname" to="." method="_on_songname_pressed"]
-16
View File
@@ -1,16 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using ATL;
using Godot;
public partial class SongSource : Node{
public String TryGetSongUrl(String path){
Track theTrack = new(path);
if (theTrack.AdditionalFields.TryGetValue("comment", out string value)){
return value;
}
return "";
}
}
-1
View File
@@ -1 +0,0 @@
uid://dd38vqi4220tx
+3 -7
View File
@@ -1,6 +1,5 @@
class_name MainScene
extends Control
static var instance:MainScene
@onready var file_dialog: FileDialog = $FileDialog
@onready var music_player: AudioStreamPlayer = $MusicPlayer
@onready var randomize_list: Button = $RandomizeList
@@ -84,7 +83,6 @@ var LoadingSaveFailed:bool = true
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
instance = self
playing_now.visible = false
get_tree().root.min_size = Vector2(850,492)
current_progress.drag_ended.connect(SongDragStopped)
@@ -171,9 +169,7 @@ func _ready() -> void:
play_all.button_pressed = true
if data.has("UsingPlayingNow"):
UsingPlayingNow = data["UsingPlayingNow"]
if UsingPlayingNow:
print("!!! using stereamer window !!!")
settings_menu_child.now_playing_window_button.button_pressed = true
settings_menu_child.now_playing_window_button.button_pressed = true
if data.has("OverriddenLocale"):
TranslationServer.set_locale(data["OverriddenLocale"])
overridden_locale = data["OverriddenLocale"]
@@ -543,9 +539,9 @@ func _process(_delta: float) -> void:
#time_listening_song.text = str(music_player.get_playback_position())
if Input.is_action_pressed("ui_down"):
if Input.is_key_pressed(KEY_DOWN):
volume_slider.value -= 1*_delta *50
if Input.is_action_pressed("ui_up"):
if Input.is_key_pressed(KEY_UP):
volume_slider.value += 1*_delta *50
if CurrentLenght == 0:
+4 -6
View File
@@ -18,16 +18,14 @@ func _ready() -> void:
CorrectlyName()
options_dropdown.get_popup().id_pressed.connect(dropdown_pressed)
func dropdown_pressed(Id:int):
match Id:
0:
func dropdown_pressed(Idx:int):
match options_dropdown.get_popup().get_item_text(Idx):
"Change Directory":
_on_select_directory_pressed()
1:
"Delete":
confirmation.show()
"Rename":
pass
2:
OS.shell_open(PlaylistLocation)
Parent.SaveEverything()
func Delete():
+2 -11
View File
@@ -6,7 +6,6 @@ var songidx:int
@onready var songname: Button = $HBoxContainer/Songname
@onready var dropdown: Button = $HBoxContainer/Dropdown
@onready var popup_menu: PopupMenu = $PopupMenu
@export var soung_source: Node
signal PlayPressed
@@ -17,16 +16,8 @@ func _ready() -> void:
popup_menu.index_pressed.connect(popupPressed)
func popupPressed(idx:int):
match idx:
0:
DeletePressed.emit(songidx)
1:
var songdir = MainScene.instance.CurrentDir + "/" + MainScene.instance.textSongs[songidx]
var source:String = soung_source.TryGetSongUrl(songdir)
print("Source: "+source)
if source:
OS.shell_open(source)
if idx == 0:
DeletePressed.emit(songidx)
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
+1 -2
View File
@@ -190,7 +190,6 @@ func _on_reset_bg_pressed() -> void:
func _on_now_playing_window_button_toggled(toggled_on: bool) -> void:
print("!!! PLAYING NOW TOGGLED TO ",toggled_on)
Parent.UsingPlayingNow = toggled_on
Parent.SaveEverything()
print("!!! PLAYING NOW IS ",Parent.UsingPlayingNow)
+3 -1
View File
@@ -114,7 +114,9 @@ func _on_download_request_completed(result: int, response_code: int, headers: Pa
for file in files:
var actualfile = file.replace("Linux/","").replace("Windows/","").replace("Android/","")
print("FILE: " + actualfile)
var FileAcess:FileAccess = FileAccess.open(GetLocalPath() + actualfile,FileAccess.WRITE_READ)
print("dir: "+actualfile.rsplit("/")[0])
DirAccess.open(GetLocalPath()).make_dir(actualfile.rsplit("/")[0])
var FileAcess:FileAccess = FileAccess.open(GetLocalPath() + actualfile,FileAccess.WRITE)
if FileAcess != null:
var downloadedfile = unzipper.read_file(file)
-9
View File
@@ -1,9 +0,0 @@
<Project Sdk="Godot.NET.Sdk/4.4.0">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="z440.atl.core" Version="7.3.0" />
</ItemGroup>
</Project>
-19
View File
@@ -1,19 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Simplaudio", "Simplaudio.csproj", "{135675D8-011A-46FC-B4A1-B2D21C2CF78E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
ExportDebug|Any CPU = ExportDebug|Any CPU
ExportRelease|Any CPU = ExportRelease|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
EndGlobalSection
EndGlobal
+6 -6
View File
@@ -1,12 +1,12 @@
# Simplaudio
a simple music player
a simple music player that just works
the v1.x versions are built on a bad codebase, i am working on fixing it every now and then
the v1.x versions are built on a bad codebase, i am working on 2.0 every now and then but it will take a bit for it to be finished
the music player is very functual though
## Translations
I would apprechiate if you could help out with translations,
if you want to help you can find a .csv under the folder called "translation",
create a fork of the repo and modify the translations.csv file with a program like excel or libreoffice calc to include your language.
After that create a pull request including your translations.
if you want to help you can find a .csv under the folder called "translation"
create a fork of the repo and modify the translations.csv file with a program like excel or libreoffice calc to include your language
then create a pull request including your translations
I will then merge the translations(annoy me if i forget)
-1
View File
@@ -1 +0,0 @@
,bucket,cachyos-x8664,26.02.2026 21:32,file:///home/bucket/.var/app/org.libreoffice.LibreOffice/config/libreoffice/4;
+2 -7
View File
@@ -14,7 +14,7 @@ UPDATE,Update,Updaten
SETTINGS,SETTINGS,EINSTELLUNGEN
INTIGRATIONS,INTIGRATIONS,INTIGRATIONEN
DRPC,discord rich presense,Discord aktivitäten
DRPC_NOTE,NOTE: After disableing simplaudio needs a restart,Nach dem deaktivieren muss Simplaudio neugestartet werden
DRPC_NOTE,NOTE: After disableing a restart is needed,Nach deaktivieren neustarten
LOOKS,LOOKS,AUSEHEN
BS_SELECT,Select Background,Hintergrund auswählen
RESET_BG,Reset,Zurücksetzen
@@ -72,7 +72,7 @@ UPD_ERR_CLT,a client error occurred,ein client error ist passiert
UPDT_OUT_END, Is Out!, Ist raus!
IMPORTANT,(Important),(Wichtig)
UPD_UPDATING,Updating…,Updated…
UPD_ERR_CODE,DOWNLOAD FAILED ERROR CODE: ,"DOWLOAD FEHLER, CODE: "
UPD_ERR_CODE,DOWNLOAD FAILED ERROR CODE: ,DOWLOAD FEHLER CODE:
UPD_UNZIP_PANT,unzipping…,entpacken…
SONG_SEARCH,Search…,Suchen…
FOLDER_SELECT,Select Current Folder,Wähle einen ordner aus
@@ -84,8 +84,3 @@ DL_LIST,Download Playlist,Playliste Herunterladen
DL_DIALOG,Do you want to download the song or the Entire playlist?,Willst du die playlist herunterladen?
LANGUAGE,Language:,Sprache:
SELECT,Select ,Auswählen
OPEN SOURCE,open source,Quelle oeffnen
Change Directory,Change Directory,Ordner Aendern
Open Directory,Open Directory,Ordner Oeffnen
PLAY,Play,Abspielen
use Up/Down arrow keys to adjust,use Up/Down arrow keys to adjust,Bentzte die Hoch/Runter pfeiltasten zum aendern
1 key en de
14 DRPC discord rich presense Discord aktivitäten
15 DRPC_NOTE NOTE: After disableing simplaudio needs a restart NOTE: After disableing a restart is needed Nach dem deaktivieren muss Simplaudio neugestartet werden Nach deaktivieren neustarten
16 LOOKS LOOKS AUSEHEN
17 BS_SELECT Select Background Hintergrund auswählen
18 RESET_BG Reset Zurücksetzen
19 SETTINGS_SOUND SOUND SETTINGS AUDIO EINSTELLUNGEN
20 PITCH_SPEED pitch/speed Ton höhe/geschwindigkeit
72 DL_SONG Download Song Nur Lied Herunterladen
73 DL_LIST Download Playlist Playliste Herunterladen
74 DL_DIALOG Do you want to download the song or the Entire playlist? Willst du die playlist herunterladen?
75 LANGUAGE Language: Sprache:
76 SELECT Select Auswählen
77
78
84
85
86
Binary file not shown.
Binary file not shown.