Simon Proctor 5e8f722c91 Change warning ignores to use a string identifier (#842) %!s(int64=2) %!d(string=hai) anos
..
screenshots fcc7d5c723 Optimize PNG images using oxipng %!s(int64=5) %!d(string=hai) anos
README.md d4bf89d364 Link to the asset library from the README of each demo %!s(int64=5) %!d(string=hai) anos
bpm_sync.gd 5e8f722c91 Change warning ignores to use a string identifier (#842) %!s(int64=2) %!d(string=hai) anos
bpm_sync.tscn 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
icon.png fcc7d5c723 Optimize PNG images using oxipng %!s(int64=5) %!d(string=hai) anos
icon.png.import 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
lcd.ttf e22a46f301 Add a BPM sync tutorial. %!s(int64=6) %!d(string=hai) anos
lcd.ttf.import 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
play_sound_button.png fcc7d5c723 Optimize PNG images using oxipng %!s(int64=5) %!d(string=hai) anos
play_sound_button.png.import 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
play_sound_button_hl.png fcc7d5c723 Optimize PNG images using oxipng %!s(int64=5) %!d(string=hai) anos
play_sound_button_hl.png.import 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
play_system_button.png fcc7d5c723 Optimize PNG images using oxipng %!s(int64=5) %!d(string=hai) anos
play_system_button.png.import 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
play_system_button_hl.png fcc7d5c723 Optimize PNG images using oxipng %!s(int64=5) %!d(string=hai) anos
play_system_button_hl.png.import 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
project.godot 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos
the_comeback2.ogg e22a46f301 Add a BPM sync tutorial. %!s(int64=6) %!d(string=hai) anos
the_comeback2.ogg.import 0e2c5ad182 Update Audio demos to Godot 4 %!s(int64=3) %!d(string=hai) anos

README.md

Audio BPM Sync

A demo of how to sync the audio playback with the time for a consistent BPM.

Language: GDScript

Renderer: GLES 2

Check out this demo on the asset library: https://godotengine.org/asset-library/asset/581

How does it work?

For the sound clock, it uses methods in AudioServer to sync the audio playback. For the system clock, it uses OS.get_ticks_usec().

Screenshots

Screenshot