aboutsummaryrefslogtreecommitdiff
path: root/server/src/routes
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-03-02 13:43:59 +0100
committermetamuffin <metamuffin@disroot.org>2025-03-02 13:43:59 +0100
commitb9539ee3afbf1440b8628bf0609dc0e24aed116c (patch)
tree5fa67c5db5e3c266385da36116f7723bf1a72c96 /server/src/routes
parentf0dbf139d8708194d1ff7e887b1dff48ccc166fa (diff)
downloadjellything-b9539ee3afbf1440b8628bf0609dc0e24aed116c.tar
jellything-b9539ee3afbf1440b8628bf0609dc0e24aed116c.tar.bz2
jellything-b9539ee3afbf1440b8628bf0609dc0e24aed116c.tar.zst
change things
Diffstat (limited to 'server/src/routes')
-rw-r--r--server/src/routes/compat/jellyfin/mod.rs27
1 files changed, 12 insertions, 15 deletions
diff --git a/server/src/routes/compat/jellyfin/mod.rs b/server/src/routes/compat/jellyfin/mod.rs
index ab36a8c..6066760 100644
--- a/server/src/routes/compat/jellyfin/mod.rs
+++ b/server/src/routes/compat/jellyfin/mod.rs
@@ -21,7 +21,7 @@ use crate::routes::{
use anyhow::{anyhow, Context};
use jellybase::{database::Database, CONF};
use jellycommon::{
- stream::{StreamFormat, StreamSpec},
+ stream::{StreamContainer, StreamSpec},
user::{NodeUserData, WatchedState},
MediaInfo, Node, NodeID, NodeKind, SourceTrack, SourceTrackKind, Visibility,
};
@@ -446,16 +446,12 @@ pub fn r_jellyfin_video_stream(
.get_node_slug(id)?
.ok_or(anyhow!("node does not exist"))?;
let media = node.media.as_ref().ok_or(anyhow!("node has no media"))?;
- Ok(Redirect::temporary(rocket::uri!(r_stream(
- id,
- StreamSpec {
- format: StreamFormat::Matroska,
- webm: Some(true),
- track: (0..media.tracks.len()).collect(),
- index: None,
- profile: None,
- }
- ))))
+ let params = StreamSpec::Remux {
+ tracks: (0..media.tracks.len()).collect(),
+ container: StreamContainer::WebM,
+ }
+ .to_query();
+ Ok(Redirect::temporary(format!("/n/{id}/stream{params}")))
}
#[derive(Deserialize)]
@@ -498,9 +494,7 @@ pub fn r_jellyfin_playback_bitratetest(_session: Session, Size: usize) -> Vec<u8
}
#[post("/Sessions/Capabilities/Full")]
-pub fn r_jellyfin_sessions_capabilities_full(_session: Session) {
-
-}
+pub fn r_jellyfin_sessions_capabilities_full(_session: Session) {}
#[derive(Deserialize)]
#[serde(rename_all = "PascalCase")]
@@ -796,7 +790,10 @@ fn item_object(node: &Node, userdata: &NodeUserData) -> JellyfinItem {
location_type: node.media.as_ref().map(|_| "FileSystem".to_owned()),
play_access: node.media.as_ref().map(|_| "Full".to_owned()),
container: node.media.as_ref().map(|_| "webm".to_owned()),
- run_time_ticks: node.media.as_ref().map(|m| (m.duration * 10_000_000.) as i64),
+ run_time_ticks: node
+ .media
+ .as_ref()
+ .map(|m| (m.duration * 10_000_000.) as i64),
media_sources: media_source.as_ref().map(|s| vec![s.clone()]),
media_streams: media_source.as_ref().map(|s| s.media_streams.clone()),
path: node