Timbunan terbuka sepenuhnya untuk kamera MIPI diperkenalkan

Hans de Goede, pembangun Fedora Linux yang bekerja di Red Hat, mempersembahkan susunan terbuka untuk kamera MIPI (Antara Muka Pemproses Industri Mudah Alih) pada persidangan FOSDEM 2024. Tindanan terbuka yang disediakan belum lagi diterima ke dalam kernel Linux dan projek libcamera, tetapi ditandakan sebagai telah mencapai keadaan yang sesuai untuk diuji oleh pelbagai peminat. Pengendalian tindanan telah diuji dengan kamera MIPI berdasarkan sensor ov2740, ov01a1s dan hi556 yang digunakan dalam komputer riba seperti Lenovo ThinkPad X1 yoga gen 8, Dell Latitude 9420 dan HP Spectre x360 13.5 2023.

Antara muka MIPI digunakan dalam banyak model komputer riba baharu dan bukannya penstriman video yang digunakan sebelum ini melalui bas USB daripada peranti yang menyokong standard UVC (Kelas Video USB). MIPI menyediakan akses kepada sensor kamera menggunakan penerima CSI (Camera Serial Interface) dan pemproses imej yang disepadukan ke dalam CPU (ISP, Image Signal Processor), yang menyediakan pembentukan imej berdasarkan data mentah yang datang daripada sensor. Intel menyediakan satu set pemacu proprietari untuk bekerja dengan kamera MIPI di Linux melalui IPU6 (Unit Pemprosesan Pengimejan) di Intel Tiger Lake, Alder Lake, Raptor Lake dan pemproses Tasik Meteor.

Kesukaran utama dalam membangunkan pemacu terbuka untuk kamera MIPI adalah disebabkan oleh fakta bahawa antara muka perkakasan pemproses ISP dan algoritma pemprosesan imej yang dilaksanakan di dalamnya biasanya tidak didedahkan oleh pengeluar CPU dan merupakan rahsia perdagangan. Untuk menyelesaikan masalah ini, Linaro dan Red Hat telah membangunkan pelaksanaan perisian pemproses imej - SoftISP, yang membolehkan anda bekerja dengan kamera MIPI tanpa menggunakan komponen proprietari (SoftISP boleh digunakan sebagai pengganti IPU6 ISP).

Pelaksanaan SoftISP telah diserahkan untuk dimasukkan dalam projek libcamera, yang menawarkan susunan perisian untuk bekerja dengan kamera video, kamera dan penala TV dalam Linux, Android dan ChromeOS. Selain SoftISP, timbunan untuk bekerja dengan kamera MIPI termasuk pemacu untuk penderia ov2740 yang berjalan pada tahap kernel dan kod untuk menyokong penerima CSI dalam kernel Linux, yang merupakan sebahagian daripada IPU6 pemproses Intel.

Pakej kernel Linux dan libcamera, termasuk perubahan projek, tersedia dalam repositori COPR untuk pemasangan pada Fedora Linux 39. Pelayan media Pipewire boleh digunakan untuk menangkap video daripada kamera MIPI. Sokongan untuk bekerja dengan kamera melalui Pipewire telah pun diterima pakai ke dalam perpustakaan libwebrtc. Dalam Firefox, keupayaan untuk bekerja dengan kamera melalui Pipewire telah dibawa ke keadaan yang sesuai untuk digunakan dengan WebRTC, bermula dengan keluaran 122. Secara lalai, bekerja dengan kamera melalui Pipewire dalam Firefox dilumpuhkan dan memerlukan "media.webrtc.camera. allow-” parameter untuk diaktifkan dalam about:config pipewire."

Sumber: opennet.ru

Tambah komen