feat: use CAPABILITY_PULL_RENDERER for legacy pacing mode
This commit is contained in:
1 parent
8547cee1b9
commit
ebf46042ba
2 files changed
+87
-16
No files matched your search
@@ -9,6 +9,7 @@
|
||||
#import "Connection.h"
|
||||
#import "Plot.h"
|
||||
#import "Utils.h"
|
||||
#import "DataManager.h"
|
||||
|
||||
#import <VideoToolbox/VideoToolbox.h>
|
||||
|
||||
@@ -505,10 +506,19 @@ void ClSetControllerLED(uint16_t controllerNumber, uint8_t r, uint8_t g, uint8_t
|
||||
LiInitializeVideoCallbacks(&_drCallbacks);
|
||||
_drCallbacks.setup = DrDecoderSetup;
|
||||
_drCallbacks.cleanup = DrCleanup;
|
||||
_drCallbacks.submitDecodeUnit = DrSubmitDecodeUnit;
|
||||
_drCallbacks.capabilities = CAPABILITY_DIRECT_SUBMIT |
|
||||
CAPABILITY_REFERENCE_FRAME_INVALIDATION_HEVC |
|
||||
CAPABILITY_REFERENCE_FRAME_INVALIDATION_AV1;
|
||||
// Use pull renderer for legacy frame pacing, direct submit for modern frame pacing
|
||||
DataManager* dataMan = [[DataManager alloc] init];
|
||||
if ([[dataMan getSettings].framePacingMode integerValue] == FramePacingModeLegacy) {
|
||||
_drCallbacks.capabilities = CAPABILITY_PULL_RENDERER |
|
||||
CAPABILITY_REFERENCE_FRAME_INVALIDATION_HEVC |
|
||||
CAPABILITY_REFERENCE_FRAME_INVALIDATION_AV1;
|
||||
_drCallbacks.submitDecodeUnit = NULL;
|
||||
} else {
|
||||
_drCallbacks.capabilities = CAPABILITY_DIRECT_SUBMIT |
|
||||
CAPABILITY_REFERENCE_FRAME_INVALIDATION_HEVC |
|
||||
CAPABILITY_REFERENCE_FRAME_INVALIDATION_AV1;
|
||||
_drCallbacks.submitDecodeUnit = DrSubmitDecodeUnit;
|
||||
}
|
||||
|
||||
LiInitializeAudioCallbacks(&_arCallbacks);
|
||||
_arCallbacks.init = ArInit;
|
||||
|
||||
Reference in new issue
Block a user