Skip to content

Commit 3939cd4

Browse files
committed
Lower realtime hardware load for LAN clients
1 parent 44539a1 commit 3939cd4

2 files changed

Lines changed: 8 additions & 8 deletions

File tree

cli/XCWH264Encoder.m

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,20 @@
88
#include <stdlib.h>
99

1010
static const int32_t XCWMaximumEncodedDimension = 1920;
11-
static const int32_t XCWMaximumRealtimeHardwareEncodedDimension = 1440;
11+
static const int32_t XCWMaximumRealtimeHardwareEncodedDimension = 1280;
1212
static const int32_t XCWMaximumSoftwareEncodedDimension = 1600;
1313
static const int32_t XCWMaximumLowLatencySoftwareEncodedDimension = 1170;
1414
static const int32_t XCWTargetRealTimeFrameRate = 60;
15-
static const int32_t XCWTargetRealtimeHardwareFrameRate = 45;
15+
static const int32_t XCWTargetRealtimeHardwareFrameRate = 30;
1616
static const int32_t XCWTargetSoftwareFrameRate = 60;
1717
static const int32_t XCWTargetLowLatencySoftwareFrameRate = 15;
1818
static const NSUInteger XCWMaximumInFlightFrames = 2;
1919
static const int32_t XCWMinimumAverageBitRate = 18000000;
20-
static const int32_t XCWMinimumRealtimeAverageBitRate = 5000000;
20+
static const int32_t XCWMinimumRealtimeAverageBitRate = 3000000;
2121
static const int32_t XCWMinimumSoftwareAverageBitRate = 3000000;
2222
static const int32_t XCWMinimumLowLatencySoftwareAverageBitRate = 2000000;
2323
static const int64_t XCWBitsPerPixelBudget = 10;
24-
static const int64_t XCWRealtimeBitsPerPixelBudget = 5;
24+
static const int64_t XCWRealtimeBitsPerPixelBudget = 4;
2525
static const int64_t XCWSoftwareBitsPerPixelBudget = 6;
2626
static const int64_t XCWLowLatencySoftwareBitsPerPixelBudget = 3;
2727
static const uint64_t XCWSoftwareMinimumFrameIntervalUs = 16667;
@@ -34,9 +34,9 @@
3434
static const uint64_t XCWLowLatencySoftwareMaximumFrameIntervalUs = 133333;
3535
static const uint64_t XCWLowLatencySoftwareFrameIntervalStepUs = 11111;
3636
static const NSUInteger XCWLowLatencySoftwareHealthyFrameWindow = 8;
37-
static const uint64_t XCWRealtimeHardwareInitialFrameIntervalUs = 22222;
38-
static const uint64_t XCWRealtimeHardwareMinimumFrameIntervalUs = 22222;
39-
static const uint64_t XCWRealtimeHardwareMaximumFrameIntervalUs = 50000;
37+
static const uint64_t XCWRealtimeHardwareInitialFrameIntervalUs = 33333;
38+
static const uint64_t XCWRealtimeHardwareMinimumFrameIntervalUs = 33333;
39+
static const uint64_t XCWRealtimeHardwareMaximumFrameIntervalUs = 66667;
4040
static const uint64_t XCWRealtimeHardwareFrameIntervalStepUs = 5556;
4141
static const NSUInteger XCWRealtimeHardwareHealthyFrameWindow = 6;
4242

server/src/transport/webrtc.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ const WEBRTC_LOW_LATENCY_REFRESH_INTERVAL: Duration = Duration::from_millis(67);
3939
const WEBRTC_LOW_LATENCY_MAX_REFRESH_INTERVAL: Duration = Duration::from_millis(250);
4040
const WEBRTC_WRITE_TIMEOUT: Duration = Duration::from_millis(120);
4141
const WEBRTC_REALTIME_WRITE_TIMEOUT: Duration = Duration::from_millis(45);
42-
const WEBRTC_REALTIME_SAMPLE_DURATION: Duration = Duration::from_micros(22_222);
42+
const WEBRTC_REALTIME_SAMPLE_DURATION: Duration = Duration::from_micros(33_333);
4343
static WEBRTC_MEDIA_STREAMS: OnceLock<Mutex<HashMap<String, Vec<broadcast::Sender<()>>>>> =
4444
OnceLock::new();
4545

0 commit comments

Comments
 (0)