[feat] set screen capture frame rate to 60 fps

This commit is contained in:
dijunkun
2025-10-15 15:42:42 +08:00
parent 69a4dfcbb9
commit 22cc552e85
5 changed files with 8 additions and 8 deletions

View File

@@ -52,7 +52,7 @@ class ScreenCapturerX11 : public ScreenCapturer {
std::atomic<bool> running_{false};
std::atomic<bool> paused_{false};
std::atomic<int> monitor_index_{0};
int fps_ = 30;
int fps_ = 60;
cb_desktop_data callback_;
std::vector<DisplayInfo> display_info_list_;

View File

@@ -76,7 +76,7 @@ class API_AVAILABLE(macos(14.0)) ScreenCapturerSckImpl : public ScreenCapturer {
unsigned char *nv12_frame_ = nullptr;
int width_ = 0;
int height_ = 0;
int fps_ = 30;
int fps_ = 60;
public:
// Called by SckHelper when shareable content is returned by ScreenCaptureKit. `content` will be

View File

@@ -32,7 +32,7 @@ class ScreenCapturerWgc : public ScreenCapturer,
int SwitchTo(int monitor_index);
void OnFrame(const WgcSession::wgc_session_frame &frame, int id);
void OnFrame(const WgcSession::wgc_session_frame& frame, int id);
protected:
void CleanUp();
@@ -57,12 +57,12 @@ class ScreenCapturerWgc : public ScreenCapturer,
std::atomic_bool running_;
std::atomic_bool inited_;
int fps_;
int fps_ = 60;
cb_desktop_data on_data_ = nullptr;
unsigned char *nv12_frame_ = nullptr;
unsigned char *nv12_frame_scaled_ = nullptr;
unsigned char* nv12_frame_ = nullptr;
unsigned char* nv12_frame_scaled_ = nullptr;
};
#endif

View File

@@ -330,7 +330,7 @@ int Render::ScreenCapturerInit() {
std::chrono::steady_clock::now().time_since_epoch())
.count();
auto duration = now_time - last_frame_time_;
if (duration >= 33) {
if (duration >= 16) { // ~60 FPS
XVideoFrame frame;
frame.data = (const char*)data;
frame.size = size;