diff options
| author | metamuffin <metamuffin@disroot.org> | 2026-03-07 04:02:48 +0100 |
|---|---|---|
| committer | metamuffin <metamuffin@disroot.org> | 2026-03-07 04:02:48 +0100 |
| commit | 4ce6d64648634bd8d22e8ed0676e0e5b22947dc3 (patch) | |
| tree | c1df9c9f623603651157006b9fd249de6d63fc7b /stream/src/hls.rs | |
| parent | d3ed810656a563fc733771e760b2abbb05bd98cb (diff) | |
| download | jellything-4ce6d64648634bd8d22e8ed0676e0e5b22947dc3.tar jellything-4ce6d64648634bd8d22e8ed0676e0e5b22947dc3.tar.bz2 jellything-4ce6d64648634bd8d22e8ed0676e0e5b22947dc3.tar.zst | |
new media path format
Diffstat (limited to 'stream/src/hls.rs')
| -rw-r--r-- | stream/src/hls.rs | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/stream/src/hls.rs b/stream/src/hls.rs index 70a0d3c..759b196 100644 --- a/stream/src/hls.rs +++ b/stream/src/hls.rs @@ -23,12 +23,12 @@ pub fn hls_multivariant_stream(info: &SMediaInfo) -> Result<Box<dyn Read + Send for (i, t) in info.tracks.iter().enumerate() { for (j, f) in t.formats.iter().enumerate() { let uri = format!( - "stream{}", + "{}", StreamSpec::HlsVariant { track: i, format: j } - .to_query() + .to_path() ); let r#type = match t.kind { TrackKind::Video => "VIDEO", @@ -50,7 +50,7 @@ pub fn hls_multivariant_stream(info: &SMediaInfo) -> Result<Box<dyn Read + Send pub fn hls_variant_stream( info: &SMediaInfo, track: TrackNum, - format: FormatNum, + _format: FormatNum, ) -> Result<Box<dyn Read + Send + Sync>> { let frags = fragment_index(&info, track)?; let (_, info) = stream_info(&info)?; @@ -61,19 +61,14 @@ pub fn hls_variant_stream( writeln!(out, "#EXT-X-TARGETDURATION:{}", info.duration)?; writeln!(out, "#EXT-X-VERSION:4")?; writeln!(out, "#EXT-X-MEDIA-SEQUENCE:0")?; + writeln!(out, "#EXT-X-MAP:URI=\"init.webm\"")?; for (index, Range { start, end }) in frags.iter().enumerate() { writeln!(out, "#EXTINF:{:},", end - start)?; writeln!( out, - "stream{}", - StreamSpec::Fragment { - track, - index, - container: StreamContainer::MP4, - format, - } - .to_query() + "frag{index}.{}", + StreamContainer::WebM.file_ext(TrackKind::Video), )?; } |