Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mkv fixes and laces support #1504

Merged
merged 9 commits into from
Jan 28, 2024
Merged

mkv fixes and laces support #1504

merged 9 commits into from
Jan 28, 2024

Conversation

erankor
Copy link
Contributor

@erankor erankor commented Dec 30, 2023

when reading frames, need to read a bit extra in order to have the headers of the frame following the last frame of the segment (in order to calcuation the duration of the last frame)
in addition to reading a few bytes extra, need to ignore overflow when parsing the cluster/simple-block elements of the next-segment frame, since usually this frame is not read in full.

when reading frames, need to read a bit extra in order to have the
headers of the frame following the last frame of the segment (in order
to calcuation the duration of the last frame)
in addition to reading a few bytes extra, need to ignore overflow when
parsing the cluster/simple-block elements of the next-segment frame,
since usually this frame is not read in full.
- a block group is a key frame if it has no block references (unlike
simple groups which use flags & 0x80)
- also improved debug logs - added per-lace debug log, including the
  absolute file offset, size, key frame etc
can significantly reduce the read overhead - on some sample content that
was tested, the read overhead (=total_frame_size_read - total_output_size)
was reduced by 44%.
@erankor erankor merged commit 9b4d83d into master Jan 28, 2024
8 checks passed
@erankor erankor deleted the mkv-fixes-and-lace-support branch January 28, 2024 07:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

1 participant