fix: default to YUV_400 format for .raw files#664
Open
for13to1 wants to merge 1 commit into
Open
Conversation
- Initialize YUV video handler to YUV_400 for .raw extension files - Guard against empty frameSize optional in checkSpecificFileExtensions
Contributor
Author
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.
Summary of Changes
As the author who originally contributed the RAW file support feature, this PR fixes a format fallback inconsistency for
.raw(RAW Bayer / CFA patterns) files and resolves a potential empty optional dereference crash.Background & Rationale
YUView uses
YUV_400(luma-only) internally to read and display single-channel raw sensor files (such as Bayer raw, defined inRAW_BAYER_EXTENSIONS).Previously, if a
.rawfile had no resolution in its filename, it would bypass format guessing and fallback to the defaultYUV_420format fromvideoHandlerYUV's constructor. This required users to manually select400(YUV 4:0:0) in the properties GUI.This PR sets the default format to
YUV_400for files matchingRAW_BAYER_EXTENSIONSright at construction, so they default to the correct single-channel interpretation.Detailed Changes
RAW_BAYER_EXTENSIONStoYUV_400in theplaylistItemRawFileconstructor.checkSpecificFileExtensions(PixelFormatYUVGuess.cpp) to prevent undefined behavior whenframeSizeis empty.Verification
.rawfiles now default to YUV 4:0:0 in the properties GUI.