Skip to content
This repository has been archived by the owner on Jul 4, 2024. It is now read-only.

Commit

Permalink
not add start time when syncing (#442)
Browse files Browse the repository at this point in the history
* not add start time when syncing

* use itsoffset for all syncing related time shifts
  • Loading branch information
Frooastside authored Jul 1, 2024
1 parent 2cf9125 commit 4332b1b
Showing 1 changed file with 8 additions and 14 deletions.
22 changes: 8 additions & 14 deletions crunchy-cli-core/src/utils/download.rs
Original file line number Diff line number Diff line change
Expand Up @@ -322,20 +322,14 @@ impl Downloader {

if let Some(offsets) = offsets {
let mut root_format_idx = 0;
let mut root_format_length = 0;
let mut root_format_offset = u64::MAX;

for (i, format) in self.formats.iter().enumerate() {
let offset = offsets.get(&i).copied().unwrap_or_default();
let format_len = format
.video
.0
.segments()
.iter()
.map(|s| s.length.as_millis())
.sum::<u128>() as u64
- offset.num_milliseconds() as u64;
if format_len > root_format_length {
let format_offset = offset.num_milliseconds() as u64;
if format_offset < root_format_offset {
root_format_idx = i;
root_format_length = format_len;
root_format_offset = format_offset;
}

for _ in &format.audios {
Expand Down Expand Up @@ -567,7 +561,7 @@ impl Downloader {

for (i, meta) in videos.iter().enumerate() {
if let Some(start_time) = meta.start_time {
input.extend(["-ss".to_string(), format_time_delta(&start_time)])
input.extend(["-itsoffset".to_string(), format_time_delta(&start_time)])
}
input.extend(["-i".to_string(), meta.path.to_string_lossy().to_string()]);
maps.extend(["-map".to_string(), i.to_string()]);
Expand All @@ -588,7 +582,7 @@ impl Downloader {
}
for (i, meta) in audios.iter().enumerate() {
if let Some(start_time) = meta.start_time {
input.extend(["-ss".to_string(), format_time_delta(&start_time)])
input.extend(["-itsoffset".to_string(), format_time_delta(&start_time)])
}
input.extend(["-i".to_string(), meta.path.to_string_lossy().to_string()]);
maps.extend(["-map".to_string(), (i + videos.len()).to_string()]);
Expand Down Expand Up @@ -635,7 +629,7 @@ impl Downloader {
if container_supports_softsubs {
for (i, meta) in subtitles.iter().enumerate() {
if let Some(start_time) = meta.start_time {
input.extend(["-ss".to_string(), format_time_delta(&start_time)])
input.extend(["-itsoffset".to_string(), format_time_delta(&start_time)])
}
input.extend(["-i".to_string(), meta.path.to_string_lossy().to_string()]);
maps.extend([
Expand Down

0 comments on commit 4332b1b

Please sign in to comment.