sdr performance workaround fix
This commit is contained in:
@@ -157,7 +157,7 @@ NSString *const deviceName = @"roth";
|
||||
|
||||
+ (bool)needUpdateDefaultSettings {
|
||||
// NSString *key = @"needUpdateDefaultSettings20260209";
|
||||
NSString *key = @"needUpdateDefaultSettings20260210";
|
||||
NSString *key = @"needUpdateDefaultSettings20260212";
|
||||
BOOL updatedBefore = [[NSUserDefaults standardUserDefaults] boolForKey:key];
|
||||
|
||||
if (!updatedBefore) {
|
||||
|
||||
@@ -1581,20 +1581,21 @@ static NSMutableSet* hostList;
|
||||
Settings* settings = [dataMan retrieveSettings];
|
||||
switch ([UIDevice currentDevice].userInterfaceIdiom) {
|
||||
case UIUserInterfaceIdiomPad:
|
||||
settings.sdrPerformanceWorkaround = false;
|
||||
settings.sdrPerformanceWorkaround = true;
|
||||
settings.framePacingMode = @(FramePacingModeQueue);
|
||||
break;
|
||||
case UIUserInterfaceIdiomPhone:
|
||||
settings.sdrPerformanceWorkaround = false;
|
||||
settings.sdrPerformanceWorkaround = true;
|
||||
settings.framePacingMode = @(FramePacingModeQueue);
|
||||
break;
|
||||
default:
|
||||
settings.sdrPerformanceWorkaround = false;
|
||||
settings.sdrPerformanceWorkaround = true;
|
||||
settings.framePacingMode = @(FramePacingModeQueue);
|
||||
break;
|
||||
}
|
||||
if([UIScreen mainScreen].maximumFramesPerSecond > 110) settings.asyncFrameDequeue = true;
|
||||
if([UIScreen mainScreen].maximumFramesPerSecond < 65) settings.asyncFrameDequeue = true;
|
||||
settings.touchMoveEventInterval = @(1333);
|
||||
[dataMan saveData];
|
||||
}
|
||||
|
||||
|
||||
@@ -1333,14 +1333,17 @@
|
||||
|
||||
// 8bit 444 degration workaround
|
||||
if(strcmp(stageName, "video stream establishment")==0){
|
||||
NSLog(@"sendAutoReleaseComboCommandWithCmdStrings %f", CACurrentMediaTime());
|
||||
if(!_settings.enableHdr
|
||||
&& _settings.sdrPerformanceWorkaround
|
||||
&& [Utils hdrSupported]
|
||||
&& LiGetCurrentHostDisplayHdrMode()){
|
||||
dispatch_time_t delay = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3 * NSEC_PER_SEC));
|
||||
){
|
||||
dispatch_time_t delay = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5 * NSEC_PER_SEC));
|
||||
dispatch_after(delay, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
|
||||
NSArray* hdrCommand = [CommandManager.shared extractAutoReleaseButtonStringsFrom:@"WIN+ALT+B"];
|
||||
[CommandManager.shared sendAutoReleaseComboCommandWithCmdStrings:hdrCommand delay:0.15 index:0 pressOnly:false releaseOnly:false];
|
||||
if(LiGetCurrentHostDisplayHdrMode()){
|
||||
NSArray* hdrCommand = [CommandManager.shared extractAutoReleaseButtonStringsFrom:@"WIN+ALT+B"];
|
||||
[CommandManager.shared sendAutoReleaseComboCommandWithCmdStrings:hdrCommand delay:0.15 index:0 pressOnly:false releaseOnly:false];
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user