fix(sync): instrument post-queue uac audio
This commit is contained in:
parent
b687c258e4
commit
a009f1b8e6
6
Cargo.lock
generated
6
Cargo.lock
generated
@ -1642,7 +1642,7 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lesavka_client"
|
name = "lesavka_client"
|
||||||
version = "0.13.4"
|
version = "0.13.5"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"async-stream",
|
"async-stream",
|
||||||
@ -1676,7 +1676,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lesavka_common"
|
name = "lesavka_common"
|
||||||
version = "0.13.4"
|
version = "0.13.5"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"base64",
|
"base64",
|
||||||
@ -1688,7 +1688,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lesavka_server"
|
name = "lesavka_server"
|
||||||
version = "0.13.4"
|
version = "0.13.5"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"base64",
|
"base64",
|
||||||
|
|||||||
@ -4,7 +4,7 @@ path = "src/main.rs"
|
|||||||
|
|
||||||
[package]
|
[package]
|
||||||
name = "lesavka_client"
|
name = "lesavka_client"
|
||||||
version = "0.13.4"
|
version = "0.13.5"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "lesavka_common"
|
name = "lesavka_common"
|
||||||
version = "0.13.4"
|
version = "0.13.5"
|
||||||
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.13.4"
|
version = "0.13.5"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
autobins = false
|
autobins = false
|
||||||
|
|
||||||
|
|||||||
@ -98,7 +98,11 @@ fn spawn_pipeline_bus_logger(bus: gst::Bus, label: &'static str, playing_message
|
|||||||
Element(e) => {
|
Element(e) => {
|
||||||
if let Some(structure) = e.structure() {
|
if let Some(structure) = e.structure() {
|
||||||
if structure.name() == "level" {
|
if structure.name() == "level" {
|
||||||
info!("🔊 {label} audio level {}", structure);
|
let source = msg
|
||||||
|
.src()
|
||||||
|
.map(gst::prelude::GstObjectExt::path_string)
|
||||||
|
.unwrap_or_else(|| "<unknown>".into());
|
||||||
|
info!("🔊 {label} audio level src={source} {}", structure);
|
||||||
} else {
|
} else {
|
||||||
debug!("🔎 audio element message: {}", structure);
|
debug!("🔎 audio element message: {}", structure);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -176,16 +176,23 @@ impl Voice {
|
|||||||
.build()
|
.build()
|
||||||
.context("make capsfilter")?;
|
.context("make capsfilter")?;
|
||||||
let level = gst::ElementFactory::make("level")
|
let level = gst::ElementFactory::make("level")
|
||||||
|
.name("voice_level_pre_queue")
|
||||||
.property("interval", 1_000_000_000u64)
|
.property("interval", 1_000_000_000u64)
|
||||||
.property("message", true)
|
.property("message", true)
|
||||||
.build()
|
.build()
|
||||||
.context("make voice level probe")?;
|
.context("make voice pre-queue level probe")?;
|
||||||
let alsa_sink = gst::ElementFactory::make("alsasink")
|
let alsa_sink = gst::ElementFactory::make("alsasink")
|
||||||
.build()
|
.build()
|
||||||
.context("make alsasink")?;
|
.context("make alsasink")?;
|
||||||
let delay_queue = gst::ElementFactory::make("queue")
|
let delay_queue = gst::ElementFactory::make("queue")
|
||||||
.build()
|
.build()
|
||||||
.context("make voice delay queue")?;
|
.context("make voice delay queue")?;
|
||||||
|
let post_level = gst::ElementFactory::make("level")
|
||||||
|
.name("voice_level_post_queue")
|
||||||
|
.property("interval", 1_000_000_000u64)
|
||||||
|
.property("message", true)
|
||||||
|
.build()
|
||||||
|
.context("make voice post-queue level probe")?;
|
||||||
let buffer_time_us = voice_sink_buffer_time_us();
|
let buffer_time_us = voice_sink_buffer_time_us();
|
||||||
let latency_time_us = voice_sink_latency_time_us();
|
let latency_time_us = voice_sink_latency_time_us();
|
||||||
let compensation_us = voice_sink_compensation_us();
|
let compensation_us = voice_sink_compensation_us();
|
||||||
@ -219,6 +226,7 @@ impl Voice {
|
|||||||
&capsfilter,
|
&capsfilter,
|
||||||
&level,
|
&level,
|
||||||
&delay_queue,
|
&delay_queue,
|
||||||
|
&post_level,
|
||||||
&alsa_sink,
|
&alsa_sink,
|
||||||
])?;
|
])?;
|
||||||
appsrc.link(&decodebin)?;
|
appsrc.link(&decodebin)?;
|
||||||
@ -228,6 +236,7 @@ impl Voice {
|
|||||||
&capsfilter,
|
&capsfilter,
|
||||||
&level,
|
&level,
|
||||||
&delay_queue,
|
&delay_queue,
|
||||||
|
&post_level,
|
||||||
&alsa_sink,
|
&alsa_sink,
|
||||||
])?;
|
])?;
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user