aboutsummaryrefslogtreecommitdiff
path: root/server/src/logic/stream.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-09-26 14:35:23 +0200
committermetamuffin <metamuffin@disroot.org>2025-09-26 14:35:23 +0200
commitf7e3841426ed4661ede6ccfff9c306141735d465 (patch)
tree793727cc80386bc1715869a3f54986e42897e656 /server/src/logic/stream.rs
parent81bb9dee3ed8a029bec831e7c3f204cd0ed41472 (diff)
downloadjellything-f7e3841426ed4661ede6ccfff9c306141735d465.tar
jellything-f7e3841426ed4661ede6ccfff9c306141735d465.tar.bz2
jellything-f7e3841426ed4661ede6ccfff9c306141735d465.tar.zst
refactor remuxer trait; add webm support; add back transcodingHEADmaster
Diffstat (limited to 'server/src/logic/stream.rs')
-rw-r--r--server/src/logic/stream.rs13
1 files changed, 10 insertions, 3 deletions
diff --git a/server/src/logic/stream.rs b/server/src/logic/stream.rs
index dfe2f86..d239c92 100644
--- a/server/src/logic/stream.rs
+++ b/server/src/logic/stream.rs
@@ -9,7 +9,7 @@ use jellycommon::{api::NodeFilterSort, stream::StreamSpec, NodeID, TrackSource};
use jellyimport::asset_token::AssetInner;
use jellylogic::{node::get_node, session::Session};
use jellystream::SMediaInfo;
-use log::info;
+use log::{info, warn};
use rocket::{
get, head,
http::{Header, Status},
@@ -148,9 +148,16 @@ pub async fn r_stream(
});
// TODO cleaner solution needed
- let mut reader = spawn_blocking(move || jellystream::stream(media, spec, urange))
+ let mut reader = match spawn_blocking(move || jellystream::stream(media, spec, urange))
.await
- .unwrap()?;
+ .unwrap()
+ {
+ Ok(o) => o,
+ Err(e) => {
+ warn!("stream error: {e:?}");
+ Err(e)?
+ }
+ };
let (stream_write, stream_read) = duplex(4096);
spawn_blocking(move || std::io::copy(&mut reader, &mut SyncIoBridge::new(stream_write)));