Nhà phát triển Yoroin đang duy trì GlobalRefresh-PiP, một dự án mã nguồn mở dành cho iPhone sử dụng màn hình ProMotion, tận dụng cửa sổ Picture-in-Picture của iOS để giúp một số ứng dụng và tình huống bị giới hạn khoảng 80Hz có thể hoạt động với tần số quét cao hơn, gần mức 120Hz.
Dự án được phát triển dựa trên PiP của CaiWanFeng và bổ sung nhiều tính năng như giữ PiP hoạt động nền, tùy chỉnh kích thước cửa sổ, hai cơ chế PiP khác nhau, giao diện Liquid Glass trên iOS mới và nhiều công cụ hỗ trợ chẩn đoán.
1.GlobalRefresh-PiP là gì?
GlobalRefresh-PiP là ứng dụng sử dụng cơ chế Picture-in-Picture (PiP) của iOS kết hợp với các API liên quan đến tốc độ làm mới màn hình để liên tục yêu cầu hệ thống duy trì tần số quét cao.
Mục tiêu chính của ứng dụng là các thiết bị có ProMotion 120Hz, nhưng trong một số ứng dụng hoặc tình huống hệ thống lại chỉ hoạt động khoảng 80Hz.
1.1Không phải công cụ ép mọi ứng dụng lên 120Hz
GlobalRefresh-PiP không thể biến màn hình 60Hz thành 120Hz.
Ứng dụng cũng không đảm bảo tất cả game hoặc ứng dụng sẽ chạy ở 120 FPS. Hiệu quả còn phụ thuộc vào:
- Thiết bị đang sử dụng.
- Phiên bản iOS.
- Khả năng ProMotion của màn hình.
- Chính sách giới hạn FPS của từng ứng dụng.
- Trạng thái của cửa sổ PiP.
Nếu bản thân ứng dụng khóa cứng ở 60 FPS thì GlobalRefresh-PiP cũng không thể biến nội dung đó thành 120 FPS thực sự.
2.Cách GlobalRefresh-PiP hoạt động
Sau khi mở ứng dụng, người dùng kích hoạt một cửa sổ PiP rồi kéo cửa sổ này sang cạnh màn hình.
Khi PiP vẫn còn hoạt động, ứng dụng liên tục tạo yêu cầu tần số quét cao hơn tới hệ thống. Điều này có thể giúp một số giao diện trước đó chỉ chạy khoảng 80Hz trở lại trạng thái gần 120Hz.
2.1Có thể thu nhỏ PiP xuống chỉ 0,1pt
Một trong những điểm đáng chú ý của GlobalRefresh-PiP là cửa sổ PiP có thể được chỉnh chiều cao xuống tới 0,1pt khi sử dụng chế độ mặc định.
Sau khi kéo PiP sát cạnh màn hình, người dùng có thể giảm kích thước xuống mức rất nhỏ để gần như không còn nhìn thấy cửa sổ nhưng vẫn duy trì cơ chế PiP.
3.Hai cơ chế PiP khác nhau
GlobalRefresh-PiP hiện cung cấp hai phương án hoạt động.
3.1VideoCall – chế độ mặc định
VideoCall sử dụng AVPictureInPictureVideoCallViewController.
Ưu điểm:
- Có thể giảm chiều cao xuống 0,1pt.
- Gần như ẩn hoàn toàn PiP.
- Tương thích tốt hơn.
- Phù hợp với phần lớn ứng dụng bị giới hạn khoảng 80Hz.
- Được nhà phát triển khuyến nghị cho sử dụng hàng ngày.
Nhược điểm là cơ chế này có xu hướng yêu cầu tần số quét 120Hz trên toàn hệ thống. Với một số ứng dụng vốn khóa ở 60Hz, điều này có thể gây ra hiện tượng không đồng bộ giữa nội dung 60 FPS và màn hình 120Hz.
3.2PlayerLayer – dành cho một số ứng dụng khóa 60Hz
PlayerLayer là phương án thử nghiệm dành cho những trường hợp chế độ mặc định gây hiện tượng giật hoặc không đồng bộ.
Nhà phát triển lấy ví dụ các trường hợp như:
- Danmaku trên Bilibili chuyển động không đều.
- Một số khu vực trong game khóa 60 FPS xuất hiện cảm giác khựng.
PlayerLayer có thể cải thiện các trường hợp này, nhưng cửa sổ PiP chỉ có thể giảm xuống khoảng 1pt, vì vậy có thể vẫn nhìn thấy một đường nhỏ ở cạnh màn hình.
4.Các tính năng chính
Ngoài chức năng hỗ trợ duy trì tần số quét cao, GlobalRefresh-PiP còn cung cấp khá nhiều công cụ khác.
4.1Giữ cửa sổ PiP hoạt động nền
Ứng dụng có cơ chế hỗ trợ duy trì PiP khi chuyển sang các ứng dụng khác, giúp chức năng tần số quét tiếp tục hoạt động.
Tuy nhiên đây không phải quyền chạy nền vĩnh viễn của hệ thống. iOS vẫn có thể dừng ứng dụng khi thiếu RAM, thay đổi chính sách nền hoặc khi một ứng dụng PiP khác chiếm phiên Picture-in-Picture.
4.2Tùy chỉnh kích thước cửa sổ
Người dùng có thể:
- Điều chỉnh chiều cao PiP.
- Nhập thủ công chiều cao.
- Ghi nhớ kích thước đã chọn.
- Thay đổi vùng cửa sổ khi PiP được gắn vào cạnh màn hình.
- Đưa nhanh PiP về 0,1pt.
Ứng dụng tích hợp trang demo để người dùng so sánh trực tiếp chuyển động ở:
- 80Hz.
- 120Hz.
Phiên bản mới còn bổ sung hai animation chạy cùng tốc độ, giúp dễ quan sát hiện tượng chuyển động theo từng bước ở 80Hz so với chuyển động liên tục hơn ở 120Hz.
5.GlobalRefresh-PiP 1.1.0 có gì mới?
Phiên bản 1.1.0 là một trong những bản cập nhật lớn của dự án.
5.1Lock Screen Audio Enhancement Beta
Ứng dụng bổ sung chế độ tăng cường âm thanh khi khóa màn hình.
Khi màn hình sáng, ứng dụng chỉ duy trì PiP để hạn chế ảnh hưởng tới quá trình phát âm thanh và video.
Sau khi màn hình tắt, hệ thống mới tự động kích hoạt cơ chế audio keep-alive mạnh hơn nhằm tăng khả năng duy trì hoạt động nền.
5.2Quản lý và dọn cache
GlobalRefresh-PiP 1.1.0 bổ sung nút dọn cache thủ công.
Ứng dụng có thể hiển thị dung lượng vừa được giải phóng. Người dùng cũng có thể nhấn giữ để xóa toàn bộ dữ liệu ứng dụng và quay lại quá trình thiết lập ban đầu.
Ngoài ra, ứng dụng tự động dọn:
- File tạm.
- Cache cũ.
- Tài nguyên còn sót lại sau khi cập nhật.
- Cache video của PiP.
Thay đổi này nhằm xử lý tình trạng dung lượng ứng dụng tăng dần theo thời gian.
5.3Kiểm tra phiên bản mới trực tiếp trong ứng dụng
Ứng dụng có thể truy vấn GitHub Releases để kiểm tra phiên bản mới.
GlobalRefresh-PiP chỉ đọc thông tin phiên bản để so sánh với phiên bản đang cài, không tự động tải hoặc sửa đổi ứng dụng.
Người dùng cũng có thể bỏ qua một phiên bản nhất định để không tiếp tục nhận thông báo cho tới khi có bản mới hơn.
5.4Giao diện Liquid Glass trên iOS mới
Trên iOS 26 trở lên, một số thành phần như:
- Changelog.
- FAQ.
- Popup.
- Khung nội dung.
được tối ưu lại theo phong cách Liquid Glass.
Các phiên bản iOS cũ hơn sử dụng giao diện Gaussian Blur để đảm bảo khả năng tương thích.
6.Hỗ trợ các phiên bản iOS mới và cũ
Dự án đã được tối ưu cho nhiều thế hệ iOS, bao gồm các xử lý tương thích riêng cho iOS 15 và iOS 16, trong khi các phiên bản mới hơn có giao diện và chức năng bổ sung riêng.
Trước đó, bản 1.0.8 được build bằng Xcode 27 beta và nhà phát triển công bố khả năng thích ứng từ iOS 15 đến iOS 27.
Tuy nhiên khả năng cài đặt và hoạt động thực tế vẫn phụ thuộc thiết bị, phương thức ký IPA và từng phiên bản hệ điều hành cụ thể.
7.Những điều cần lưu ý
GlobalRefresh-PiP không phải một tweak jailbreak can thiệp trực tiếp vào SpringBoard hoặc chỉnh sửa daemon tần số quét của iOS.
Công cụ chủ yếu khai thác hành vi của Picture-in-Picture kết hợp với yêu cầu tốc độ khung hình của ứng dụng.
Do đó:
- Không đảm bảo 120Hz trong mọi ứng dụng.
- Không mở khóa 120Hz cho màn hình 60Hz.
- Không biến game 60 FPS thành 120 FPS thực.
- PiP có thể bị iOS dừng trong một số trường hợp.
- Một ứng dụng PiP khác có thể đẩy cửa sổ GlobalRefresh ra.
- Mức tiêu thụ pin và nhiệt độ có thể tăng khi hệ thống duy trì tần số quét cao trong thời gian dài.
Đây vẫn là một dự án mang tính thử nghiệm, phù hợp cho người dùng muốn kiểm tra hành vi ProMotion trên thiết bị của mình.
8.Repo và tải xuống
GitHub:
https://github.com/Yoroin/GlobalRefresh-PiP
Dự án PiP gốc của CaiWanFeng:
https://github.com/CaiWanFeng/PiP






Chưa có bình luận. Hãy là người đầu tiên chia sẻ.