sdl3-bindings 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7b774bb4f1ac6496e89db960c4bc6e75bc78c6a63169f746f769d00901478bc7
4
- data.tar.gz: 7ee1b499852bba110c501dd9c052ee9707f8f954c076b67e3e7211453b6be4bb
3
+ metadata.gz: 3e694ccb5b4f2d460dd15cfecd8a41b221f07f1d1b188c8cfafac375f19781a2
4
+ data.tar.gz: 0e34eb57f3ea44da9687c804878ed3e38fc3954565e6d9be790dd3879dac987f
5
5
  SHA512:
6
- metadata.gz: a6c94bdaba07ec88ace683965cdfdcaa50a96c8f147487c944fc0c5e5158a8ad0af5de3f2de924f979fb3cafd9c119179e8dddb174be4dd26bc4901b81a850e4
7
- data.tar.gz: 1cd02de85363f81d2da049668008b4511d4fb9cbede8967262fb66db1c3a8a6bbd9e687c69b0f49c409b82d3935d871de33c43ba57a66ad9380f2aaeb3cf9912
6
+ metadata.gz: ea68fd759725f7bf258f4ff20cb758ba671ed8f7d9f954c9c89962e347d96a0f5945d7b1e3ef8bb61b4646826c3c3b8a627e8aaa1592a3032750eda11e3d09c8
7
+ data.tar.gz: 1b241cbbf0f0f1c3b9ac5c5ac6304447e113541da0b2b7ccf953effbf24c52a5fef8977ce68833e44f132af4405ce0164f6bbd18882fb9ece2ceca279aa4a081
data/ChangeLog CHANGED
@@ -1,3 +1,12 @@
1
+ 2026-03-11 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * SDL 3.4.2 ( https://github.com/libsdl-org/SDL/releases/tag/release-3.4.2 )
4
+ * SDL_mixer 3.2.0 ( https://github.com/libsdl-org/SDL_mixer/releases/tag/release-3.2.0 )
5
+
6
+ 2026-01-24 vaiorabbit <http://twitter.com/vaiorabbit>
7
+
8
+ * SDL_image 3.4.0 ( https://github.com/libsdl-org/SDL_image/releases/tag/release-3.4.0 )
9
+
1
10
  2026-01-10 vaiorabbit <http://twitter.com/vaiorabbit>
2
11
 
3
12
  * SDL 3.4.0 ( https://github.com/libsdl-org/SDL/releases/tag/release-3.4.0 )
data/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  # sdl3-bindings : SDL3 wrapper for Ruby #
4
4
 
5
5
  * Created : 2015-09-19
6
- * Last modified : 2026-01-10
6
+ * Last modified : 2026-03-11
7
7
 
8
8
  ## Features ##
9
9
 
@@ -23,10 +23,10 @@ See the project below to learn how to use this library:
23
23
 
24
24
  ## Target version ##
25
25
 
26
- * [2026-01-20]
27
- * SDL : [3.4.0](https://github.com/libsdl-org/SDL/releases/tag/release-3.4.0)
28
- * SDL_image : [3.2.6](https://github.com/libsdl-org/SDL_image/releases/tag/release-3.2.6)
29
- * SDL_mixer : [63f2c5a21760e3f1ad406ec8a8b18c6346f204b3](https://github.com/libsdl-org/SDL_mixer/commit/63f2c5a21760e3f1ad406ec8a8b18c6346f204b3)
26
+ * [2026-03-11]
27
+ * SDL : [3.4.2](https://github.com/libsdl-org/SDL/releases/tag/release-3.4.2)
28
+ * SDL_image : [3.4.0](https://github.com/libsdl-org/SDL_image/releases/tag/release-3.4.0)
29
+ * SDL_mixer : [3.2.0](https://github.com/libsdl-org/SDL_mixer/releases/tag/release-3.2.0)
30
30
  * SDL_sound : [0d55b53a78f2c82683b8723c4c8cecdc20396f7d](https://github.com/icculus/SDL_sound/commit/0d55b53a78f2c82683b8723c4c8cecdc20396f7d)
31
31
  * SDL_ttf : [24990fdfd68936022d9b9f6158f80a48ad3c30ab](https://github.com/libsdl-org/SDL_ttf/commit/24990fdfd68936022d9b9f6158f80a48ad3c30ab)
32
32
 
@@ -120,6 +120,18 @@ See the project below to learn how to use this library:
120
120
  * SDL_mixer : dd801fdd9af752c99c32a2356d2ebdf1ebb7ebaa
121
121
  * SDL_sound : 68d18fe0a1105d1043b9f62d5e37fca19c0cd2c1
122
122
  * SDL_ttf : 3.2.2
123
+ * [2026-01-10]
124
+ * SDL : [3.4.0](https://github.com/libsdl-org/SDL/releases/tag/release-3.4.0)
125
+ * SDL_image : [3.2.6](https://github.com/libsdl-org/SDL_image/releases/tag/release-3.2.6)
126
+ * SDL_mixer : [63f2c5a21760e3f1ad406ec8a8b18c6346f204b3](https://github.com/libsdl-org/SDL_mixer/commit/63f2c5a21760e3f1ad406ec8a8b18c6346f204b3)
127
+ * SDL_sound : [0d55b53a78f2c82683b8723c4c8cecdc20396f7d](https://github.com/icculus/SDL_sound/commit/0d55b53a78f2c82683b8723c4c8cecdc20396f7d)
128
+ * SDL_ttf : [24990fdfd68936022d9b9f6158f80a48ad3c30ab](https://github.com/libsdl-org/SDL_ttf/commit/24990fdfd68936022d9b9f6158f80a48ad3c30ab)
129
+ * [2026-01-24]
130
+ * SDL : [3.4.0](https://github.com/libsdl-org/SDL/releases/tag/release-3.4.0)
131
+ * SDL_image : [3.4.0](https://github.com/libsdl-org/SDL_image/releases/tag/release-3.4.0)
132
+ * SDL_mixer : [63f2c5a21760e3f1ad406ec8a8b18c6346f204b3](https://github.com/libsdl-org/SDL_mixer/commit/63f2c5a21760e3f1ad406ec8a8b18c6346f204b3)
133
+ * SDL_sound : [0d55b53a78f2c82683b8723c4c8cecdc20396f7d](https://github.com/icculus/SDL_sound/commit/0d55b53a78f2c82683b8723c4c8cecdc20396f7d)
134
+ * SDL_ttf : [24990fdfd68936022d9b9f6158f80a48ad3c30ab](https://github.com/libsdl-org/SDL_ttf/commit/24990fdfd68936022d9b9f6158f80a48ad3c30ab)
123
135
 
124
136
  </details>
125
137
 
data/lib/sdl3_audio.rb CHANGED
@@ -16,6 +16,7 @@ module SDL
16
16
  AUDIO_MASK_SIGNED = 1 << 15
17
17
  AUDIO_DEVICE_DEFAULT_PLAYBACK = 0xFFFFFFFF
18
18
  AUDIO_DEVICE_DEFAULT_RECORDING = 0xFFFFFFFE
19
+ PROP_AUDIOSTREAM_AUTO_CLEANUP_BOOLEAN = "SDL.audiostream.auto_cleanup"
19
20
 
20
21
  # Enum
21
22
 
data/lib/sdl3_gpu.rb CHANGED
@@ -51,8 +51,11 @@ module SDL
51
51
  PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOLEAN = "SDL.gpu.device.create.shaders.metallib"
52
52
  PROP_GPU_DEVICE_CREATE_D3D12_ALLOW_FEWER_RESOURCE_SLOTS_BOOLEAN = "SDL.gpu.device.create.d3d12.allowtier1resourcebinding"
53
53
  PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING = "SDL.gpu.device.create.d3d12.semantic"
54
+ PROP_GPU_DEVICE_CREATE_D3D12_AGILITY_SDK_VERSION_NUMBER = "SDL.gpu.device.create.d3d12.agility_sdk_version"
55
+ PROP_GPU_DEVICE_CREATE_D3D12_AGILITY_SDK_PATH_STRING = "SDL.gpu.device.create.d3d12.agility_sdk_path"
54
56
  PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEAN = "SDL.gpu.device.create.vulkan.requirehardwareacceleration"
55
57
  PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER = "SDL.gpu.device.create.vulkan.options"
58
+ PROP_GPU_DEVICE_CREATE_METAL_ALLOW_MACFAMILY1_BOOLEAN = "SDL.gpu.device.create.metal.allowmacfamily1"
56
59
  PROP_GPU_DEVICE_NAME_STRING = "SDL.gpu.device.name"
57
60
  PROP_GPU_DEVICE_DRIVER_NAME_STRING = "SDL.gpu.device.driver_name"
58
61
  PROP_GPU_DEVICE_DRIVER_VERSION_STRING = "SDL.gpu.device.driver_version"
data/lib/sdl3_hidapi.rb CHANGED
@@ -10,6 +10,7 @@ module SDL
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
+ PROP_HIDAPI_LIBUSB_DEVICE_HANDLE_POINTER = "SDL.hidapi.libusb.device.handle"
13
14
 
14
15
  # Enum
15
16
 
data/lib/sdl3_hints.rb CHANGED
@@ -174,6 +174,7 @@ module SDL
174
174
  HINT_OPENGL_LIBRARY = "SDL_OPENGL_LIBRARY"
175
175
  HINT_EGL_LIBRARY = "SDL_EGL_LIBRARY"
176
176
  HINT_OPENGL_ES_DRIVER = "SDL_OPENGL_ES_DRIVER"
177
+ HINT_OPENGL_FORCE_SRGB_FRAMEBUFFER = "SDL_OPENGL_FORCE_SRGB_FRAMEBUFFER"
177
178
  HINT_OPENVR_LIBRARY = "SDL_OPENVR_LIBRARY"
178
179
  HINT_ORIENTATIONS = "SDL_ORIENTATIONS"
179
180
  HINT_POLL_SENTINEL = "SDL_POLL_SENTINEL"
data/lib/sdl3_image.rb CHANGED
@@ -11,14 +11,19 @@ module SDL
11
11
  # Define/Macro
12
12
 
13
13
  IMAGE_MAJOR_VERSION = 3
14
- IMAGE_MINOR_VERSION = 2
15
- IMAGE_MICRO_VERSION = 6
14
+ IMAGE_MINOR_VERSION = 4
15
+ IMAGE_MICRO_VERSION = 0
16
16
 
17
17
  # Enum
18
18
 
19
+ IMG_DECODER_STATUS_INVALID = -1
20
+ IMG_DECODER_STATUS_OK = 0
21
+ IMG_DECODER_STATUS_FAILED = 1
22
+ IMG_DECODER_STATUS_COMPLETE = 2
19
23
 
20
24
  # Typedef
21
25
 
26
+ typedef :int, :IMG_AnimationDecoderStatus
22
27
 
23
28
  # Struct
24
29
 
@@ -38,35 +43,40 @@ module SDL
38
43
  def self.setup_image_symbols(output_error = false)
39
44
  entries = [
40
45
  [:IMG_Version, :IMG_Version, [], :int],
41
- [:IMG_LoadTyped_IO, :IMG_LoadTyped_IO, [:pointer, :bool, :pointer], :pointer],
42
46
  [:IMG_Load, :IMG_Load, [:pointer], :pointer],
43
47
  [:IMG_Load_IO, :IMG_Load_IO, [:pointer, :bool], :pointer],
48
+ [:IMG_LoadTyped_IO, :IMG_LoadTyped_IO, [:pointer, :bool, :pointer], :pointer],
44
49
  [:IMG_LoadTexture, :IMG_LoadTexture, [:pointer, :pointer], :pointer],
45
50
  [:IMG_LoadTexture_IO, :IMG_LoadTexture_IO, [:pointer, :pointer, :bool], :pointer],
46
51
  [:IMG_LoadTextureTyped_IO, :IMG_LoadTextureTyped_IO, [:pointer, :pointer, :bool, :pointer], :pointer],
52
+ [:IMG_LoadGPUTexture, :IMG_LoadGPUTexture, [:pointer, :pointer, :pointer, :pointer, :pointer], :pointer],
53
+ [:IMG_LoadGPUTexture_IO, :IMG_LoadGPUTexture_IO, [:pointer, :pointer, :pointer, :bool, :pointer, :pointer], :pointer],
54
+ [:IMG_LoadGPUTextureTyped_IO, :IMG_LoadGPUTextureTyped_IO, [:pointer, :pointer, :pointer, :bool, :pointer, :pointer, :pointer], :pointer],
55
+ [:IMG_GetClipboardImage, :IMG_GetClipboardImage, [], :pointer],
56
+ [:IMG_isANI, :IMG_isANI, [:pointer], :bool],
47
57
  [:IMG_isAVIF, :IMG_isAVIF, [:pointer], :bool],
48
- [:IMG_isICO, :IMG_isICO, [:pointer], :bool],
49
58
  [:IMG_isCUR, :IMG_isCUR, [:pointer], :bool],
50
59
  [:IMG_isBMP, :IMG_isBMP, [:pointer], :bool],
51
60
  [:IMG_isGIF, :IMG_isGIF, [:pointer], :bool],
61
+ [:IMG_isICO, :IMG_isICO, [:pointer], :bool],
52
62
  [:IMG_isJPG, :IMG_isJPG, [:pointer], :bool],
53
63
  [:IMG_isJXL, :IMG_isJXL, [:pointer], :bool],
54
64
  [:IMG_isLBM, :IMG_isLBM, [:pointer], :bool],
55
65
  [:IMG_isPCX, :IMG_isPCX, [:pointer], :bool],
56
66
  [:IMG_isPNG, :IMG_isPNG, [:pointer], :bool],
57
67
  [:IMG_isPNM, :IMG_isPNM, [:pointer], :bool],
58
- [:IMG_isSVG, :IMG_isSVG, [:pointer], :bool],
59
68
  [:IMG_isQOI, :IMG_isQOI, [:pointer], :bool],
69
+ [:IMG_isSVG, :IMG_isSVG, [:pointer], :bool],
60
70
  [:IMG_isTIF, :IMG_isTIF, [:pointer], :bool],
71
+ [:IMG_isWEBP, :IMG_isWEBP, [:pointer], :bool],
61
72
  [:IMG_isXCF, :IMG_isXCF, [:pointer], :bool],
62
73
  [:IMG_isXPM, :IMG_isXPM, [:pointer], :bool],
63
74
  [:IMG_isXV, :IMG_isXV, [:pointer], :bool],
64
- [:IMG_isWEBP, :IMG_isWEBP, [:pointer], :bool],
65
75
  [:IMG_LoadAVIF_IO, :IMG_LoadAVIF_IO, [:pointer], :pointer],
66
- [:IMG_LoadICO_IO, :IMG_LoadICO_IO, [:pointer], :pointer],
67
- [:IMG_LoadCUR_IO, :IMG_LoadCUR_IO, [:pointer], :pointer],
68
76
  [:IMG_LoadBMP_IO, :IMG_LoadBMP_IO, [:pointer], :pointer],
77
+ [:IMG_LoadCUR_IO, :IMG_LoadCUR_IO, [:pointer], :pointer],
69
78
  [:IMG_LoadGIF_IO, :IMG_LoadGIF_IO, [:pointer], :pointer],
79
+ [:IMG_LoadICO_IO, :IMG_LoadICO_IO, [:pointer], :pointer],
70
80
  [:IMG_LoadJPG_IO, :IMG_LoadJPG_IO, [:pointer], :pointer],
71
81
  [:IMG_LoadJXL_IO, :IMG_LoadJXL_IO, [:pointer], :pointer],
72
82
  [:IMG_LoadLBM_IO, :IMG_LoadLBM_IO, [:pointer], :pointer],
@@ -74,28 +84,66 @@ module SDL
74
84
  [:IMG_LoadPNG_IO, :IMG_LoadPNG_IO, [:pointer], :pointer],
75
85
  [:IMG_LoadPNM_IO, :IMG_LoadPNM_IO, [:pointer], :pointer],
76
86
  [:IMG_LoadSVG_IO, :IMG_LoadSVG_IO, [:pointer], :pointer],
87
+ [:IMG_LoadSizedSVG_IO, :IMG_LoadSizedSVG_IO, [:pointer, :int, :int], :pointer],
77
88
  [:IMG_LoadQOI_IO, :IMG_LoadQOI_IO, [:pointer], :pointer],
78
89
  [:IMG_LoadTGA_IO, :IMG_LoadTGA_IO, [:pointer], :pointer],
79
90
  [:IMG_LoadTIF_IO, :IMG_LoadTIF_IO, [:pointer], :pointer],
91
+ [:IMG_LoadWEBP_IO, :IMG_LoadWEBP_IO, [:pointer], :pointer],
80
92
  [:IMG_LoadXCF_IO, :IMG_LoadXCF_IO, [:pointer], :pointer],
81
93
  [:IMG_LoadXPM_IO, :IMG_LoadXPM_IO, [:pointer], :pointer],
82
94
  [:IMG_LoadXV_IO, :IMG_LoadXV_IO, [:pointer], :pointer],
83
- [:IMG_LoadWEBP_IO, :IMG_LoadWEBP_IO, [:pointer], :pointer],
84
- [:IMG_LoadSizedSVG_IO, :IMG_LoadSizedSVG_IO, [:pointer, :int, :int], :pointer],
85
95
  [:IMG_ReadXPMFromArray, :IMG_ReadXPMFromArray, [:pointer], :pointer],
86
96
  [:IMG_ReadXPMFromArrayToRGB888, :IMG_ReadXPMFromArrayToRGB888, [:pointer], :pointer],
97
+ [:IMG_Save, :IMG_Save, [:pointer, :pointer], :bool],
98
+ [:IMG_SaveTyped_IO, :IMG_SaveTyped_IO, [:pointer, :pointer, :bool, :pointer], :bool],
87
99
  [:IMG_SaveAVIF, :IMG_SaveAVIF, [:pointer, :pointer, :int], :bool],
88
100
  [:IMG_SaveAVIF_IO, :IMG_SaveAVIF_IO, [:pointer, :pointer, :bool, :int], :bool],
89
- [:IMG_SavePNG, :IMG_SavePNG, [:pointer, :pointer], :bool],
90
- [:IMG_SavePNG_IO, :IMG_SavePNG_IO, [:pointer, :pointer, :bool], :bool],
101
+ [:IMG_SaveBMP, :IMG_SaveBMP, [:pointer, :pointer], :bool],
102
+ [:IMG_SaveBMP_IO, :IMG_SaveBMP_IO, [:pointer, :pointer, :bool], :bool],
103
+ [:IMG_SaveCUR, :IMG_SaveCUR, [:pointer, :pointer], :bool],
104
+ [:IMG_SaveCUR_IO, :IMG_SaveCUR_IO, [:pointer, :pointer, :bool], :bool],
105
+ [:IMG_SaveGIF, :IMG_SaveGIF, [:pointer, :pointer], :bool],
106
+ [:IMG_SaveGIF_IO, :IMG_SaveGIF_IO, [:pointer, :pointer, :bool], :bool],
107
+ [:IMG_SaveICO, :IMG_SaveICO, [:pointer, :pointer], :bool],
108
+ [:IMG_SaveICO_IO, :IMG_SaveICO_IO, [:pointer, :pointer, :bool], :bool],
91
109
  [:IMG_SaveJPG, :IMG_SaveJPG, [:pointer, :pointer, :int], :bool],
92
110
  [:IMG_SaveJPG_IO, :IMG_SaveJPG_IO, [:pointer, :pointer, :bool, :int], :bool],
111
+ [:IMG_SavePNG, :IMG_SavePNG, [:pointer, :pointer], :bool],
112
+ [:IMG_SavePNG_IO, :IMG_SavePNG_IO, [:pointer, :pointer, :bool], :bool],
113
+ [:IMG_SaveTGA, :IMG_SaveTGA, [:pointer, :pointer], :bool],
114
+ [:IMG_SaveTGA_IO, :IMG_SaveTGA_IO, [:pointer, :pointer, :bool], :bool],
115
+ [:IMG_SaveWEBP, :IMG_SaveWEBP, [:pointer, :pointer, :float], :bool],
116
+ [:IMG_SaveWEBP_IO, :IMG_SaveWEBP_IO, [:pointer, :pointer, :bool, :float], :bool],
93
117
  [:IMG_LoadAnimation, :IMG_LoadAnimation, [:pointer], :pointer],
94
118
  [:IMG_LoadAnimation_IO, :IMG_LoadAnimation_IO, [:pointer, :bool], :pointer],
95
119
  [:IMG_LoadAnimationTyped_IO, :IMG_LoadAnimationTyped_IO, [:pointer, :bool, :pointer], :pointer],
96
- [:IMG_FreeAnimation, :IMG_FreeAnimation, [:pointer], :void],
120
+ [:IMG_LoadANIAnimation_IO, :IMG_LoadANIAnimation_IO, [:pointer], :pointer],
121
+ [:IMG_LoadAPNGAnimation_IO, :IMG_LoadAPNGAnimation_IO, [:pointer], :pointer],
122
+ [:IMG_LoadAVIFAnimation_IO, :IMG_LoadAVIFAnimation_IO, [:pointer], :pointer],
97
123
  [:IMG_LoadGIFAnimation_IO, :IMG_LoadGIFAnimation_IO, [:pointer], :pointer],
98
124
  [:IMG_LoadWEBPAnimation_IO, :IMG_LoadWEBPAnimation_IO, [:pointer], :pointer],
125
+ [:IMG_SaveAnimation, :IMG_SaveAnimation, [:pointer, :pointer], :bool],
126
+ [:IMG_SaveAnimationTyped_IO, :IMG_SaveAnimationTyped_IO, [:pointer, :pointer, :bool, :pointer], :bool],
127
+ [:IMG_SaveANIAnimation_IO, :IMG_SaveANIAnimation_IO, [:pointer, :pointer, :bool], :bool],
128
+ [:IMG_SaveAPNGAnimation_IO, :IMG_SaveAPNGAnimation_IO, [:pointer, :pointer, :bool], :bool],
129
+ [:IMG_SaveAVIFAnimation_IO, :IMG_SaveAVIFAnimation_IO, [:pointer, :pointer, :bool, :int], :bool],
130
+ [:IMG_SaveGIFAnimation_IO, :IMG_SaveGIFAnimation_IO, [:pointer, :pointer, :bool], :bool],
131
+ [:IMG_SaveWEBPAnimation_IO, :IMG_SaveWEBPAnimation_IO, [:pointer, :pointer, :bool, :int], :bool],
132
+ [:IMG_CreateAnimatedCursor, :IMG_CreateAnimatedCursor, [:pointer, :int, :int], :pointer],
133
+ [:IMG_FreeAnimation, :IMG_FreeAnimation, [:pointer], :void],
134
+ [:IMG_CreateAnimationEncoder, :IMG_CreateAnimationEncoder, [:pointer], :pointer],
135
+ [:IMG_CreateAnimationEncoder_IO, :IMG_CreateAnimationEncoder_IO, [:pointer, :bool, :pointer], :pointer],
136
+ [:IMG_CreateAnimationEncoderWithProperties, :IMG_CreateAnimationEncoderWithProperties, [:uint], :pointer],
137
+ [:IMG_AddAnimationEncoderFrame, :IMG_AddAnimationEncoderFrame, [:pointer, :pointer, :ulong_long], :bool],
138
+ [:IMG_CloseAnimationEncoder, :IMG_CloseAnimationEncoder, [:pointer], :bool],
139
+ [:IMG_CreateAnimationDecoder, :IMG_CreateAnimationDecoder, [:pointer], :pointer],
140
+ [:IMG_CreateAnimationDecoder_IO, :IMG_CreateAnimationDecoder_IO, [:pointer, :bool, :pointer], :pointer],
141
+ [:IMG_CreateAnimationDecoderWithProperties, :IMG_CreateAnimationDecoderWithProperties, [:uint], :pointer],
142
+ [:IMG_GetAnimationDecoderProperties, :IMG_GetAnimationDecoderProperties, [:pointer], :uint],
143
+ [:IMG_GetAnimationDecoderFrame, :IMG_GetAnimationDecoderFrame, [:pointer, :pointer, :pointer], :bool],
144
+ [:IMG_GetAnimationDecoderStatus, :IMG_GetAnimationDecoderStatus, [:pointer], :int],
145
+ [:IMG_ResetAnimationDecoder, :IMG_ResetAnimationDecoder, [:pointer], :bool],
146
+ [:IMG_CloseAnimationDecoder, :IMG_CloseAnimationDecoder, [:pointer], :bool],
99
147
  ]
100
148
  entries.each do |entry|
101
149
  attach_function entry[0], entry[1], entry[2], entry[3]
data/lib/sdl3_mixer.rb CHANGED
@@ -11,7 +11,7 @@ module SDL
11
11
  # Define/Macro
12
12
 
13
13
  MIXER_MAJOR_VERSION = 3
14
- MIXER_MINOR_VERSION = 1
14
+ MIXER_MINOR_VERSION = 2
15
15
  MIXER_MICRO_VERSION = 0
16
16
  MIX_PROP_MIXER_DEVICE_NUMBER = "SDL_mixer.mixer.device"
17
17
  MIX_PROP_AUDIO_LOAD_IOSTREAM_POINTER = "SDL_mixer.audio.load.iostream"
@@ -40,8 +40,10 @@ module SDL
40
40
  MIX_PROP_PLAY_LOOP_START_MILLISECOND_NUMBER = "SDL_mixer.play.loop_start_millisecond"
41
41
  MIX_PROP_PLAY_FADE_IN_FRAMES_NUMBER = "SDL_mixer.play.fade_in_frames"
42
42
  MIX_PROP_PLAY_FADE_IN_MILLISECONDS_NUMBER = "SDL_mixer.play.fade_in_milliseconds"
43
+ MIX_PROP_PLAY_FADE_IN_START_GAIN_FLOAT = "SDL_mixer.play.fade_in_start_gain"
43
44
  MIX_PROP_PLAY_APPEND_SILENCE_FRAMES_NUMBER = "SDL_mixer.play.append_silence_frames"
44
45
  MIX_PROP_PLAY_APPEND_SILENCE_MILLISECONDS_NUMBER = "SDL_mixer.play.append_silence_milliseconds"
46
+ MIX_PROP_PLAY_HALT_WHEN_EXHAUSTED_BOOLEAN = "SDL_mixer.play.halt_when_exhausted"
45
47
 
46
48
  # Enum
47
49
 
@@ -85,13 +87,16 @@ module SDL
85
87
  [:MIX_DestroyMixer, :MIX_DestroyMixer, [:pointer], :void],
86
88
  [:MIX_GetMixerProperties, :MIX_GetMixerProperties, [:pointer], :uint],
87
89
  [:MIX_GetMixerFormat, :MIX_GetMixerFormat, [:pointer, :pointer], :bool],
90
+ [:MIX_LockMixer, :MIX_LockMixer, [:pointer], :void],
91
+ [:MIX_UnlockMixer, :MIX_UnlockMixer, [:pointer], :void],
88
92
  [:MIX_LoadAudio_IO, :MIX_LoadAudio_IO, [:pointer, :pointer, :bool, :bool], :pointer],
89
93
  [:MIX_LoadAudio, :MIX_LoadAudio, [:pointer, :pointer, :bool], :pointer],
94
+ [:MIX_LoadAudioNoCopy, :MIX_LoadAudioNoCopy, [:pointer, :pointer, :ulong_long, :bool], :pointer],
90
95
  [:MIX_LoadAudioWithProperties, :MIX_LoadAudioWithProperties, [:uint], :pointer],
91
96
  [:MIX_LoadRawAudio_IO, :MIX_LoadRawAudio_IO, [:pointer, :pointer, :pointer, :bool], :pointer],
92
97
  [:MIX_LoadRawAudio, :MIX_LoadRawAudio, [:pointer, :pointer, :ulong_long, :pointer], :pointer],
93
98
  [:MIX_LoadRawAudioNoCopy, :MIX_LoadRawAudioNoCopy, [:pointer, :pointer, :ulong_long, :pointer, :bool], :pointer],
94
- [:MIX_CreateSineWaveAudio, :MIX_CreateSineWaveAudio, [:pointer, :int, :float], :pointer],
99
+ [:MIX_CreateSineWaveAudio, :MIX_CreateSineWaveAudio, [:pointer, :int, :float, :long_long], :pointer],
95
100
  [:MIX_GetAudioProperties, :MIX_GetAudioProperties, [:pointer], :uint],
96
101
  [:MIX_GetAudioDuration, :MIX_GetAudioDuration, [:pointer], :long_long],
97
102
  [:MIX_GetAudioFormat, :MIX_GetAudioFormat, [:pointer, :pointer], :bool],
@@ -111,7 +116,7 @@ module SDL
111
116
  [:MIX_SetTrackPlaybackPosition, :MIX_SetTrackPlaybackPosition, [:pointer, :long_long], :bool],
112
117
  [:MIX_GetTrackPlaybackPosition, :MIX_GetTrackPlaybackPosition, [:pointer], :long_long],
113
118
  [:MIX_GetTrackFadeFrames, :MIX_GetTrackFadeFrames, [:pointer], :long_long],
114
- [:MIX_TrackLooping, :MIX_TrackLooping, [:pointer], :bool],
119
+ [:MIX_GetTrackLoops, :MIX_GetTrackLoops, [:pointer], :int],
115
120
  [:MIX_SetTrackLoops, :MIX_SetTrackLoops, [:pointer, :int], :bool],
116
121
  [:MIX_GetTrackAudio, :MIX_GetTrackAudio, [:pointer], :pointer],
117
122
  [:MIX_GetTrackAudioStream, :MIX_GetTrackAudioStream, [:pointer], :pointer],
@@ -136,11 +141,13 @@ module SDL
136
141
  [:MIX_ResumeTag, :MIX_ResumeTag, [:pointer, :pointer], :bool],
137
142
  [:MIX_TrackPlaying, :MIX_TrackPlaying, [:pointer], :bool],
138
143
  [:MIX_TrackPaused, :MIX_TrackPaused, [:pointer], :bool],
139
- [:MIX_SetMasterGain, :MIX_SetMasterGain, [:pointer, :float], :bool],
140
- [:MIX_GetMasterGain, :MIX_GetMasterGain, [:pointer], :float],
144
+ [:MIX_SetMixerGain, :MIX_SetMixerGain, [:pointer, :float], :bool],
145
+ [:MIX_GetMixerGain, :MIX_GetMixerGain, [:pointer], :float],
141
146
  [:MIX_SetTrackGain, :MIX_SetTrackGain, [:pointer, :float], :bool],
142
147
  [:MIX_GetTrackGain, :MIX_GetTrackGain, [:pointer], :float],
143
148
  [:MIX_SetTagGain, :MIX_SetTagGain, [:pointer, :pointer, :float], :bool],
149
+ [:MIX_SetMixerFrequencyRatio, :MIX_SetMixerFrequencyRatio, [:pointer, :float], :bool],
150
+ [:MIX_GetMixerFrequencyRatio, :MIX_GetMixerFrequencyRatio, [:pointer], :float],
144
151
  [:MIX_SetTrackFrequencyRatio, :MIX_SetTrackFrequencyRatio, [:pointer, :float], :bool],
145
152
  [:MIX_GetTrackFrequencyRatio, :MIX_GetTrackFrequencyRatio, [:pointer], :float],
146
153
  [:MIX_SetTrackOutputChannelMap, :MIX_SetTrackOutputChannelMap, [:pointer, :pointer, :int], :bool],
@@ -157,7 +164,7 @@ module SDL
157
164
  [:MIX_SetTrackCookedCallback, :MIX_SetTrackCookedCallback, [:pointer, :MIX_TrackMixCallback, :pointer], :bool],
158
165
  [:MIX_SetGroupPostMixCallback, :MIX_SetGroupPostMixCallback, [:pointer, :MIX_GroupMixCallback, :pointer], :bool],
159
166
  [:MIX_SetPostMixCallback, :MIX_SetPostMixCallback, [:pointer, :MIX_PostMixCallback, :pointer], :bool],
160
- [:MIX_Generate, :MIX_Generate, [:pointer, :pointer, :int], :bool],
167
+ [:MIX_Generate, :MIX_Generate, [:pointer, :pointer, :int], :int],
161
168
  [:MIX_CreateAudioDecoder, :MIX_CreateAudioDecoder, [:pointer, :uint], :pointer],
162
169
  [:MIX_CreateAudioDecoder_IO, :MIX_CreateAudioDecoder_IO, [:pointer, :bool, :uint], :pointer],
163
170
  [:MIX_DestroyAudioDecoder, :MIX_DestroyAudioDecoder, [:pointer], :void],
data/lib/sdl3_revision.rb CHANGED
@@ -10,7 +10,7 @@ module SDL
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
- REVISION = "SDL-release-3.4.0-0-ga962f40bb"
13
+ REVISION = "SDL-release-3.4.2-0-g683181b47"
14
14
 
15
15
  # Enum
16
16
 
data/lib/sdl3_sound.rb CHANGED
@@ -10,6 +10,9 @@ module SDL
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
+ SOUND_MAJOR_VERSION = 3
14
+ SOUND_MINOR_VERSION = 0
15
+ SOUND_MICRO_VERSION = 0
13
16
 
14
17
  # Enum
15
18
 
data/lib/sdl3_version.rb CHANGED
@@ -12,7 +12,7 @@ module SDL
12
12
 
13
13
  MAJOR_VERSION = 3
14
14
  MINOR_VERSION = 4
15
- MICRO_VERSION = 0
15
+ MICRO_VERSION = 2
16
16
 
17
17
  # Enum
18
18
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sdl3-bindings
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - vaiorabbit