Open
Conversation
## Playback offset By default Avatar goggles split video files by 5 minutes (or by size 1.1GB). Video file splitted correctly but OSD file has approximately 5 seconds of lost data. Current option `Adjust playback speed` artificially increases OSD file duration and thus scales OSD frame time. This changes introduce new type of solving this problem. Instead of streching OSD render - it just can be delayed by some amount of time to exactly match the video. Includes UI changes: * Added slider for playback offset amount. Slider enabled only if `Adjust playback speed` setting is disabled. * Added auto button - which calculates and set duration difference as playback offset amount. * Added warning icon next to OSD file duration to show user if it mismatches video duration ## Character size setting As end user I want to have more control how osd data is rendered, For my personal optinon, rendered for 1080p OSD overlay glyphs looks quite heavy. I want to have smaller character size for OSD overlay. This commit also introduces a slightly diffent way to position overlay glyphs. You need only to know your OSD dimensions (rows and columns), this is something that should be in OSD file, however I didn't find a format specification so just took data from official website of betaflight. (TODO: should be checked with iNAV and other firmwares) Default size is set on video file load with the same logic as it was. Includes UI changes: * UI for character size selection
Owner
|
Firmware 36.42.4 added support for exFAT formatted SD cards which removed the 4GB file limit. I think they also fixed the issue of the OSD getting out of sync with the video. With those improvements I think there is no need to add options to synchronize the video and OSD. In fact, I'm going to remove the "Adjust playback speed" option to keep the tool as simple as possible. Re the font scaling: My main goal with this tool is to enable rendering the video as close as possible to how it looks in the goggles so I'm inclined to say it's out of scope for this project. I need to think about it for a bit. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Playback offset
By default Avatar goggles split video files by 5 minutes (or by size 1.1GB). Video file splitted correctly but OSD file has approximately 5 seconds of lost data. Current option
Adjust playback speedartificially increases OSD file duration and thus scales OSD frame time.This changes introduce new type of solving this problem. Instead of streching OSD render - it just can be delayed by some amount of time to exactly match the video.
Includes UI changes:
Adjust playback speedsetting is disabled.autobutton calculates and set duration difference as playback offset amount.Character size setting
As end user I want to have more control of how OSD data is rendered,
For my personal opinion, rendered for 1080p OSD overlay glyphs looks quite heavy. I want to have smaller character size for OSD overlay.
This PR gives user more control of rendering result.
Default size is set on video file load with size selection logic as it was during frame rendering.
Different scaling
This commit also introduces a slightly different way to position overlay glyphs. You need only to know your OSD dimensions (rows and columns), this is something that should be in OSD file, however I didn't find a format specification so just took data from official website of betaflight. (TODO: should be checked with iNAV and other firmwares)
Includes UI changes: