mirror of
https://github.com/Dummi26/musicdb.git
synced 2025-03-10 14:13:53 +01:00
update readme and add some stuff
This commit is contained in:
parent
9fbe67012e
commit
f414b849b7
69
README.md
69
README.md
@ -39,86 +39,47 @@ for the client, you may need to change the path used in `include_bytes!(...)` to
|
||||
|
||||
## setup
|
||||
|
||||
### server/client
|
||||
|
||||
#### prep
|
||||
### prep
|
||||
|
||||
You need some directory where your music is located (mp3 files).
|
||||
I will assume this is `/music` for simplicity.
|
||||
|
||||
The structure should be `/music/Artist/Album/Song.mp3` so we can automatically
|
||||
populate the database with your songs. if it isn't, songs will need to be added manually (for now).
|
||||
|
||||
You will also need a file that will hold your database.
|
||||
I will assume this is `dbfile`.
|
||||
|
||||
Note: Instead of adding the executables (`musicdb-client` and `musicdb-server`) to your `$PATH`, you can run `cargo run --release -- ` followed by the arguments.
|
||||
Since this is using cargo, you need to be in the source directorie for whatever you want to run.
|
||||
|
||||
#### initializing the server
|
||||
### database
|
||||
|
||||
run the server without arguments to see the current syntax.
|
||||
|
||||
To initialize a new database:
|
||||
`musicdb-filldb` will read all files in the /music directory and all of its subdirectories, read their metadata and try to figure out as much about these songs as possible. It will then generate a `dbfile` which `musicdb-server` can read.
|
||||
You can make changes to the database later, but this should be the easiest way to get started:
|
||||
|
||||
```sh
|
||||
musicdb-server dbfile --init /music --tcp 127.0.0.1:12345 --web 127.0.0.1:8080
|
||||
musicdb-filldb /music
|
||||
```
|
||||
|
||||
#### adding songs
|
||||
### starting the server
|
||||
|
||||
While the server is running, the client can add songs to it:
|
||||
|
||||
##### automatically
|
||||
|
||||
If your files are stored as `/music/Artist/Album/Song.mp3`,
|
||||
the client can go through these files and add them all to the database.
|
||||
For this to work, the client should be running on the same machine as the server
|
||||
(the contents of `/music` must match).
|
||||
run:
|
||||
|
||||
```sh
|
||||
musicdb-client filldb 127.0.0.1:12345
|
||||
```
|
||||
|
||||
You can open `127.0.0.1:8080` in a browser to see the songs being added in real-time.
|
||||
|
||||
##### manually
|
||||
|
||||
You can use the client's cli mode to manually add songs (this is annoying. don't.)
|
||||
|
||||
```sh
|
||||
musicdb-client cli 127.0.0.1:12345
|
||||
```
|
||||
|
||||
##### saving
|
||||
|
||||
```sh
|
||||
musicdb-client cli 127.0.0.1:12345
|
||||
```
|
||||
|
||||
Now, start the client's cli mode and type 'save'. The server will now create (or overwrite) `dbfile`.
|
||||
|
||||
And that's it - you can now use the player. For a user-friendly(er) interface, start the client in gui mode:
|
||||
|
||||
```sh
|
||||
musicdb-client gui 127.0.0.1:12345
|
||||
```
|
||||
|
||||
#### (re)starting the server
|
||||
|
||||
To load an existing dbfile, remove the `init` part from the command used earlier:
|
||||
|
||||
```sh
|
||||
musicdb-server dbfile --tcp 127.0.0.1:12345 --web 127.0.0.1:8080
|
||||
musicdb-server dbfile --tcp 127.0.0.1:26314 --web 127.0.0.1:8080
|
||||
```
|
||||
|
||||
And that's it - the rest should just work.
|
||||
|
||||
You can now open 127.0.0.1:8080 in a browser or use `musicdb-client`:
|
||||
|
||||
```sh
|
||||
musicdb-client gui 127.0.0.1:26314
|
||||
```
|
||||
|
||||
### syncplayer
|
||||
|
||||
If `/music` is the same on two devices, one can act as the server and the other as a client
|
||||
that simply mirrors the server using the client's syncplayer mode:
|
||||
|
||||
```sh
|
||||
musicdb-client syncplayer 127.0.0.1:12345
|
||||
musicdb-client syncplayer 127.0.0.1:26314
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user