Một ứng dụng kỳ quặc khiến MacBook phát ra tiếng... xì hơi khi mở và đóng nắp máy đã tiết lộ điều gì đó quan trọng hơn nhiều - sự tồn tại của một cảm biến phần cứng chưa được biết đến trước đây mà các nhà phát triển hiện đang đua nhau khai thác cho các dự án sáng tạo.
Khám phá này bắt đầu khi nhà phát triển Sam Henri Gold dịch ngược phần cứng MacBook để tìm ra một cảm biến góc nắp ẩn, tạo ra các ứng dụng demo có thể phát hiện góc chính xác giữa màn hình laptop và đế máy. Đột phá kỹ thuật này nhanh chóng thu hút sự chú ý của các nhà phát triển khác, những người nhìn thấy tiềm năng hài hước trong khả năng phần cứng này.
Từ Demo Kỹ thuật đến Hiện tượng Viral
Dự án cảm biến góc nắp ban đầu hoàn toàn mang tính kỹ thuật, thể hiện khả năng đọc dữ liệu định vị theo thời gian thực từ phần cứng MacBook . Tuy nhiên, cộng đồng nhanh chóng đón nhận các ứng dụng giải trí hơn. FartScrollLid xuất hiện như một cách tiếp cận hài hước với công nghệ này, phát ra các âm thanh có cao độ khác nhau dựa trên vị trí nắp và tốc độ chuyển động.
Ứng dụng thể hiện kỹ thuật âm thanh tinh vi, sử dụng điều chế cao độ từ âm bass trầm khi nắp đóng đến tiếng kêu the thé khi mở hoàn toàn. Hệ thống chỉ kích hoạt trong quá trình chuyển động nắp, tạo ra trải nghiệm âm thanh phản hồi phản ánh chuyển động vật lý.
Tính năng của Audio Engine
- AVFoundation cho việc phát âm thanh thời gian thực
- Đơn vị varispeed để điều chỉnh cao độ (0.5x đến 2.0x)
- Điều chỉnh tham số mượt mà để tránh các lỗi âm thanh
- Điều khiển âm lượng dựa trên tốc độ di chuyển
- Phản hồi tức thì với khả năng dừng ngay lập tức khi ngừng di chuyển
Cộng đồng đón nhận Sự hài hước hoài cổ
Ứng dụng âm thanh xì hơi đã chạm đến trái tim người dùng nhớ lại các ứng dụng tương tự từ thời kỳ máy tính trước đây. Nhiều thành viên cộng đồng nhớ lại thành công của ứng dụng iFart trên iPhone , được báo cáo kiếm được 10.000 đô la Mỹ mỗi ngày và đạt vị trí số một trên App Store trong thời kỳ bùng nổ smartphone đầu tiên.
Đúng vậy, đó cũng là điều tôi nghĩ đến. Tôi đoán đó là thời kỳ hoàng kim cho các nhà phát triển ứng dụng iPhone .
Sức hấp dẫn hoài cổ mở rộng ra ngoài ứng dụng di động đến các tiện ích Mac cổ điển như MacSniff , khiến máy tính ngẫu nhiên hắng giọng hoặc hít mũi. Những ứng dụng này đại diện cho truyền thống vui tươi trong phát triển phần mềm nơi khả năng kỹ thuật gặp gỡ giá trị giải trí phi lý.
Đổi mới Kỹ thuật đằng sau những trò đùa
Mặc dù có mục đích hài hước, FartScrollLid thể hiện công việc kỹ thuật ấn tượng. Ứng dụng giao tiếp với hệ thống thiết bị HID của Apple , cụ thể nhắm đến cảm biến có vendor ID 0x05AC và product ID 0x8104. Nó đọc giá trị góc 16-bit với độ chính xác 0.01 độ trong phạm vi 0-360 độ.
Động cơ âm thanh sử dụng AVFoundation cho phát lại thời gian thực với các đơn vị varispeed cho điều chế cao độ. Hệ thống bao gồm ngưỡng chuyển động và làm mượn tham số để tránh lỗi âm thanh, thể hiện kỹ thuật lập trình âm thanh cấp chuyên nghiệp.
Thông số kỹ thuật
- Thiết bị: Thiết bị Apple HID (VID=0x05AC, PID=0x8104)
- Sử dụng HID: Trang cảm biến (0x0020), Sử dụng định hướng (0x008A)
- Định dạng dữ liệu: Giá trị góc 16-bit tính bằng centigrade (độ phân giải 0.01°)
- Phạm vi: 0-360 độ
- Ngưỡng chuyển động: Tối thiểu 2 độ/giây để kích hoạt âm thanh
Sinh ra các Công cụ Phát triển Mới
Sự phổ biến của các ứng dụng âm thanh dựa trên nắp đã truyền cảm hứng cho các nhà phát triển tạo ra các công cụ dễ tiếp cận hơn. Các thư viện Python hiện tồn tại loại bỏ nhu cầu phát triển Xcode , cho phép thử nghiệm rộng rãi hơn với công nghệ cảm biến nắp.
Các đề xuất của cộng đồng cho ứng dụng tương lai từ thực tế đến phi lý, bao gồm theo dõi thống kê xì hơi, tính năng multiplayer mạng, và thậm chí ứng dụng đồng hành Apple Watch . Một số người dùng đề xuất điều chỉnh các khái niệm tương tự cho xe Tesla , thay thế cảm biến nắp bằng cơ chế cửa hoặc cốp.
Sự xuất hiện của cảm biến góc nắp MacBook đại diện cho một trường hợp thú vị nơi dịch ngược khả năng phần cứng dẫn đến các ứng dụng sáng tạo bất ngờ. Trong khi trọng tâm hiện tại vẫn là giải trí, công nghệ cảm biến cơ bản có thể cho phép các ứng dụng nghiêm túc hơn trong khả năng tiếp cận, thiết kế giao diện người dùng, hoặc tự động hóa thiết bị.
Tham khảo: FartScrollLid
