ข้อมูลเบื้องต้นเกี่ยวกับการบันทึกและการเล่น

คำแนะนำเฉพาะแพลตฟอร์ม

ประสบการณ์ Augmented Reality ส่วนใหญ่จะเป็นแบบ "เรียลไทม์" ซึ่งผู้ใช้จะต้องอยู่ในสถานที่หนึ่งๆ ในช่วงเวลาหนึ่งโดยวางโทรศัพท์ในโหมด AR พิเศษและเปิดแอป AR ตัวอย่างเช่น หากผู้ใช้ต้องการดูลักษณะโซฟา AR ในห้องนั่งเล่น ผู้ใช้จะต้อง "วาง" โซฟาในสภาพแวดล้อมบนหน้าจอขณะที่ผู้ใช้อยู่ในห้องของตน

Recording and Playback API ไม่มีประโยชน์กับข้อกำหนดแบบ "เรียลไทม์" นี้ ซึ่งช่วยให้คุณสร้างประสบการณ์ AR ที่สามารถดูได้ทุกที่ทุกเวลา Recording API จะจัดเก็บสตรีมวิดีโอของกล้อง ข้อมูล IMU หรือข้อมูลเมตาที่กำหนดเองอื่นๆ ที่คุณเลือกบันทึกเป็นไฟล์ MP4 จากนั้นคุณจะฟีดวิดีโอที่บันทึกไว้เหล่านี้ไปยัง ARCore ผ่าน Playback API ซึ่งจะดำเนินการกับ MP4 เหมือนกับฟีดเซสชันสด คุณยังสามารถใช้เซสชันกล้องแบบสดได้ แต่ API ใหม่นี้จะทำให้แอปพลิเคชัน AR ของคุณเลือกใช้ MP4 ที่บันทึกไว้ล่วงหน้าแทนเซสชันสดได้

ผู้ใช้ปลายทางยังใช้ประโยชน์จากฟีเจอร์นี้ได้ด้วย ไม่ว่าในชีวิตจริงจะอยู่ที่ใดก็ตาม ผู้ชมสามารถดึงวิดีโอที่บันทึกด้วย Recording and Playback API จากแกลเลอรีดั้งเดิมของตน แล้วนำมาตัดต่อหรือเล่นวัตถุ เอฟเฟกต์ และฟิลเตอร์ AR ได้ ฟีเจอร์นี้ช่วยให้ผู้ใช้ทําการช็อปปิ้งแบบ AR ได้ขณะอยู่บนรถไฟที่เดินทางไปยังสํานักงานหรืออยู่บนเตียงที่นอนอยู่รอบๆ

กรณีการใช้งานสำหรับการพัฒนาด้วย Recording and Playback API

Recording and Recording API จะลบข้อจำกัดด้านเวลาและพื้นที่ในการสร้างแอป AR ตัวอย่างวิธีนำไปใช้ในโปรเจ็กต์ของคุณเองมีดังนี้

บันทึกเพียงครั้งเดียวเพื่อให้ทดสอบได้ทุกที่

แทนที่จะต้องไปสถานที่จริงทุกครั้งที่ต้องทดสอบฟีเจอร์ AR คุณอาจบันทึกวิดีโอโดยใช้ Recording API แล้วเล่นวิดีโอโดยใช้อุปกรณ์ที่รองรับ หรือสร้างประสบการณ์ในห้างสรรพสินค้า คุณไม่จำเป็นต้องไปที่นั่นทุกครั้งที่ต้องการทดสอบการเปลี่ยนแปลง เพียงบันทึกการเข้าชมของคุณเพียงครั้งเดียว แล้วทำซ้ำและค่อยๆ พัฒนาขึ้นจากโต๊ะทำงานของคุณอย่างสะดวกสบาย

ลดเวลาในการทำซ้ำ

แทนที่จะต้องบันทึกวิดีโอสำหรับอุปกรณ์ Android ทุกเครื่องที่คุณต้องการรองรับ ในทุกสถานการณ์ที่คุณต้องการทดสอบ คุณสามารถบันทึกวิดีโอครั้งเดียวและเล่นบนอุปกรณ์หลายเครื่องได้ในระหว่างขั้นตอนการทำซ้ำ

ลดภาระการทดสอบด้วยตนเองระหว่างทีมพัฒนา

ใช้ประโยชน์จากชุดข้อมูลที่บันทึกไว้ล่วงหน้าขณะเปิดตัวฟีเจอร์ใหม่ที่รวมการปรับปรุงความลึกหรือการติดตามล่าสุดจาก ARCore แทนการสร้างชุดข้อมูลที่กำหนดเองสำหรับทุกฟีเจอร์ใหม่

ความเข้ากันได้ของอุปกรณ์

คุณจะต้องใช้ ARCore เพื่อบันทึกข้อมูลด้วย Recording and Playback API แต่ไม่จำเป็นต้องใช้ในการเล่นสิ่งต่างๆ โดยพื้นฐานแล้ว MP4 ที่บันทึกโดยใช้ฟีเจอร์นี้คือไฟล์วิดีโอที่มีข้อมูลเพิ่มเติมที่รับชมได้โดยใช้โปรแกรมเล่นวิดีโอใดก็ได้ โดยตรวจสอบได้โดยใช้ ExoPlayer ของ Android หรือโปรแกรมเล่นอื่นๆ ที่เข้ากันได้ซึ่งแยก MP4 และจัดการข้อมูลเพิ่มเติมที่ ARCore เพิ่มได้

วิธีบันทึกข้อมูลวิดีโอและ AR สำหรับการเล่น

ARCore จะบันทึกเซสชันที่บันทึกไว้เป็นไฟล์ MP4 ลงในอุปกรณ์เป้าหมาย ไฟล์เหล่านี้มีแทร็กวิดีโอหลายรายการและข้อมูลเบ็ดเตล็ดอื่นๆ เมื่อบันทึกเซสชันแล้ว คุณจะชี้ให้แอปใช้ข้อมูลนี้แทนเซสชันกล้องแบบสดได้

สิ่งที่อยู่ในไฟล์บันทึกเสียง

ARCore จะบันทึกข้อมูลต่อไปนี้ในวิดีโอ H.264 คุณสามารถเข้าถึงเครื่องมือนี้ได้ในโปรแกรมเล่นวิดีโอที่รองรับ MP4 ที่สามารถสลับแทร็กได้ แทร็กที่มีความละเอียดสูงสุดเป็นแทร็กแรกในรายการ เนื่องจากมีโปรแกรมเล่นวิดีโอที่รองรับ MP4 บางรุ่นจะเล่นแทร็กแรกในรายการโดยอัตโนมัติโดยไม่ให้คุณเลือกแทร็กวิดีโอที่จะเล่น

แทร็กวิดีโอหลัก (แทร็กภาพ CPU)

ไฟล์วิดีโอหลักจะบันทึกสภาพแวดล้อมหรือฉากเพื่อเล่นในภายหลัง โดยค่าเริ่มต้น ARCore จะบันทึกรูปภาพ CPU ขนาด 640x480 (VGA) ที่ใช้สำหรับการติดตามการเคลื่อนไหวเป็นสตรีมวิดีโอหลัก

ARCore ไม่จับภาพพื้นผิว GPU (ความละเอียดสูง) ที่แสดงผลบนหน้าจอเป็นรูปภาพจากกล้องส่งผ่าน

หากต้องการสตรีมรูปภาพความละเอียดสูงขณะเล่น คุณต้องกำหนดค่ากล้องซึ่งให้ภาพ CPU ที่มีความละเอียดตามที่ต้องการ ในกรณีนี้

  • ARCore จะขอรูปภาพ CPU ขนาด 640x480 (VGA) ที่ต้องใช้ในการติดตามการเคลื่อนไหวและรูปภาพ CPU ความละเอียดสูงซึ่งระบุโดยการกำหนดค่ากล้อง
  • การบันทึกสตรีมรูปภาพ CPU ที่ 2 อาจส่งผลต่อประสิทธิภาพของแอป และอาจแตกต่างกันไปในแต่ละอุปกรณ์
  • ระหว่างการเล่น ARCore จะใช้ภาพ CPU ความละเอียดสูงที่ถ่ายระหว่างการบันทึกเป็นพื้นผิว GPU ในระหว่างการเล่น
  • ภาพที่มีความละเอียดสูงบน CPU จะกลายเป็นสตรีมวิดีโอเริ่มต้นในการบันทึก MP4

การกำหนดค่ากล้องที่เลือกไว้ระหว่างการบันทึกจะเป็นตัวกำหนดรูปภาพ CPU และสตรีมวิดีโอหลักในการบันทึก หากไม่เลือกการกำหนดค่ากล้องที่มีภาพ CPU ความละเอียดสูง วิดีโอนี้จะเป็นแทร็กแรกในไฟล์และจะเล่นโดยค่าเริ่มต้น ไม่ว่าคุณจะใช้โปรแกรมเล่นวิดีโอใดก็ตาม

การแสดงภาพแผนที่ความลึกของกล้อง

นี่เป็นไฟล์วิดีโอที่แสดงแผนที่ความลึกของกล้อง ซึ่งบันทึกจากเซ็นเซอร์วัดความลึกของฮาร์ดแวร์ของอุปกรณ์ เช่น เซ็นเซอร์ตรวจจับเวลาการบิน (หรือเซ็นเซอร์ ToF) และแปลงเป็นค่าช่องสัญญาณ RGB วิดีโอนี้ควรใช้เพื่อการแสดงตัวอย่างเท่านั้น

เหตุการณ์การเรียก API

ARCore จะบันทึกค่าที่วัดได้จากเครื่องวัดการหมุนและเซ็นเซอร์ของตัวตรวจวัดความเร่งของอุปกรณ์ และยังบันทึกข้อมูลอื่นๆ ที่อาจมีความละเอียดอ่อนด้วย ดังนี้

  • เวอร์ชันรูปแบบชุดข้อมูล
  • เวอร์ชัน ARCore SDK
  • บริการ Google Play สำหรับเวอร์ชัน AR
  • ลายนิ้วมือของอุปกรณ์ (เอาต์พุตของ adb shell getprop ro.build.fingerprint)
  • ข้อมูลเพิ่มเติมเกี่ยวกับเซ็นเซอร์ที่ใช้สำหรับการติดตาม AR
  • เมื่อใช้ ARCore Geospatial API ตำแหน่งโดยประมาณของอุปกรณ์ การอ่านค่าเครื่องวัดค่าความเข้มข้นของสนามแม่เหล็ก และค่าเข็มทิศ