Các nhà phát triển Hopp giải quyết vấn đề chất lượng chia sẻ màn hình với codec AV1 và tối ưu hóa Rust

Nhóm Cộng đồng BigGo
Các nhà phát triển Hopp giải quyết vấn đề chất lượng chia sẻ màn hình với codec AV1 và tối ưu hóa Rust

Ứng dụng lập trình cặp đôi mã nguồn mở Hopp đang tạo nên làn sóng trong cộng đồng nhà phát triển khi các maintainer tích cực giải quyết các vấn đề về chất lượng chia sẻ màn hình và khám phá các giải pháp kỹ thuật tiên tiến. Được xây dựng với Tauri và được hỗ trợ bởi cơ sở hạ tầng WebRTC của LiveKit , Hopp nhằm mục đích cung cấp một giải pháp thay thế vượt trội cho các công cụ cộng tác hiện có như Discord và các giải pháp ghép cặp dựa trên IDE truyền thống.

Tổng quan Tech Stack:

  • Backend: Go (API server), PostgreSQL (lưu trữ dữ liệu)
  • Frontend: React với TypeScript, TailwindCSS
  • Desktop: Tauri framework với Rust core process
  • Hạ tầng: LiveKit WebRTC network
Tổng quan về repository GitHub " gethopp/hopp ", nơi diễn ra việc phát triển ứng dụng Hopp
Tổng quan về repository GitHub " gethopp/hopp ", nơi diễn ra việc phát triển ứng dụng Hopp

Cải thiện chất lượng màn hình thông qua codec tiên tiến

Các cuộc thảo luận cộng đồng cho thấy rằng các nhà phát triển Hopp đang đẩy ranh giới của công nghệ chia sẻ màn hình. Một trong những maintainer đã tiết lộ kế hoạch triển khai hỗ trợ codec AV1 , có thể mang lại hiệu suất độ trễ tốt hơn đáng kể ở độ phân giải 4K. Tuy nhiên, sự tiến bộ này phải đối mặt với một thách thức đáng chú ý: khả năng tương thích Safari trên các thiết bị cũ vẫn còn hạn chế. Để vượt qua trở ngại này, nhóm đang khám phá một giải pháp sáng tạo liên quan đến xử lý luồng dựa trên Rust với phân phối máy chủ WebSocket cục bộ, điều này một cách đáng ngạc nhiên chỉ thêm ít hơn 5 mili giây độ trễ vận chuyển.

Cải thiện hiệu suất trong quá trình phát triển:

  • Triển khai codec AV1 cho streaming 4K với độ trễ tốt hơn
  • Xử lý luồng dữ liệu dựa trên Rust với độ trễ truyền tải <5ms
  • Các giải pháp tương thích cho Safari trên thiết bị cũ
  • Tích hợp máy chủ WebSocket cục bộ để cải thiện hiệu suất

Thách thức tích hợp và ma sát quy trình làm việc

Cộng đồng đã nêu bật một rào cản quan trọng trong việc áp dụng: tích hợp với các quy trình phát triển hiện có. Người dùng chỉ ra rằng ma sát liên quan đến việc bắt đầu một phiên lập trình cặp đôi thường quan trọng hơn chất lượng phiên thực tế. Phản hồi này đã thúc đẩy các cuộc thảo luận về việc phát triển các công cụ CLI , tiện ích mở rộng IDE và tích hợp Slack để hợp lý hóa quy trình onboarding. Nhóm phát triển đã thừa nhận mối quan tâm này và có kế hoạch tạo các GitHub issue để cộng đồng đóng góp trong lĩnh vực này.

Mối quan tâm về khả năng tương thích đa trình soạn thảo

Một chủ đề thảo luận quan trọng đã nổi lên xung quanh những hạn chế của các giải pháp lập trình cặp đôi hiện tại khi các nhà phát triển sử dụng các trình soạn thảo khác nhau. Không giống như các công cụ buộc người tham gia phải sử dụng cùng một môi trường, có nhu cầu ngày càng tăng về một giao thức phổ quát cho phép các nhà phát triển cộng tác trong khi vẫn duy trì các trình soạn thảo ưa thích của họ - dù đó là Neovim , IntelliJ hay VSCode . Điều này đại diện cho một thách thức cơ bản trong không gian lập trình cặp đôi mở rộng ra ngoài Hopp đến toàn bộ hệ sinh thái.

Sự tham gia của cộng đồng với Hopp phản ánh những thất vọng rộng lớn hơn với các công cụ cộng tác hiện có, đặc biệt là xung quanh độ phức tạp của việc chia sẻ URL và phạm vi hạn chế ngoài môi trường IDE . Như một thành viên cộng đồng đã lưu ý, lập trình cặp đôi hiệu quả thường liên quan đến các hoạt động bên ngoài trình soạn thảo mã, bao gồm công việc terminal, gỡ lỗi các thiết lập cloud phức tạp và giám sát dashboard - những lĩnh vực mà các giải pháp dựa trên IDE truyền thống còn thiếu sót.

Tham khảo: Hopp - Open Source pair programming app