Cleanup SponsorBlock video id hashing #4384
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Cleanup SponsorBlock video id hashing
Pull Request Type
Description
Currently the code to create the video ID hash prefix to send to SponsorBlock is rather inefficient, this pull request aims to simplify it, making it more efficient.
Currently it creates an array from the unsigned 8-bit integer array, calls map on it to create a new array with the bytes coverted to hex strings, creates a new array with the first 4 and then joins them to a string, after that it creates a new string with the first 4 characters (this step could have been avoided if only the first two bytes had been chosen in an earlier step, instead of 4).
The new code selects the first two bytes in the unsigned 8-bit integer array and converts those to hex strings and then concatenates them together. This saves a bunch of temporary arrays and strings and also simplifies the code.
Testing
The testing for this pull request is just regression testing.
Turn on SponsorBlock and open a video with SponsorBlock segments, they should still show up in the seek bar and be skipped if you have that configued.
Turn on DeArrow and make sure titles are still being replaced.