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

คู่มือเฉพาะแพลตฟอร์ม

ประสบการณ์ใช้งาน 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 Playback API ช่วยลดข้อจำกัดด้านเวลาและพื้นที่ในการสร้างแอป AR ต่อไปนี้คือวิธีที่คุณสามารถใช้ API นี้ในโปรเจ็กต์ของคุณเอง

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

แทนที่จะต้องเดินทางไปยังสถานที่จริงทุกครั้งที่ต้องการทดสอบฟีเจอร์ 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 (ความละเอียดสูง) ที่แสดงผลบนหน้าจอเป็นรูปภาพกล้องแบบ Passthrough

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

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

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

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

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

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

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

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