chore: bump bundled media release to 0.18.0
This commit is contained in:
parent
fdb7e7ce37
commit
82acfacc1f
@ -1,6 +1,6 @@
|
|||||||
# Lesavka Agent Notes
|
# Lesavka Agent Notes
|
||||||
|
|
||||||
## 0.17.39 Bundled Webcam A/V Migration Checklist
|
## 0.18.0 Bundled Webcam A/V Migration Checklist
|
||||||
|
|
||||||
Context: manual Google Meet and mirrored-probe testing showed the split webcam
|
Context: manual Google Meet and mirrored-probe testing showed the split webcam
|
||||||
and microphone uplink design is too fragile under real browser/device pressure.
|
and microphone uplink design is too fragile under real browser/device pressure.
|
||||||
|
|||||||
6
Cargo.lock
generated
6
Cargo.lock
generated
@ -1652,7 +1652,7 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lesavka_client"
|
name = "lesavka_client"
|
||||||
version = "0.17.39"
|
version = "0.18.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"async-stream",
|
"async-stream",
|
||||||
@ -1686,7 +1686,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lesavka_common"
|
name = "lesavka_common"
|
||||||
version = "0.17.39"
|
version = "0.18.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"base64",
|
"base64",
|
||||||
@ -1698,7 +1698,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lesavka_server"
|
name = "lesavka_server"
|
||||||
version = "0.17.39"
|
version = "0.18.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"base64",
|
"base64",
|
||||||
|
|||||||
@ -4,7 +4,7 @@ path = "src/main.rs"
|
|||||||
|
|
||||||
[package]
|
[package]
|
||||||
name = "lesavka_client"
|
name = "lesavka_client"
|
||||||
version = "0.17.39"
|
version = "0.18.0"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "lesavka_common"
|
name = "lesavka_common"
|
||||||
version = "0.17.39"
|
version = "0.18.0"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
build = "build.rs"
|
build = "build.rs"
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,7 @@ bench = false
|
|||||||
|
|
||||||
[package]
|
[package]
|
||||||
name = "lesavka_server"
|
name = "lesavka_server"
|
||||||
version = "0.17.39"
|
version = "0.18.0"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
autobins = false
|
autobins = false
|
||||||
|
|
||||||
|
|||||||
@ -35,20 +35,15 @@ struct BundledPlayoutClock {
|
|||||||
|
|
||||||
#[cfg(not(coverage))]
|
#[cfg(not(coverage))]
|
||||||
impl BundledPlayoutClock {
|
impl BundledPlayoutClock {
|
||||||
fn ensure(
|
fn ensure(&mut self, events: &[BundledUpstreamEvent]) -> Option<(u64, tokio::time::Instant)> {
|
||||||
&mut self,
|
|
||||||
_bundle: &UpstreamMediaBundle,
|
|
||||||
events: &[BundledUpstreamEvent],
|
|
||||||
) -> Option<(u64, tokio::time::Instant)> {
|
|
||||||
if self.base_remote_pts_us.is_none() || self.epoch.is_none() {
|
if self.base_remote_pts_us.is_none() || self.epoch.is_none() {
|
||||||
let base = events.iter().map(BundledUpstreamEvent::remote_pts_us).min()?;
|
let base = events.iter().map(BundledUpstreamEvent::remote_pts_us).min()?;
|
||||||
self.base_remote_pts_us = Some(base);
|
self.base_remote_pts_us = Some(base);
|
||||||
self.epoch = Some(tokio::time::Instant::now() + bundled_upstream_playout_delay());
|
self.epoch = Some(tokio::time::Instant::now() + bundled_upstream_playout_delay());
|
||||||
}
|
}
|
||||||
Some((
|
let base_remote_pts_us = self.base_remote_pts_us?;
|
||||||
self.base_remote_pts_us.unwrap_or_default(),
|
let epoch = self.epoch?;
|
||||||
self.epoch.expect("bundled epoch initialized"),
|
Some((base_remote_pts_us, epoch))
|
||||||
))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -383,7 +378,7 @@ impl Relay for Handler {
|
|||||||
);
|
);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
let Some((base_remote_pts_us, epoch)) = clock.ensure(&bundle, &events) else {
|
let Some((base_remote_pts_us, epoch)) = clock.ensure(&events) else {
|
||||||
continue;
|
continue;
|
||||||
};
|
};
|
||||||
let mixed_bundle = timing_summary.mixed();
|
let mixed_bundle = timing_summary.mixed();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user