From 12ea20f27050493b322934878cdcc4612028ff36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabor=20K=C3=B6rber?= Date: Mon, 17 Jul 2023 22:43:55 +0200 Subject: [PATCH] initial. --- .gitignore | 1 + Cargo.lock | 1638 +++++++++++++++++++++++++++++++ Cargo.toml | 18 + sounds/example/liv_aaaaaaaa.mp3 | Bin 0 -> 210545 bytes src/bin/script_files.rs | 21 + src/bin/test_play.rs | 70 ++ src/lib.rs | 2 + src/main.rs | 75 ++ src/soundclips.rs | 79 ++ src/vbplay.rs | 91 ++ templates/index.html | 14 + 11 files changed, 2009 insertions(+) create mode 100644 .gitignore create mode 100644 Cargo.lock create mode 100644 Cargo.toml create mode 100644 sounds/example/liv_aaaaaaaa.mp3 create mode 100644 src/bin/script_files.rs create mode 100644 src/bin/test_play.rs create mode 100644 src/lib.rs create mode 100644 src/main.rs create mode 100644 src/soundclips.rs create mode 100644 src/vbplay.rs create mode 100644 templates/index.html diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea8c4bf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/target diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..2ea1bdb --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,1638 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "addr2line" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "aho-corasick" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41" +dependencies = [ + "memchr", +] + +[[package]] +name = "alsa" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8512c9117059663fb5606788fbca3619e2a91dac0e3fe516242eab1fa6be5e44" +dependencies = [ + "alsa-sys", + "bitflags", + "libc", + "nix", +] + +[[package]] +name = "alsa-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" +dependencies = [ + "libc", + "pkg-config", +] + +[[package]] +name = "arrayvec" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + +[[package]] +name = "async-trait" +version = "0.1.71" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a564d521dd56509c4c47480d00b80ee55f7e385ae48db5744c67ad50c92d2ebf" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.23", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "axum" +version = "0.6.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8175979259124331c1d7bf6586ee7e0da434155e4b2d48ec2c8386281d8df39" +dependencies = [ + "async-trait", + "axum-core", + "bitflags", + "bytes", + "futures-util", + "http", + "http-body", + "hyper", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper", + "tokio", + "tower", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http", + "http-body", + "mime", + "rustversion", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum-template" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbbaf6e2308fa02c927b6ee5dc17cef320caa3594f3297121a02b3514dea546a" +dependencies = [ + "axum", + "minijinja", + "serde", + "thiserror", +] + +[[package]] +name = "backtrace" +version = "0.3.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] + +[[package]] +name = "bindgen" +version = "0.64.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4" +dependencies = [ + "bitflags", + "cexpr", + "clang-sys", + "lazy_static", + "lazycell", + "peeking_take_while", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 1.0.109", +] + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bumpalo" +version = "3.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" + +[[package]] +name = "bytemuck" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" + +[[package]] +name = "byteorder" +version = "1.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" + +[[package]] +name = "bytes" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" + +[[package]] +name = "cc" +version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" +dependencies = [ + "jobserver", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "clang-sys" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" +dependencies = [ + "glob", + "libc", + "libloading", +] + +[[package]] +name = "claxon" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bfbf56724aa9eca8afa4fcfadeb479e722935bb2a0900c2d37e0cc477af0688" + +[[package]] +name = "combine" +version = "4.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "core-foundation-sys" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b" + +[[package]] +name = "core-foundation-sys" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" + +[[package]] +name = "coreaudio-rs" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb17e2d1795b1996419648915df94bc7103c28f7b48062d7acf4652fc371b2ff" +dependencies = [ + "bitflags", + "core-foundation-sys 0.6.2", + "coreaudio-sys", +] + +[[package]] +name = "coreaudio-sys" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f034b2258e6c4ade2f73bf87b21047567fb913ee9550837c2316d139b0262b24" +dependencies = [ + "bindgen", +] + +[[package]] +name = "cpal" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d959d90e938c5493000514b446987c07aed46c668faaa7d34d6c7a67b1a578c" +dependencies = [ + "alsa", + "core-foundation-sys 0.8.4", + "coreaudio-rs", + "dasp_sample", + "jni 0.19.0", + "js-sys", + "libc", + "mach2", + "ndk", + "ndk-context", + "oboe", + "once_cell", + "parking_lot", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows", +] + +[[package]] +name = "dasp_sample" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f" + +[[package]] +name = "encoding_rs" +version = "0.8.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "equivalent" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88bffebc5d80432c9b140ee17875ff173a8ab62faad5b257da912bd2f6c1c0a1" + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "form_urlencoded" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futures-channel" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +dependencies = [ + "futures-core", +] + +[[package]] +name = "futures-core" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" + +[[package]] +name = "futures-task" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" + +[[package]] +name = "futures-util" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +dependencies = [ + "futures-core", + "futures-task", + "pin-project-lite", + "pin-utils", +] + +[[package]] +name = "gimli" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "hashbrown" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" + +[[package]] +name = "hermit-abi" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" + +[[package]] +name = "hound" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d13cdbd5dbb29f9c88095bbdc2590c9cba0d0a1269b983fef6b2cdd7e9f4db1" + +[[package]] +name = "http" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +dependencies = [ + "bytes", + "http", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" + +[[package]] +name = "hyper" +version = "0.14.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "indexmap" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "itoa" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b02a5381cc465bd3041d84623d0fa3b66738b52b8e2fc3bab8ad63ab032f4a" + +[[package]] +name = "jni" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec" +dependencies = [ + "cesu8", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", +] + +[[package]] +name = "jni" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c" +dependencies = [ + "cesu8", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "jobserver" +version = "0.1.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2" +dependencies = [ + "libc", +] + +[[package]] +name = "js-sys" +version = "0.3.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "lazycell" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + +[[package]] +name = "lewton" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030" +dependencies = [ + "byteorder", + "ogg", + "tinyvec", +] + +[[package]] +name = "libc" +version = "0.2.147" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" + +[[package]] +name = "libloading" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +dependencies = [ + "cfg-if", + "winapi", +] + +[[package]] +name = "lock_api" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" + +[[package]] +name = "mach" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" +dependencies = [ + "libc", +] + +[[package]] +name = "mach2" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d0d1830bcd151a6fc4aea1369af235b36c1528fe976b8ff678683c9995eade8" +dependencies = [ + "libc", +] + +[[package]] +name = "matchit" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40" + +[[package]] +name = "memchr" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" + +[[package]] +name = "memo-map" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aec276c09560ce4447087aaefc19eb0c18d97e31bd05ebac38881c4723400c40" + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "minijinja" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40870a194358132836de5c67e5038c279de3bff7a05f5da201ed13f6064b979" +dependencies = [ + "memo-map", + "self_cell", + "serde", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "minimp3" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "985438f75febf74c392071a975a29641b420dd84431135a6e6db721de4b74372" +dependencies = [ + "minimp3-sys", + "slice-deque", + "thiserror", +] + +[[package]] +name = "minimp3-sys" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e21c73734c69dc95696c9ed8926a2b393171d98b3f5f5935686a26a487ab9b90" +dependencies = [ + "cc", +] + +[[package]] +name = "miniz_oxide" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" +dependencies = [ + "libc", + "wasi", + "windows-sys", +] + +[[package]] +name = "ndk" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0" +dependencies = [ + "bitflags", + "jni-sys", + "ndk-sys", + "num_enum", + "raw-window-handle", + "thiserror", +] + +[[package]] +name = "ndk-context" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" + +[[package]] +name = "ndk-sys" +version = "0.4.1+23.1.7779620" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3" +dependencies = [ + "jni-sys", +] + +[[package]] +name = "nix" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" +dependencies = [ + "bitflags", + "cfg-if", + "libc", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "num-derive" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "num-traits" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "object" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1" +dependencies = [ + "memchr", +] + +[[package]] +name = "oboe" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8868cc237ee02e2d9618539a23a8d228b9bb3fc2e7a5b11eed3831de77c395d0" +dependencies = [ + "jni 0.20.0", + "ndk", + "ndk-context", + "num-derive", + "num-traits", + "oboe-sys", +] + +[[package]] +name = "oboe-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f44155e7fb718d3cfddcf70690b2b51ac4412f347cd9e4fbe511abe9cd7b5f2" +dependencies = [ + "cc", +] + +[[package]] +name = "ogg" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" +dependencies = [ + "byteorder", +] + +[[package]] +name = "once_cell" +version = "1.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.48.1", +] + +[[package]] +name = "peeking_take_while" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" + +[[package]] +name = "percent-encoding" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" + +[[package]] +name = "pin-project" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "030ad2bc4db10a8944cb0d837f158bdfec4d4a4873ab701a95046770d11f8842" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec2e072ecce94ec471b13398d5402c188e76ac03cf74dd1a975161b23a3f6d9c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.23", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c40d25201921e5ff0c862a505c6557ea88568a4e3ace775ab55e93f2f4f9d57" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkg-config" +version = "0.3.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" + +[[package]] +name = "proc-macro-crate" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +dependencies = [ + "once_cell", + "toml_edit", +] + +[[package]] +name = "proc-macro2" +version = "1.0.63" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "raw-window-handle" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9" + +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags", +] + +[[package]] +name = "regex" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89089e897c013b3deb627116ae56a6955a72b8bed395c9526af31c9fe528b484" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa250384981ea14565685dea16a9ccc4d1c541a13f82b9c168572264d1df8c56" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ab07dc67230e4a4718e70fd5c20055a4334b121f1f9db8fe63ef39ce9b8c846" + +[[package]] +name = "rodio" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdf1d4dea18dff2e9eb6dca123724f8b60ef44ad74a9ad283cdfe025df7e73fa" +dependencies = [ + "claxon", + "cpal", + "hound", + "lewton", + "symphonia", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustversion" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc31bd9b61a32c31f9650d18add92aa83a49ba979c143eefd27fe7177b05bd5f" + +[[package]] +name = "ryu" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "scopeguard" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" + +[[package]] +name = "self_cell" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c309e515543e67811222dbc9e3dd7e1056279b782e1dacffe4242b718734fb6" + +[[package]] +name = "serde" +version = "1.0.167" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7daf513456463b42aa1d94cff7e0c24d682b429f020b9afa4f5ba5c40a22b237" + +[[package]] +name = "serde_json" +version = "1.0.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f1e14e89be7aa4c4b78bdbdc9eb5bf8517829a600ae8eaa39a6e1d960b5185c" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_path_to_error" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8acc4422959dd87a76cb117c191dcbffc20467f06c9100b76721dab370f24d3a" +dependencies = [ + "itoa", + "serde", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "shlex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" + +[[package]] +name = "signal-hook-registry" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" +dependencies = [ + "libc", +] + +[[package]] +name = "slice-deque" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31ef6ee280cdefba6d2d0b4b78a84a1c1a3f3a4cec98c2d4231c8bc225de0f25" +dependencies = [ + "libc", + "mach", + "winapi", +] + +[[package]] +name = "smallvec" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" + +[[package]] +name = "socket2" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "soundboard" +version = "0.1.0" +dependencies = [ + "axum", + "axum-template", + "cpal", + "minijinja", + "minimp3", + "regex", + "rodio", + "tokio", + "xxhash-rust", +] + +[[package]] +name = "symphonia" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62e48dba70095f265fdb269b99619b95d04c89e619538138383e63310b14d941" +dependencies = [ + "lazy_static", + "symphonia-bundle-mp3", + "symphonia-core", + "symphonia-metadata", +] + +[[package]] +name = "symphonia-bundle-mp3" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f31d7fece546f1e6973011a9eceae948133bbd18fd3d52f6073b1e38ae6368a" +dependencies = [ + "bitflags", + "lazy_static", + "log", + "symphonia-core", + "symphonia-metadata", +] + +[[package]] +name = "symphonia-core" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7c73eb88fee79705268cc7b742c7bc93a7b76e092ab751d0833866970754142" +dependencies = [ + "arrayvec", + "bitflags", + "bytemuck", + "lazy_static", + "log", +] + +[[package]] +name = "symphonia-metadata" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89c3e1937e31d0e068bbe829f66b2f2bfaa28d056365279e0ef897172c3320c0" +dependencies = [ + "encoding_rs", + "lazy_static", + "log", + "symphonia-core", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59fb7d6d8281a51045d62b8eb3a7d1ce347b76f312af50cd3dc0af39c87c1737" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "thiserror" +version = "1.0.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a35fc5b8971143ca348fa6df4f024d4d55264f3468c71ad1c2f365b0a4d58c42" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "463fe12d7993d3b327787537ce8dd4dfa058de32fc2b195ef3cde03dc4771e8f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.23", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da" +dependencies = [ + "autocfg", + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "parking_lot", + "pin-project-lite", + "signal-hook-registry", + "socket2", + "tokio-macros", + "windows-sys", +] + +[[package]] +name = "tokio-macros" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.23", +] + +[[package]] +name = "toml_datetime" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" + +[[package]] +name = "toml_edit" +version = "0.19.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c500344a19072298cd05a7224b3c0c629348b78692bf48466c5238656e315a78" +dependencies = [ + "indexmap", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "pin-project", + "pin-project-lite", + "tokio", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower-layer" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" + +[[package]] +name = "tower-service" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + +[[package]] +name = "tracing" +version = "0.1.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +dependencies = [ + "cfg-if", + "log", + "pin-project-lite", + "tracing-core", +] + +[[package]] +name = "tracing-core" +version = "0.1.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" +dependencies = [ + "once_cell", +] + +[[package]] +name = "try-lock" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" + +[[package]] +name = "unicode-ident" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73" + +[[package]] +name = "walkdir" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.23", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.23", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" + +[[package]] +name = "web-sys" +version = "0.3.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdacb41e6a96a052c6cb63a144f24900236121c6f63f4f8219fef5977ecb0c25" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.1", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.48.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" +dependencies = [ + "windows_aarch64_gnullvm 0.48.0", + "windows_aarch64_msvc 0.48.0", + "windows_i686_gnu 0.48.0", + "windows_i686_msvc 0.48.0", + "windows_x86_64_gnu 0.48.0", + "windows_x86_64_gnullvm 0.48.0", + "windows_x86_64_msvc 0.48.0", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" + +[[package]] +name = "winnow" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9482fe6ceabdf32f3966bfdd350ba69256a97c30253dc616fe0005af24f164e" +dependencies = [ + "memchr", +] + +[[package]] +name = "xxhash-rust" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "735a71d46c4d68d71d4b24d03fdc2b98e38cea81730595801db779c04fe80d70" diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..a0affa6 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,18 @@ +[package] +name = "soundboard" +version = "0.1.0" +edition = "2021" +default-run = "soundboard" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +axum = "0.6.18" +axum-template = { version = "0.19.0", features = ["minijinja"] } +cpal = "0.15.2" +minijinja = { version = "1.0.3", features = ["loader"] } +minimp3 = "0.5.1" +regex = "1.9.0" +rodio = "0.17.1" +tokio = { version = "1.29.1", features = ["full"] } +xxhash-rust = { version = "0.8.6", features = ["xxh3", "const_xxh3"] } diff --git a/sounds/example/liv_aaaaaaaa.mp3 b/sounds/example/liv_aaaaaaaa.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..b2ab67a45321b756e655813fa2c947f8a3c78cff GIT binary patch literal 210545 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 (@@JYwY>P7g=)dGF56wg~pG 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%0DC{6&fL-PwhRH;KYPz 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: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

W69F^;RPmV9+$XBY_? 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%0AeU-v7Lw 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 literal 0 HcmV?d00001 diff --git a/src/bin/script_files.rs b/src/bin/script_files.rs new file mode 100644 index 0000000..d002c65 --- /dev/null +++ b/src/bin/script_files.rs @@ -0,0 +1,21 @@ +use soundboard::soundclips::*; + +fn main() { + println!("Starting..."); + if let Some(sound_clips) = scan_directory_for_clips( + "D:/work/workspace/rust_explore/soundboard/sounds/example", + &["mp3", "wav"], + ) { + println!("Sound clips found: {}", sound_clips.len()); + println!( + "{}", + sound_clips + .iter() + .map(|clip| format!("{}", clip)) + .collect::>() + .join("\n") + ); + } else { + println!("No clips found."); + } +} diff --git a/src/bin/test_play.rs b/src/bin/test_play.rs new file mode 100644 index 0000000..082a41a --- /dev/null +++ b/src/bin/test_play.rs @@ -0,0 +1,70 @@ +use cpal::traits::{DeviceTrait, HostTrait}; +use cpal::{Device, Host}; +use minimp3::{Decoder, Error}; +use regex::Regex; +use std::fs::File; +use std::io::Cursor; +use std::io::Read; + +fn list_devices(host: &Host) -> Vec { + let devices = host.output_devices().unwrap(); + devices.map(|device| device.name().unwrap()).collect() +} + +fn find_device_index_regex(devices: Vec, pattern: &str) -> Option { + let re = Regex::new(pattern).unwrap(); + devices.iter().position(|device| re.is_match(device)) +} + +fn select_device(host: &Host, i: usize) -> Option { + host.output_devices().unwrap().nth(i) +} + +fn find_virtual_audio_cable() -> Option { + let host = cpal::default_host(); + let devices = list_devices(&host); + println!("Devices: {:?}", devices); + + let pattern = ".*VB-Audio Virtual Cable.*"; + if let Some(index) = find_device_index_regex(devices, pattern) { + println!("Selecting Device: \"{}\" at index {:?}", pattern, index); + return select_device(&host, index); + } + return None; +} + +fn load_and_play_mp3(device: &Device, file_name: &str) { + let mut mp3_file = File::open(file_name).unwrap(); + let mut mp3_data = Vec::new(); + mp3_file.read_to_end(&mut mp3_data).unwrap(); + + // Create a rodio Sink connected to our device + let (_stream, stream_handle) = rodio::OutputStream::try_from_device(&device).unwrap(); + let sink = rodio::Sink::try_new(&stream_handle).unwrap(); + + // Iterate over the MP3 frames and play them + let mut decoder = Decoder::new(Cursor::new(mp3_data)); + loop { + match decoder.next_frame() { + Ok(frame) => { + let source = rodio::buffer::SamplesBuffer::new( + 2, + frame.sample_rate.try_into().unwrap(), + &*frame.data, + ); + sink.append(source); + } + Err(Error::Eof) => break, + Err(e) => panic!("{:?}", e), + } + } + // Wait for the sound to finish + sink.sleep_until_end(); +} + +fn main() { + let file_name = "sounds/example/liv_aaaaaaaa.mp3"; + let device = find_virtual_audio_cable().unwrap(); + + load_and_play_mp3(&device, file_name); +} diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 0000000..8035581 --- /dev/null +++ b/src/lib.rs @@ -0,0 +1,2 @@ +pub mod soundclips; +pub mod vbplay; diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..13a1a25 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,75 @@ +use axum::{routing, Router}; +use axum_template::{engine::Engine, Key, RenderHtml}; +use minijinja::{path_loader, Environment}; +use std::net::SocketAddr; + +use std::thread; +use std::time::Duration; + +mod soundclips; +mod vbplay; + +type AppEngine = Engine>; + +fn play_liv() { + let file_name = "sounds/example/liv_aaaaaaaa.mp3"; + let tx = vbplay::audio_thread(); + + tx.send(vbplay::Command::Play(file_name.into())).unwrap(); + + thread::sleep(Duration::from_secs(5)); + + tx.send(vbplay::Command::Stop).unwrap(); +} + +#[tokio::main] +async fn main() { + let mut jinja = Environment::new(); + jinja.set_loader(path_loader("templates")); + + // Set the address to run our application on + let addr = SocketAddr::from(([127, 0, 0, 1], 3000)); + + // Build our application with a route + let app = Router::new() + .route("/", routing::get(home)) + .route("/play/:x", routing::get(play_handler)) + .with_state(Engine::from(jinja)); + + println!("listening on {}", addr); + + // Run it with hyper + axum::Server::bind(&addr) + .serve(app.into_make_service()) + .await + .unwrap(); +} + +async fn home(engine: AppEngine) -> impl axum::response::IntoResponse { + RenderHtml(Key("index.html".to_owned()), engine, ()) +} + +async fn root_handler() -> axum::response::Html<&'static str> { + let html = r#" + + + + Play + + + + + + + "#; + html.into() +} + +async fn play_handler(axum::extract::Path(x): axum::extract::Path) -> String { + play_liv(); + format!("You sent: {}", x) +} diff --git a/src/soundclips.rs b/src/soundclips.rs new file mode 100644 index 0000000..185db51 --- /dev/null +++ b/src/soundclips.rs @@ -0,0 +1,79 @@ +use std::ffi::OsStr; +use std::fmt; +use std::fs; + +#[derive(Debug, Clone)] +pub struct SoundClip { + hash: String, + file_name: String, +} + +impl fmt::Display for SoundClip { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + write!( + f, + "SoundClip (hash: {}, file_name: {})", + self.hash, self.file_name + ) + } +} + +impl SoundClip { + pub fn new(file_name: String) -> Self { + Self { + hash: encode_filename(&file_name), + file_name: file_name, + } + } + + pub fn hash(&self) -> &String { + &self.hash + } + + pub fn file_name(&self) -> &String { + &self.file_name + } +} + +fn encode_filename(file_name: &str) -> String { + let hash = xxhash_rust::xxh3::xxh3_64(file_name.as_bytes()); + let hash_hex = format!("{:x}", hash); + hash_hex +} + +pub fn scan_directory_for_clips(directory: &str, extensions: &[&str]) -> Option> { + let mut sound_clips = Vec::new(); + + if let Ok(entries) = fs::read_dir(directory) { + for entry in entries { + if let Ok(entry) = entry { + let path = entry.path(); + if path.is_file() { + if let Some(ext) = path.extension() { + if extensions.iter().any(|&e| ext == OsStr::new(e)) { + let file_name = path.file_name().unwrap().to_str().unwrap().to_string(); + /* + the calls to unwrap() are more or less "safe" because: + + file_name() only returns None if the path ends in "..", which won't be the case for paths returned by read_dir. + to_str() only returns None if the file name isn't valid Unicode, which is quite rare on most modern file systems. + */ + let sound_clip = SoundClip::new(file_name); + sound_clips.push(sound_clip); + } + } + } + } else { + println!("Failed to read directory entry: {}", entry.unwrap_err()); + } + } + } else { + println!( + "Failed to read directory: {}", + fs::read_dir(directory).unwrap_err() + ); + return None; + } + + Some(sound_clips) +} diff --git a/src/vbplay.rs b/src/vbplay.rs new file mode 100644 index 0000000..30f1c90 --- /dev/null +++ b/src/vbplay.rs @@ -0,0 +1,91 @@ +use cpal::traits::{DeviceTrait, HostTrait}; +use cpal::{Device, Host}; +use minimp3::{Decoder, Error}; +use regex::Regex; +use std::fs::File; +use std::io::Cursor; +use std::io::Read; +use std::sync::mpsc::{self, Sender}; +use std::thread; + +pub enum Command { + Play(String), + Stop, +} + +fn list_devices(host: &Host) -> Vec { + let devices = host.output_devices().unwrap(); + devices.map(|device| device.name().unwrap()).collect() +} + +fn find_device_index_regex(devices: Vec, pattern: &str) -> Option { + let re = Regex::new(pattern).unwrap(); + devices.iter().position(|device| re.is_match(device)) +} + +fn select_device(host: &Host, i: usize) -> Option { + host.output_devices().unwrap().nth(i) +} + +fn find_virtual_audio_cable() -> Option { + let host = cpal::default_host(); + let devices = list_devices(&host); + println!("Devices: {:?}", devices); + + let pattern = ".*VB-Audio Virtual Cable.*"; + if let Some(index) = find_device_index_regex(devices, pattern) { + println!("Selecting Device: \"{}\" at index {:?}", pattern, index); + return select_device(&host, index); + } + return None; +} + +pub fn audio_thread() -> Sender { + let (tx, rx) = mpsc::channel(); + + thread::spawn(move || { + let device = find_virtual_audio_cable().unwrap(); + // Create a rodio Sink connected to our device + let (_stream, stream_handle) = rodio::OutputStream::try_from_device(&device).unwrap(); + let sink = rodio::Sink::try_new(&stream_handle).unwrap(); + + for command in rx { + match command { + Command::Play(file_name) => { + play_file(&sink, file_name); + } + Command::Stop => { + sink.stop(); + } + } + } + }); + + tx +} + +fn play_file(sink: &rodio::Sink, file_name: String) { + let mut mp3_file = File::open(file_name).unwrap(); + let mut mp3_data = Vec::new(); + mp3_file.read_to_end(&mut mp3_data).unwrap(); + + // Iterate over the MP3 frames and play them + let mut decoder = Decoder::new(Cursor::new(mp3_data)); + loop { + match decoder.next_frame() { + Ok(frame) => { + let source = rodio::buffer::SamplesBuffer::new( + 2, + frame.sample_rate.try_into().unwrap(), + &*frame.data, + ); + sink.append(source); + } + Err(Error::Eof) => { + println!("EOF"); + break; + } + Err(e) => panic!("{:?}", e), + } + } +} diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 0000000..e679415 --- /dev/null +++ b/templates/index.html @@ -0,0 +1,14 @@ + + + + Play + + + + + +