Debug du stream
This commit is contained in:
@@ -10,35 +10,4 @@ host:
|
||||
buffer_capacity: 200
|
||||
enable_console: true
|
||||
min_level: "INFO"
|
||||
|
||||
mediarenderer:
|
||||
|
||||
mediaserver:
|
||||
sources:
|
||||
radio_paradise:
|
||||
enabled: true
|
||||
cache:
|
||||
max_blocks_remembered: 5
|
||||
track_id_hash_bytes: 512
|
||||
history:
|
||||
max_tracks: 100
|
||||
persistence_backend: sqlite
|
||||
database_path: /var/lib/pmo/paradise_history.db
|
||||
activity:
|
||||
cooling_timeout_seconds: 180
|
||||
polling:
|
||||
interval_high_buffer: 120
|
||||
interval_medium_buffer: 60
|
||||
interval_low_buffer: 20
|
||||
backoff_on_error:
|
||||
initial: 20
|
||||
max: 300
|
||||
multiplier: 2.0
|
||||
stream:
|
||||
metadata_format: icy
|
||||
enable_gapless: true
|
||||
buffer_size_bytes: 65536
|
||||
api:
|
||||
base_url: https://api.radioparadise.com
|
||||
timeout_seconds: 30
|
||||
user_agent: "PMO-RadioParadise/1.0"
|
||||
|
||||
@@ -333,7 +333,13 @@ impl ParadiseClientStream {
|
||||
|
||||
pub fn into_byte_stream(self) -> BoxStream<'static, Result<Bytes, anyhow::Error>> {
|
||||
let channel = self.channel.clone();
|
||||
let client_id = self.client_id.clone();
|
||||
let stream = try_stream! {
|
||||
tracing::info!(
|
||||
channel = channel.descriptor().slug,
|
||||
client_id = %client_id,
|
||||
"🎧 Client connecting to stream"
|
||||
);
|
||||
channel.ensure_started().await?;
|
||||
let mut index = 0usize;
|
||||
loop {
|
||||
|
||||
@@ -600,6 +600,12 @@ impl WorkerState {
|
||||
.await
|
||||
.map_err(|e| anyhow!("Cache audio error: {e}"))?;
|
||||
|
||||
// Wait for the file to be completely written before continuing
|
||||
self.cache_manager
|
||||
.wait_audio_ready(&audio_pk)
|
||||
.await
|
||||
.map_err(|e| anyhow!("Wait audio ready error: {e}"))?;
|
||||
|
||||
metadata.cached_audio_pk = Some(audio_pk.clone());
|
||||
self.cache_manager
|
||||
.update_metadata(track_id.clone(), metadata)
|
||||
@@ -680,6 +686,12 @@ impl WorkerState {
|
||||
.await
|
||||
.map_err(|e| anyhow!("Cache audio error: {e}"))?;
|
||||
|
||||
// Wait for the file to be completely written before continuing
|
||||
self.cache_manager
|
||||
.wait_audio_ready(&audio_pk)
|
||||
.await
|
||||
.map_err(|e| anyhow!("Wait audio ready error: {e}"))?;
|
||||
|
||||
metadata.cached_audio_pk = Some(audio_pk.clone());
|
||||
self.cache_manager
|
||||
.update_metadata(track_id.clone(), metadata.clone())
|
||||
|
||||
Reference in New Issue
Block a user