aboutsummaryrefslogtreecommitdiff
path: root/remuxer/src
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-01-29 16:07:58 +0100
committermetamuffin <metamuffin@disroot.org>2025-01-29 16:07:58 +0100
commite7ba3274e27fad755f15465581f5b403c82ab4d2 (patch)
treef2d693c61786ee6ed027636393fd75f086bd77e8 /remuxer/src
parent5ac3f397b4a28b7bf8b399e73ad0d29e3da45ab0 (diff)
downloadjellything-e7ba3274e27fad755f15465581f5b403c82ab4d2.tar
jellything-e7ba3274e27fad755f15465581f5b403c82ab4d2.tar.bz2
jellything-e7ba3274e27fad755f15465581f5b403c82ab4d2.tar.zst
prepare database refactor
Diffstat (limited to 'remuxer/src')
-rw-r--r--remuxer/src/fragment.rs6
-rw-r--r--remuxer/src/metadata.rs12
-rw-r--r--remuxer/src/remux.rs8
3 files changed, 13 insertions, 13 deletions
diff --git a/remuxer/src/fragment.rs b/remuxer/src/fragment.rs
index 872b1e0..55992db 100644
--- a/remuxer/src/fragment.rs
+++ b/remuxer/src/fragment.rs
@@ -9,7 +9,7 @@ use crate::{
segment_extractor::SegmentExtractIter,
};
use anyhow::{anyhow, Context, Result};
-use jellycommon::{LocalTrack, NodePublic, SourceTrackKind};
+use jellycommon::{LocalTrack, Node, SourceTrackKind};
use jellymatroska::{read::EbmlReader, write::EbmlWriter, Master, MatroskaTag};
use log::{debug, info};
use std::{
@@ -23,7 +23,7 @@ const FRAGMENT_LENGTH: f64 = 2.;
pub fn fragment_index(
path_base: &Path,
- item: &NodePublic,
+ item: &Node,
local_track: &LocalTrack,
track_index: usize,
) -> Result<Vec<Range<f64>>> {
@@ -81,7 +81,7 @@ pub fn fragment_index(
pub fn write_fragment_into(
writer: impl Write,
path_base: &Path,
- item: &NodePublic,
+ item: &Node,
local_track: &LocalTrack,
track: usize,
webm: bool,
diff --git a/remuxer/src/metadata.rs b/remuxer/src/metadata.rs
index 3fd82ce..47b12f0 100644
--- a/remuxer/src/metadata.rs
+++ b/remuxer/src/metadata.rs
@@ -5,7 +5,7 @@
*/
use anyhow::{anyhow, bail, Context, Result};
use bincode::{Decode, Encode};
-use jellycommon::{Chapter, LocalTrack, SourceTrack, SourceTrackKind};
+use jellycommon::{Chapter, LocalTrack, SourceTrack, SourceTrackKind, TrackSource};
use jellymatroska::{
matroska::MatroskaTag,
read::EbmlReader,
@@ -343,16 +343,16 @@ fn import_read_segment(segment: &mut Unflatten) -> Result<MatroskaMetadata> {
m.tracks.push(SourceTrack {
federated: vec![],
default_duration,
+ source: TrackSource::Local(LocalTrack {
+ track: track_index as usize,
+ path: PathBuf::new(),
+ codec_private,
+ }),
name: name.unwrap_or_else(|| "unnamed".to_string()),
codec: codec.unwrap(),
language: language.unwrap_or_else(|| "none".to_string()),
kind,
});
- m.track_sources.push(LocalTrack {
- track: track_index as usize,
- path: PathBuf::new(),
- codec_private,
- })
}
MatroskaTag::Crc32(_) => {}
_ => warn!("(rst) tag ignored: {item:?}"),
diff --git a/remuxer/src/remux.rs b/remuxer/src/remux.rs
index 9419847..b5ecfed 100644
--- a/remuxer/src/remux.rs
+++ b/remuxer/src/remux.rs
@@ -10,7 +10,7 @@ use crate::{
use anyhow::{anyhow, Context};
use jellycommon::{
seek_index::{BlockIndex, SeekIndex},
- LocalTrack, NodePublic, SourceTrack,
+ LocalTrack, Node, SourceTrack,
};
use jellymatroska::{
read::EbmlReader,
@@ -38,7 +38,7 @@ pub fn remux_stream_into(
writer: impl Write,
range: Range<usize>,
path_base: PathBuf,
- item: NodePublic,
+ item: &Node,
track_sources: Vec<LocalTrack>,
selection: Vec<usize>,
webm: bool,
@@ -106,8 +106,8 @@ pub fn remux_stream_into(
output.write_tag(&MatroskaTag::Info(Master::Collected(vec![
MatroskaTag::TimestampScale(1_000_000),
- MatroskaTag::Duration(item.media.unwrap().duration * 1000.0),
- MatroskaTag::Title(item.title.unwrap_or_default().clone()),
+ MatroskaTag::Duration(item.media.as_ref().unwrap().duration * 1000.0),
+ MatroskaTag::Title(item.title.clone().unwrap_or_default()),
MatroskaTag::MuxingApp("jellyremux".to_string()),
MatroskaTag::WritingApp("jellything".to_string()),
])))?;