Compare commits

...

1 Commits

Author SHA1 Message Date
99efd89abc updated .gitignore, added rust project init, updated README 2026-02-17 23:26:42 +01:00
4 changed files with 103 additions and 13 deletions

18
.gitignore vendored
View File

@@ -1,18 +1,10 @@
# ---> Rust
# Generated by Cargo
# will have compiled files and executables
.idea/
.vscode/
debug/
target/
# These are backup files generated by rustfmt
**/*.rs.bk
Cargo.lock
# MSVC Windows builds of rustc generate these, which store debugging information
*.pdb
# RustRover
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
**/*.rs.bk

6
Cargo.toml Normal file
View File

@@ -0,0 +1,6 @@
[package]
name = "new_vegas_radio"
version = "0.1.0"
edition = "2024"
[dependencies]

View File

@@ -1,2 +1,90 @@
# NewVegasRadio
---
### Assets-Directory Structure:
```terminaloutput
assets/
config.(json|toml)
songs/
my_song/
my_song.mp3
descriptor.(json|toml)
intro/
MrNewVegas_N.mp3 (optional)
outro/
MrNewVegas_N.mp3 (optional)
generic/
MrNewVegas_N.mp3
```
---
#### `config.json`:
```json5
{
"defaults": {
"songs_directory": "songs",
"generic_directory": "generic",
"log_directory": "logs",
"temp_directory": "temp"
},
"settings": {
"weight": 1.0,
"volume": 1.0,
"crossfade": 2.0 // in seconds
},
"rules": {
"shuffle_mode": "weighted", // options: "weighted", "strict_random"
"max_same_genre_in_row": 2
}
}
```
OR
#### `config.toml`:
```toml
[defaults]
songs_directory = "songs"
generic_directory = "generic"
log_directory = "logs"
temp_directory = "temp"
[settings]
weight = 1.0
volume = 1.0
crossfade = 2.0 # in seconds
[rules]
shuffle_mode = "weighted" # "weighted", "strict_random"
max_same_genre_in_row = 2
```
---
#### `descriptor.json`:
```json5
{
"title": "[I Got Spurs That] Jingle, Jangle, Jingle",
"artist": "Kay Kyser",
"tags": ["orchestra", "swing", "jazz"],
"genre": ["swing", "jazz"],
"intro": false,
"outro": false,
"weight": 1.0, // optional
"volume": 1.0, // optional
}
```
OR
#### `descriptor.toml`:
```toml
title = "[I Got Spurs That] Jingle, Jangle, Jingle"
artist = "Kay Kyser"
tags = ["orchestra", "swing", "jazz"]
genre = ["swing", "jazz"]
intro = false
outro = false
weight = 1.0 # optional
volume = 1.0 # optional
```

4
src/main.rs Normal file
View File

@@ -0,0 +1,4 @@
fn main() {
}