-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
0.6.0: artwork support, new SwiftUI client, new protocol iteration
Drop of the "XOR encryption" Signed-off-by: Ivan Bushchik <[email protected]>
- Loading branch information
Showing
75 changed files
with
2,578 additions
and
1,003 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,19 +5,19 @@ members = [ | |
"monoclient-s", | ||
"monolib", | ||
"monoloader", | ||
"microserve", | ||
] | ||
|
||
[package] | ||
name = "lonelyradio" | ||
description = "TCP radio for lonely ones" | ||
version = "0.5.0" | ||
version = "0.6.0" | ||
edition = "2021" | ||
license = "MIT" | ||
authors = ["Ivan Bushchik <[email protected]>"] | ||
repository = "https://github.com/ivabus/lonelyradio" | ||
|
||
[dependencies] | ||
lonelyradio_types = { version = "0.6.0", path = "./lonelyradio_types" } | ||
rand = "0.8.5" | ||
clap = { version = "4.4.18", features = ["derive"] } | ||
tokio = { version = "1.35.1", features = [ | ||
|
@@ -43,9 +43,12 @@ async-stream = "0.3.5" | |
tokio-stream = { version = "0.1.15", features = ["sync"] } | ||
futures-util = "0.3.30" | ||
samplerate = "0.2.4" | ||
lonelyradio_types = { version = "0.5.0", path = "./lonelyradio_types" } | ||
once_cell = "1.19.0" | ||
flacenc = { version = "0.4.0", default-features = false } | ||
image = "0.25.1" | ||
|
||
[build-dependencies] | ||
cc = "1.0.98" | ||
|
||
[profile.release] | ||
opt-level = 3 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,10 +2,11 @@ | |
name = "lonelyradio_types" | ||
description = "Shared types for lonelyradio" | ||
license = "MIT" | ||
version = "0.5.0" | ||
version = "0.6.0" | ||
edition = "2021" | ||
authors = ["Ivan Bushchik <[email protected]>"] | ||
repository = "https://github.com/ivabus/lonelyradio" | ||
|
||
[dependencies] | ||
serde = { version = "1.0.197", features = ["derive"] } | ||
serde_bytes = "0.11.15" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,25 +1,63 @@ | ||
use serde::{Deserialize, Serialize}; | ||
|
||
pub const HELLO_MAGIC: u64 = 0x104e1374d10; | ||
|
||
#[derive(Deserialize, Serialize, Clone, Debug, PartialEq)] | ||
pub enum Message { | ||
T(TrackMetadata), | ||
F(FragmentMetadata), | ||
} | ||
|
||
#[repr(C)] | ||
#[derive(Deserialize, Serialize, Clone, Debug, PartialEq)] | ||
pub struct Settings { | ||
#[serde(rename = "e")] | ||
pub encoder: Encoder, | ||
|
||
#[serde(rename = "co")] | ||
pub cover: i32, | ||
} | ||
|
||
#[derive(Deserialize, Serialize, Clone, Debug, PartialEq)] | ||
pub struct ServerCapabilities { | ||
#[serde(rename = "e")] | ||
pub encoders: Vec<Encoder>, | ||
} | ||
|
||
#[derive(Deserialize, Serialize, Clone, Debug, PartialEq)] | ||
pub struct TrackMetadata { | ||
#[serde(rename = "tls")] | ||
pub track_length_secs: u64, | ||
#[serde(rename = "tlf")] | ||
pub track_length_frac: f32, | ||
#[serde(rename = "c")] | ||
pub channels: u16, | ||
#[serde(rename = "sr")] | ||
pub sample_rate: u32, | ||
pub flac: bool, | ||
#[serde(rename = "e")] | ||
pub encoder: Encoder, | ||
#[serde(rename = "mt")] | ||
pub title: String, | ||
#[serde(rename = "mal")] | ||
pub album: String, | ||
#[serde(rename = "mar")] | ||
pub artist: String, | ||
#[serde(rename = "co")] | ||
#[serde(with = "serde_bytes")] | ||
pub cover: Option<Vec<u8>>, | ||
} | ||
|
||
#[repr(u8)] | ||
#[derive(Deserialize, Serialize, Clone, Copy, Debug, PartialEq)] | ||
pub enum Encoder { | ||
Pcm16 = 0, | ||
PcmFloat = 1, | ||
Flac = 2, | ||
} | ||
|
||
#[derive(Deserialize, Serialize, Clone, Debug, PartialEq)] | ||
pub struct FragmentMetadata { | ||
// In samples or bytes (if FLAC) | ||
// In bytes | ||
#[serde(rename = "l")] | ||
pub length: u64, | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,22 @@ | ||
[package] | ||
name = "monoclient-s" | ||
description = "Client for lonelyradio built with Slint" | ||
version = "0.5.0" | ||
version = "0.6.0" | ||
edition = "2021" | ||
|
||
[dependencies] | ||
slint = { version = "1.6.0", features = ["backend-android-activity-06"] } | ||
monolib = { path = "../monolib" } | ||
slint = { version = "1.6", features = ["backend-android-activity-06"] } | ||
monolib = { path = "../monolib", version = "0.6.0" } | ||
lonelyradio_types = { version = "0.6.0", path = "../lonelyradio_types" } | ||
zune-jpeg = "0.4.11" | ||
|
||
[lib] | ||
crate-type = [ "cdylib" ] | ||
|
||
# TODO: Set up cargo-bundle | ||
#[package.metadata.bundle] | ||
#name = "monoclient-s" | ||
#identifier = "dev.ivabus.monoclient-s" | ||
#icon = ["lonelyradio.png", "lonelyradio.icns"] | ||
#version = "0.5.0" | ||
#copyright = "Copyright (c) 2024 Ivan Bushchik." | ||
#category = "Music" | ||
[package.metadata.bundle] | ||
name = "monoclient-s" | ||
identifier = "dev.ivabus.monoclient-s" | ||
icon = ["lonelyradio.png", "lonelyradio.icns"] | ||
version = "0.5.0" | ||
copyright = "Copyright (c) 2024 Ivan Bushchik." | ||
category = "Music" |
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.