Pengantar perekaman dan pemutaran

Panduan khusus platform

Sebagian besar pengalaman Augmented Reality bersifat “real-time”. Pengguna harus berada di tempat tertentu pada waktu tertentu, dengan ponsel yang disetel dalam mode AR khusus dan dibuka ke aplikasi AR. Misalnya, jika pengguna ingin melihat tampilan sofa AR di ruang tamu mereka, mereka harus “menempatkan” sofa di lingkungan dalam layar saat mereka berada secara fisik di ruangan tersebut.

Recording and Playback API menghilangkan persyaratan “real-time” ini, sehingga Anda dapat membuat pengalaman AR yang dapat dilihat di mana saja, kapan saja. Recording API menyimpan aliran video kamera, data IMU, atau metadata kustom lainnya yang Anda pilih untuk disimpan dalam file MP4. Kemudian, Anda dapat memasukkan video yang direkam ini ke ARCore melalui Playback API, yang akan memperlakukan MP4 seperti feed sesi live. Anda masih dapat menggunakan sesi kamera live, tetapi dengan API baru ini, aplikasi AR Anda dapat memilih untuk menggunakan MP4 yang telah direkam sebelumnya, bukan sesi live tersebut.

Pengguna akhir juga dapat memanfaatkan fitur ini. Di mana pun mereka berada dalam kehidupan nyata, mereka dapat membuka video apa pun yang direkam dengan Recording and Playback API dari galeri bawaan mereka dan mengedit atau memutar ulang objek, efek, dan filter AR. Dengan fitur ini, pengguna dapat berbelanja AR saat berada di kereta dalam perjalanan ke kantor, atau saat bersantai di tempat tidur.

Kasus penggunaan untuk mengembangkan dengan Recording and Playback API

Recording and Playback API menghilangkan batasan waktu dan ruang dalam membangun aplikasi AR. Berikut beberapa cara Anda dapat menggunakannya dalam proyek Anda sendiri.

Rekam sekali, uji di mana saja

Daripada harus pergi ke lokasi secara fisik setiap kali Anda perlu menguji fitur AR, Anda dapat merekam video menggunakan Recording API, lalu memutarnya kembali menggunakan perangkat yang kompatibel. Membangun pengalaman di pusat perbelanjaan? Anda tidak perlu membuka halaman tersebut setiap kali ingin menguji perubahan. Cukup rekam kunjungan Anda sekali, lalu lakukan iterasi dan pengembangan dari kenyamanan meja Anda sendiri.

Mengurangi waktu iterasi

Daripada harus merekam video untuk setiap perangkat Android yang ingin Anda dukung, untuk setiap skenario yang ingin Anda uji, Anda dapat merekam video sekali dan memutarnya kembali di beberapa perangkat berbeda selama fase iterasi.

Mengurangi beban pengujian manual di seluruh tim pengembangan

Daripada membuat set data kustom untuk setiap fitur baru, manfaatkan set data yang telah direkam sebelumnya saat meluncurkan fitur baru yang menggabungkan kedalaman atau peningkatan pelacakan terbaru dari ARCore.

Kompatibilitas perangkat

Anda memerlukan ARCore untuk merekam data dengan Recording and Playback API, tetapi Anda tidak memerlukannya untuk memutar kembali data. MP4 yang direkam menggunakan fitur ini pada dasarnya adalah file video dengan data tambahan yang dapat dilihat menggunakan pemutar video apa pun. Anda dapat memeriksanya dengan ExoPlayer Android, atau pemutar yang kompatibel yang dapat melakukan demux MP4 dan mengelola data tambahan yang ditambahkan oleh ARCore.

Cara merekam data video dan AR untuk pemutaran

ARCore menyimpan sesi yang direkam ke file MP4 di perangkat target. File ini berisi beberapa trek video dan data lain-lain. Setelah sesi ini disimpan, Anda dapat mengarahkan aplikasi untuk menggunakan data ini, bukan sesi kamera live.

Apa yang ada dalam rekaman?

ARCore merekam data berikut dalam video H.264. Anda dapat mengaksesnya di pemutar video yang kompatibel dengan MP4 dan dapat mengganti trek. Track resolusi tertinggi adalah yang pertama dalam daftar karena beberapa pemutar video yang kompatibel dengan MP4 otomatis memutar track pertama dalam daftar tanpa memungkinkan Anda memilih track video yang akan diputar.

Track video utama (track gambar CPU)

File video utama merekam lingkungan atau adegan untuk diputar nanti. Secara default, ARCore merekam gambar CPU 640x480 (VGA) yang digunakan untuk pelacakan gerakan sebagai aliran video utama.

ARCore tidak merekam tekstur GPU (beresolusi tinggi) yang dirender ke layar sebagai gambar kamera passthrough.

Jika Anda ingin aliran gambar beresolusi tinggi tersedia selama pemutaran, Anda harus mengonfigurasi kamera yang menyediakan gambar CPU dengan resolusi yang diinginkan. Dalam hal ini:

  • ARCore akan meminta gambar CPU 640x480 (VGA) yang diperlukan untuk pelacakan gerakan dan gambar CPU beresolusi tinggi yang ditentukan oleh konfigurasi kamera yang dikonfigurasi.
  • Merekam aliran gambar CPU kedua dapat memengaruhi performa aplikasi, dan perangkat yang berbeda dapat terpengaruh secara berbeda.
  • Selama pemutaran, ARCore akan menggunakan gambar CPU beresolusi tinggi yang diambil selama perekaman sebagai tekstur GPU selama pemutaran.
  • Gambar CPU resolusi tinggi akan menjadi aliran video default dalam rekaman MP4.

Konfigurasi kamera yang dipilih selama perekaman menentukan gambar CPU dan streaming video utama dalam rekaman. Jika Anda tidak memilih konfigurasi kamera dengan gambar CPU beresolusi tinggi, video ini akan menjadi trek pertama dalam file dan akan diputar secara default, terlepas dari pemutar video yang Anda gunakan.

Visualisasi peta kedalaman kamera

Ini adalah file video yang merepresentasikan peta kedalaman kamera, yang direkam dari sensor kedalaman hardware perangkat, seperti sensor time-of-flight (atau sensor ToF), dan dikonversi ke nilai saluran RGB. Video ini hanya boleh digunakan untuk tujuan pratinjau.

Peristiwa panggilan API

ARCore mencatat pengukuran dari sensor girometer dan akselerometer perangkat. Fitur ini juga mencatat data lain, yang beberapa di antaranya mungkin bersifat sensitif:

  • Versi format set data
  • Versi ARCore SDK
  • Versi Layanan Google Play untuk AR
  • Sidik jari perangkat (output adb shell getprop ro.build.fingerprint)
  • Informasi tambahan tentang sensor yang digunakan untuk pelacakan AR
  • Saat menggunakan ARCore Geospatial API, perkiraan lokasi perangkat, pembacaan magnetometer, dan pembacaan kompas